Add Music Manager's curl 7.21.2 source.

Change-Id: I259a43fa52d581524a5ce8ae1711467acb1d9d50
diff --git a/packages/AIX/Makefile.am b/packages/AIX/Makefile.am
new file mode 100644
index 0000000..4b038ed
--- /dev/null
+++ b/packages/AIX/Makefile.am
@@ -0,0 +1,3 @@
+SUBDIRS = RPM
+
+EXTRA_DIST = Makefile.am
diff --git a/packages/AIX/Makefile.in b/packages/AIX/Makefile.in
new file mode 100644
index 0000000..fe45453
--- /dev/null
+++ b/packages/AIX/Makefile.in
@@ -0,0 +1,563 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = packages/AIX
+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 = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
+	$(top_builddir)/src/curl_config.h \
+	$(top_builddir)/include/curl/curlbuild.h
+CONFIG_CLEAN_FILES =
+SOURCES =
+DIST_SOURCES =
+RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
+	html-recursive info-recursive install-data-recursive \
+	install-exec-recursive install-info-recursive \
+	install-recursive installcheck-recursive installdirs-recursive \
+	pdf-recursive ps-recursive uninstall-info-recursive \
+	uninstall-recursive
+ETAGS = etags
+CTAGS = ctags
+DIST_SUBDIRS = $(SUBDIRS)
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILD_LIBHOSTNAME_FALSE = @BUILD_LIBHOSTNAME_FALSE@
+BUILD_LIBHOSTNAME_TRUE = @BUILD_LIBHOSTNAME_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CONFIGURE_OPTIONS = @CONFIGURE_OPTIONS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CROSSCOMPILING_FALSE = @CROSSCOMPILING_FALSE@
+CROSSCOMPILING_TRUE = @CROSSCOMPILING_TRUE@
+CURLDEBUG_FALSE = @CURLDEBUG_FALSE@
+CURLDEBUG_TRUE = @CURLDEBUG_TRUE@
+CURL_CA_BUNDLE = @CURL_CA_BUNDLE@
+CURL_CFLAG_EXTRAS = @CURL_CFLAG_EXTRAS@
+CURL_DISABLE_DICT = @CURL_DISABLE_DICT@
+CURL_DISABLE_FILE = @CURL_DISABLE_FILE@
+CURL_DISABLE_FTP = @CURL_DISABLE_FTP@
+CURL_DISABLE_GOPHER = @CURL_DISABLE_GOPHER@
+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@
+CURL_NETWORK_LIBS = @CURL_NETWORK_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@
+ENABLE_SHARED = @ENABLE_SHARED@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
+HAVE_LIBZ = @HAVE_LIBZ@
+HAVE_LIBZ_FALSE = @HAVE_LIBZ_FALSE@
+HAVE_LIBZ_TRUE = @HAVE_LIBZ_TRUE@
+HAVE_PK11_CREATEGENERICOBJECT = @HAVE_PK11_CREATEGENERICOBJECT@
+IDN_ENABLED = @IDN_ENABLED@
+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@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+MANOPT = @MANOPT@
+MIMPURE_FALSE = @MIMPURE_FALSE@
+MIMPURE_TRUE = @MIMPURE_TRUE@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NO_UNDEFINED_FALSE = @NO_UNDEFINED_FALSE@
+NO_UNDEFINED_TRUE = @NO_UNDEFINED_TRUE@
+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@
+SONAME_BUMP_FALSE = @SONAME_BUMP_FALSE@
+SONAME_BUMP_TRUE = @SONAME_BUMP_TRUE@
+SSL_ENABLED = @SSL_ENABLED@
+STATICLIB_FALSE = @STATICLIB_FALSE@
+STATICLIB_TRUE = @STATICLIB_TRUE@
+STRIP = @STRIP@
+SUPPORT_FEATURES = @SUPPORT_FEATURES@
+SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
+TEST_SERVER_LIBS = @TEST_SERVER_LIBS@
+USE_ARES = @USE_ARES@
+USE_EMBEDDED_ARES_FALSE = @USE_EMBEDDED_ARES_FALSE@
+USE_EMBEDDED_ARES_TRUE = @USE_EMBEDDED_ARES_TRUE@
+USE_GNUTLS = @USE_GNUTLS@
+USE_LIBRTMP = @USE_LIBRTMP@
+USE_LIBSSH2 = @USE_LIBSSH2@
+USE_MANUAL_FALSE = @USE_MANUAL_FALSE@
+USE_MANUAL_TRUE = @USE_MANUAL_TRUE@
+USE_NSS = @USE_NSS@
+USE_OPENLDAP = @USE_OPENLDAP@
+USE_POLARSSL = @USE_POLARSSL@
+USE_SSLEAY = @USE_SSLEAY@
+USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
+VERSION = @VERSION@
+VERSIONNUM = @VERSIONNUM@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+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@
+lt_ECHO = @lt_ECHO@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+SUBDIRS = RPM
+EXTRA_DIST = Makefile.am
+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 \
+		&& exit 0; \
+	      exit 1;; \
+	  esac; \
+	done; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  packages/AIX/Makefile'; \
+	cd $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign  packages/AIX/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
+
+mostlyclean-libtool:
+	-rm -f *.lo
+
+clean-libtool:
+	-rm -rf .libs _libs
+
+distclean-libtool:
+	-rm -f libtool
+uninstall-info-am:
+
+# 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):
+	@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; \
+	  (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"
+
+mostlyclean-recursive clean-recursive distclean-recursive \
+maintainer-clean-recursive:
+	@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; \
+	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  || eval $$failcom; \
+	done && test -z "$$fail"
+tags-recursive:
+	list='$(SUBDIRS)'; for subdir in $$list; do \
+	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+	done
+ctags-recursive:
+	list='$(SUBDIRS)'; for subdir in $$list; do \
+	  test "$$subdir" = . || (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; } \
+	       END { for (i in files) print i; }'`; \
+	mkid -fID $$unique
+tags: TAGS
+
+TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
+		$(TAGS_FILES) $(LISP)
+	tags=; \
+	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 || \
+	      tags="$$tags $$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; } \
+	       END { for (i in files) print i; }'`; \
+	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+	  test -n "$$unique" || unique=$$empty_fix; \
+	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	    $$tags $$unique; \
+	fi
+ctags: CTAGS
+CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
+		$(TAGS_FILES) $(LISP)
+	tags=; \
+	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; } \
+	       END { for (i in files) print i; }'`; \
+	test -z "$(CTAGS_ARGS)$$tags$$unique" \
+	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+	     $$tags $$unique
+
+GTAGS:
+	here=`$(am__cd) $(top_builddir) && pwd` \
+	  && 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)'; for file in $$list; do \
+	  case $$file in \
+	    $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+	    $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+	  esac; \
+	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+	  dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+	  if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+	    dir="/$$dir"; \
+	    $(mkdir_p) "$(distdir)$$dir"; \
+	  else \
+	    dir=''; \
+	  fi; \
+	  if test -d $$d/$$file; then \
+	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	    fi; \
+	    cp -pR $$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; \
+	    distdir=`$(am__cd) $(distdir) && pwd`; \
+	    top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
+	    (cd $$subdir && \
+	      $(MAKE) $(AM_MAKEFLAGS) \
+	        top_distdir="$$top_distdir" \
+	        distdir="$$distdir/$$subdir" \
+	        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)
+
+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-libtool \
+	distclean-tags
+
+dvi: dvi-recursive
+
+dvi-am:
+
+html: html-recursive
+
+info: info-recursive
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-recursive
+
+install-man:
+
+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: uninstall-info-am
+
+uninstall-info: uninstall-info-recursive
+
+.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am \
+	clean clean-generic clean-libtool clean-recursive ctags \
+	ctags-recursive distclean distclean-generic distclean-libtool \
+	distclean-recursive distclean-tags distdir dvi dvi-am html \
+	html-am info info-am install install-am install-data \
+	install-data-am install-exec install-exec-am install-info \
+	install-info-am install-man install-strip installcheck \
+	installcheck-am installdirs installdirs-am maintainer-clean \
+	maintainer-clean-generic maintainer-clean-recursive \
+	mostlyclean mostlyclean-generic mostlyclean-libtool \
+	mostlyclean-recursive pdf pdf-am ps ps-am tags tags-recursive \
+	uninstall uninstall-am uninstall-info-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/packages/AIX/RPM/Makefile.am b/packages/AIX/RPM/Makefile.am
new file mode 100644
index 0000000..d1e7bf9
--- /dev/null
+++ b/packages/AIX/RPM/Makefile.am
@@ -0,0 +1,2 @@
+EXTRA_DIST = README curl.spec.in
+
diff --git a/packages/AIX/RPM/Makefile.in b/packages/AIX/RPM/Makefile.in
new file mode 100644
index 0000000..42f73d7
--- /dev/null
+++ b/packages/AIX/RPM/Makefile.in
@@ -0,0 +1,408 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = packages/AIX/RPM
+DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+	$(srcdir)/curl.spec.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 = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
+	$(top_builddir)/src/curl_config.h \
+	$(top_builddir)/include/curl/curlbuild.h
+CONFIG_CLEAN_FILES = curl.spec
+SOURCES =
+DIST_SOURCES =
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILD_LIBHOSTNAME_FALSE = @BUILD_LIBHOSTNAME_FALSE@
+BUILD_LIBHOSTNAME_TRUE = @BUILD_LIBHOSTNAME_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CONFIGURE_OPTIONS = @CONFIGURE_OPTIONS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CROSSCOMPILING_FALSE = @CROSSCOMPILING_FALSE@
+CROSSCOMPILING_TRUE = @CROSSCOMPILING_TRUE@
+CURLDEBUG_FALSE = @CURLDEBUG_FALSE@
+CURLDEBUG_TRUE = @CURLDEBUG_TRUE@
+CURL_CA_BUNDLE = @CURL_CA_BUNDLE@
+CURL_CFLAG_EXTRAS = @CURL_CFLAG_EXTRAS@
+CURL_DISABLE_DICT = @CURL_DISABLE_DICT@
+CURL_DISABLE_FILE = @CURL_DISABLE_FILE@
+CURL_DISABLE_FTP = @CURL_DISABLE_FTP@
+CURL_DISABLE_GOPHER = @CURL_DISABLE_GOPHER@
+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@
+CURL_NETWORK_LIBS = @CURL_NETWORK_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@
+ENABLE_SHARED = @ENABLE_SHARED@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
+HAVE_LIBZ = @HAVE_LIBZ@
+HAVE_LIBZ_FALSE = @HAVE_LIBZ_FALSE@
+HAVE_LIBZ_TRUE = @HAVE_LIBZ_TRUE@
+HAVE_PK11_CREATEGENERICOBJECT = @HAVE_PK11_CREATEGENERICOBJECT@
+IDN_ENABLED = @IDN_ENABLED@
+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@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+MANOPT = @MANOPT@
+MIMPURE_FALSE = @MIMPURE_FALSE@
+MIMPURE_TRUE = @MIMPURE_TRUE@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NO_UNDEFINED_FALSE = @NO_UNDEFINED_FALSE@
+NO_UNDEFINED_TRUE = @NO_UNDEFINED_TRUE@
+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@
+SONAME_BUMP_FALSE = @SONAME_BUMP_FALSE@
+SONAME_BUMP_TRUE = @SONAME_BUMP_TRUE@
+SSL_ENABLED = @SSL_ENABLED@
+STATICLIB_FALSE = @STATICLIB_FALSE@
+STATICLIB_TRUE = @STATICLIB_TRUE@
+STRIP = @STRIP@
+SUPPORT_FEATURES = @SUPPORT_FEATURES@
+SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
+TEST_SERVER_LIBS = @TEST_SERVER_LIBS@
+USE_ARES = @USE_ARES@
+USE_EMBEDDED_ARES_FALSE = @USE_EMBEDDED_ARES_FALSE@
+USE_EMBEDDED_ARES_TRUE = @USE_EMBEDDED_ARES_TRUE@
+USE_GNUTLS = @USE_GNUTLS@
+USE_LIBRTMP = @USE_LIBRTMP@
+USE_LIBSSH2 = @USE_LIBSSH2@
+USE_MANUAL_FALSE = @USE_MANUAL_FALSE@
+USE_MANUAL_TRUE = @USE_MANUAL_TRUE@
+USE_NSS = @USE_NSS@
+USE_OPENLDAP = @USE_OPENLDAP@
+USE_POLARSSL = @USE_POLARSSL@
+USE_SSLEAY = @USE_SSLEAY@
+USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
+VERSION = @VERSION@
+VERSIONNUM = @VERSIONNUM@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+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@
+lt_ECHO = @lt_ECHO@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = README curl.spec.in
+all: 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 \
+		&& exit 0; \
+	      exit 1;; \
+	  esac; \
+	done; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  packages/AIX/RPM/Makefile'; \
+	cd $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign  packages/AIX/RPM/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
+curl.spec: $(top_builddir)/config.status $(srcdir)/curl.spec.in
+	cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
+
+mostlyclean-libtool:
+	-rm -f *.lo
+
+clean-libtool:
+	-rm -rf .libs _libs
+
+distclean-libtool:
+	-rm -f libtool
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+distdir: $(DISTFILES)
+	@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+	list='$(DISTFILES)'; for file in $$list; do \
+	  case $$file in \
+	    $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+	    $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+	  esac; \
+	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+	  dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+	  if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+	    dir="/$$dir"; \
+	    $(mkdir_p) "$(distdir)$$dir"; \
+	  else \
+	    dir=''; \
+	  fi; \
+	  if test -d $$d/$$file; then \
+	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	    fi; \
+	    cp -pR $$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:
+
+distclean-generic:
+	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_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 distclean-libtool
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+	-rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.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-exec install-exec-am \
+	install-info install-info-am install-man install-strip \
+	installcheck installcheck-am installdirs maintainer-clean \
+	maintainer-clean-generic mostlyclean mostlyclean-generic \
+	mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \
+	uninstall-info-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/packages/AIX/RPM/README b/packages/AIX/RPM/README
new file mode 100644
index 0000000..790beb8
--- /dev/null
+++ b/packages/AIX/RPM/README
@@ -0,0 +1,33 @@
+                             _   _ ____  _
+                         ___| | | |  _ \| |
+                        / __| | | | |_) | |
+                       ( (__| |_| |  _ <| |___
+                        \___|\___/|_| \_\_____|
+                            for AIX Toolbox
+
+Author: Tor Arntsen
+
+The spec file in this directory is based on the Linux ssl and non-ssl
+curl spec files, plus additions to make it AIX Toolbox compatible.
+
+The AIX Toolbox setup (installs into /opt/freeware, with symlinks in
+/usr/bin,/usr/lib,/usr/include) are based on IBM's aixtoolbox spec
+file written by David Clissold <cliss@austin.ibm.com>, see
+
+ftp://ftp.software.ibm.com/aixtoolbox/SPECS/curl-7.9.3-2.spec
+
+This spec file is designed to be a drop-in replacement for the
+old spec file found at the above link. Thus, like the old spec file
+this version is also a unified ssl/non-ssl  version. To get non-ssl
+RPMs just pass --define 'nossl 1' to the command line when building
+the RPM, e.g.
+
+rpm -bb --define 'nossl 1' curl.spec
+
+Default is to build with ssl support.
+
+Lastly, the spec file expects the Curl source distribution file to be
+in .tar.bz2 format.
+
+The nifty cURL header of this README is a ripoff of the vms/readme file.
+
diff --git a/packages/AIX/RPM/curl.spec.in b/packages/AIX/RPM/curl.spec.in
new file mode 100644
index 0000000..a37e0d7
--- /dev/null
+++ b/packages/AIX/RPM/curl.spec.in
@@ -0,0 +1,132 @@
+# Use --define 'nossl 1' on the command line to disable SSL detection
+%{!?nossl:%define SSL 1}
+%{?nossl:%define SSL 0}
+
+%define name curl
+%define version @VERSION@
+%define release 1%{!?nossl:ssl}
+
+%define curlroot %{_builddir}/%{name}-%{version}
+
+Summary: get a file from a FTP or HTTP server.
+Name: %{name}
+Version: %{version}
+Release: %{release}
+License: MIT/X derivate
+Vendor: Daniel Stenberg <Daniel.Stenberg@haxx.se>
+Group: Applications/Internet
+Source: %{name}-%{version}.tar.bz2
+URL: http://curl.haxx.se/
+Provides: curl
+BuildRoot: %{_tmppath}/%{name}-%{version}-root
+Prefix: %{_prefix}
+
+%description
+curl is a client to get documents/files from servers, using any of the
+supported protocols.  The command is designed to work without user
+interaction or any kind of interactivity.
+
+curl offers many useful tricks like proxy support, user authentication,
+ftp upload, HTTP post, file transfer resume and more.
+
+%if %{SSL} == 1
+Note: this version is compiled with SSL support.
+%else
+Note: this version is compiled without SSL support.
+%endif
+
+%package	devel
+Summary:	Development files for the curl libary
+Group:		Development/Libraries
+%if %{SSL} == 1
+Requires: openssl >= 0.9.5
+%endif
+Requires:	curl = %{version}
+Provides:	curl-devel
+
+%description devel
+libcurl is the core engine of curl; this packages contains all the
+libs, headers, and manual pages to develop applications using libcurl.
+
+%define DEFCC xlc
+
+%prep
+rm -rf %{curlroot}
+%setup -q
+
+%build
+
+# Use the default compiler for this platform - gcc otherwise
+if [[ -z "$CC" ]]
+then
+    if test "X`type %{DEFCC} 2>/dev/null`" != 'X'; then
+       export CC=%{DEFCC}
+    else
+       export CC=gcc
+    fi
+fi
+
+cd %{curlroot} && (if [ -f configure.in ]; then mv -f configure.in configure.in.
+rpm; fi)
+
+./configure --prefix=%{prefix} \
+%if %{SSL} == 1
+        --with-ssl
+%else
+        --without-ssl
+%endif
+
+make
+
+%install
+[ "%{buildroot}" != "/" ] && rm -rf %{buildroot}
+make DESTDIR=%{buildroot} install-strip
+
+( cd $RPM_BUILD_ROOT   # same as %{buildroot}
+
+ for dir in bin include
+ do
+    mkdir -p usr/$dir
+    cd usr/$dir
+    ln -sf ../..%{prefix}/$dir/* .
+    cd -
+ done
+
+ mkdir -p usr/lib
+ cd usr/lib
+ ln -sf ../..%{prefix}/lib/* .
+ cd -
+)
+
+%clean
+[ "%{buildroot}" != "/" ] && rm -rf %{buildroot}
+
+%files
+%defattr(-,root,root)
+%attr(0755,root,root) %{_bindir}/curl
+%attr(0644,root,root) %{_mandir}/man1/curl.1*
+%{_libdir}/libcurl.a
+%if %{SSL} == 1
+%{_datadir}/curl/curl-ca-bundle.crt
+%endif
+%doc CHANGES COPYING README RELEASE-NOTES
+%doc docs/BUGS docs/CONTRIBUTE docs/FAQ docs/FEATURES docs/HISTORY
+%doc docs/INSTALL docs/KNOWN_BUGS
+%doc docs/MANUAL docs/RESOURCES docs/THANKS docs/VERSIONS docs/TODO
+%doc docs/TheArtOfHttpScripting
+%if %{SSL} == 1
+%doc docs/SSLCERTS
+%endif
+/usr/bin/curl
+/usr/lib/libcurl.a
+
+%files devel
+%defattr(-,root,root)
+%attr(0755,root,root) %{_bindir}/curl-config
+%attr(0644,root,root) %{_mandir}/man1/curl-config.1*
+%attr(0644,root,root) %{_mandir}/man3/*
+%attr(0644,root,root) %{_includedir}/curl/*
+%{_libdir}/libcurl.la
+%doc docs/BINDINGS docs/INTERNALS docs/LICENSE-MIXING
+/usr/bin/curl-config
+/usr/include/curl
diff --git a/packages/DOS/README b/packages/DOS/README
new file mode 100644
index 0000000..c2ab9b9
--- /dev/null
+++ b/packages/DOS/README
@@ -0,0 +1,11 @@
+Gisle Vanem made curl build fine on DOS (and MingW) with djgpp, OpenSSL and his
+Watt-32 stack.
+
+'make djgpp' in the root curl dir should build it fine.
+
+Note 1: djgpp 2.04 beta has a sscanf() bug so the URL parsing isn't
+        done proberly. Use djgpp 2.03 until they fix it.
+
+Note 2: Compile Watt-32 (and OpenSSL) with the same version of djgpp.
+        Otherwise things go wrong because things like FS-extensions and
+        errnos have been changed between releases.
diff --git a/packages/DOS/common.dj b/packages/DOS/common.dj
new file mode 100644
index 0000000..a32f10c
--- /dev/null
+++ b/packages/DOS/common.dj
@@ -0,0 +1,136 @@
+#
+# Common defines for curl (djgpp/Watt-32)
+#
+# Assumes you've unpacked cURL with long-file names
+# I.e use "set LFN=y" before untaring on Win9x/XP.
+# Requires sed, yacc, rm and the usual stuff.
+#
+# Define TOPDIR before including this file.
+
+.SUFFIXES: .exe .y
+
+MAKEFILE = Makefile.dj
+OBJ_DIR = djgpp
+
+#
+# Find out if using a UNIX-like shell or a DOS command interpreter
+#
+ifneq ($(findstring COMMAND.COM,$(SHELL)),COMMAND.COM)
+  ifneq ($(findstring CMD.EXE,$(SHELL)),CMD.EXE)
+    ifneq ($(findstring 4DOS.COM,$(SHELL)),4DOS.COM)
+      IS_UNIX_SHELL = 1
+    endif
+  endif
+endif
+
+#
+# Define shell dependent commands and vars
+#
+ifeq ($(IS_UNIX_SHELL),1)
+  COPY   = cp -f
+  DELETE = rm -f
+  MKDIR  = mkdir
+  RMDIR  = rm -f -r
+  DS     = /
+else
+  COPY   = copy
+  DELETE = del
+  MKDIR  = mkdir
+  RMDIR  = rmdir
+  DS     = \$(NOTHING)
+endif
+
+#
+# OpenSSL is available from www.openssl.org and builds okay
+# with djgpp/Watt-32. Set to 0 if you don't need https URLs
+# (reduces curl.exe with approx 700 kB)
+#
+USE_SSL = 0
+
+#
+# Use zlib for contents encoding
+#
+USE_ZLIB = 0
+
+#
+# Use libidn for international domain names
+#
+USE_IDNA = 0
+
+#
+# Use Watt-32 IPv6 stack (only IPv6 name resolution working at the moment)
+#
+USE_IPV6 = 0
+
+#
+# Use C-Ares resolver library
+#
+USE_ARES = 0
+
+#
+# Enable debug code in libcurl/curl
+#
+USE_DEBUG = 0
+
+#
+# Enable memory tracking code in libcurl/curl
+#
+USE_CURLDEBUG = 0
+
+default: all
+
+#
+# Root directory for Waterloo tcp/ip etc. Change to suite.
+# WATT_ROOT should be set during Watt-32 install.
+#
+WATT32_ROOT  = $(subst \,/,$(WATT_ROOT))
+OPENSSL_ROOT = e:/net/openssl.099
+ZLIB_ROOT    = $(DJDIR)/contrib/zlib
+LIBIDN_ROOT  = $(TOPDIR)/../IDN/libidn
+ARES_ROOT    = $(TOPDIR)/ares
+
+CC   = gcc
+YACC = bison -y
+
+CFLAGS = -g -gcoff -O2 -I. -I$(TOPDIR)/include -I$(TOPDIR)/lib \
+         -I$(WATT32_ROOT)/inc -Wall -DHAVE_CONFIG_H
+
+ifeq ($(USE_SSL),1)
+  CFLAGS += -DUSE_SSLEAY -DUSE_OPENSSL -I$(OPENSSL_ROOT)
+endif
+
+ifeq ($(USE_ZLIB),1)
+  CFLAGS += -DUSE_ZLIB -I$(ZLIB_ROOT)
+endif
+
+ifeq ($(USE_IPV6),1)
+  CFLAGS += -DENABLE_IPV6
+endif
+
+ifeq ($(USE_ARES),1)
+  CFLAGS += -DUSE_ARES -I$(ARES_ROOT)
+endif
+
+ifeq ($(USE_IDNA),1)
+  CFLAGS += -DHAVE_LIBIDN -DHAVE_IDN_FREE_H -DHAVE_IDN_FREE -DHAVE_TLD_H \
+            -DHAVE_TLD_STRERROR -I$(LIBIDN_ROOT)/lib
+endif
+
+ifeq ($(USE_DEBUG),1)
+  CFLAGS += -DDEBUG=1 -DDEBUGBUILD
+endif
+
+ifeq ($(USE_CURLDEBUG),1)
+  CFLAGS += -DCURLDEBUG
+endif
+
+$(OBJ_DIR):
+	$(MKDIR) $(OBJ_DIR)
+
+$(OBJ_DIR)/%.o: %.c
+	$(CC) $(CFLAGS) -o $@ -c $<
+	@echo
+
+depend: $(DEPEND_PREREQ) $(MAKEFILE)
+	$(CC) -MM $(CFLAGS) $(CSOURCES) | \
+	sed -e 's/^\([a-zA-Z0-9_-]*\.o:\)/$$(OBJ_DIR)\/\1/' > depend.dj
diff --git a/packages/EPM/Makefile.am b/packages/EPM/Makefile.am
new file mode 100644
index 0000000..b010a4b
--- /dev/null
+++ b/packages/EPM/Makefile.am
@@ -0,0 +1,3 @@
+AUTOMAKE_OPTIONS = foreign
+
+EXTRA_DIST = README curl.list.in
diff --git a/packages/EPM/Makefile.in b/packages/EPM/Makefile.in
new file mode 100644
index 0000000..122015e
--- /dev/null
+++ b/packages/EPM/Makefile.in
@@ -0,0 +1,409 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = packages/EPM
+DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+	$(srcdir)/curl.list.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 = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
+	$(top_builddir)/src/curl_config.h \
+	$(top_builddir)/include/curl/curlbuild.h
+CONFIG_CLEAN_FILES = curl.list
+SOURCES =
+DIST_SOURCES =
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILD_LIBHOSTNAME_FALSE = @BUILD_LIBHOSTNAME_FALSE@
+BUILD_LIBHOSTNAME_TRUE = @BUILD_LIBHOSTNAME_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CONFIGURE_OPTIONS = @CONFIGURE_OPTIONS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CROSSCOMPILING_FALSE = @CROSSCOMPILING_FALSE@
+CROSSCOMPILING_TRUE = @CROSSCOMPILING_TRUE@
+CURLDEBUG_FALSE = @CURLDEBUG_FALSE@
+CURLDEBUG_TRUE = @CURLDEBUG_TRUE@
+CURL_CA_BUNDLE = @CURL_CA_BUNDLE@
+CURL_CFLAG_EXTRAS = @CURL_CFLAG_EXTRAS@
+CURL_DISABLE_DICT = @CURL_DISABLE_DICT@
+CURL_DISABLE_FILE = @CURL_DISABLE_FILE@
+CURL_DISABLE_FTP = @CURL_DISABLE_FTP@
+CURL_DISABLE_GOPHER = @CURL_DISABLE_GOPHER@
+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@
+CURL_NETWORK_LIBS = @CURL_NETWORK_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@
+ENABLE_SHARED = @ENABLE_SHARED@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
+HAVE_LIBZ = @HAVE_LIBZ@
+HAVE_LIBZ_FALSE = @HAVE_LIBZ_FALSE@
+HAVE_LIBZ_TRUE = @HAVE_LIBZ_TRUE@
+HAVE_PK11_CREATEGENERICOBJECT = @HAVE_PK11_CREATEGENERICOBJECT@
+IDN_ENABLED = @IDN_ENABLED@
+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@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+MANOPT = @MANOPT@
+MIMPURE_FALSE = @MIMPURE_FALSE@
+MIMPURE_TRUE = @MIMPURE_TRUE@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NO_UNDEFINED_FALSE = @NO_UNDEFINED_FALSE@
+NO_UNDEFINED_TRUE = @NO_UNDEFINED_TRUE@
+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@
+SONAME_BUMP_FALSE = @SONAME_BUMP_FALSE@
+SONAME_BUMP_TRUE = @SONAME_BUMP_TRUE@
+SSL_ENABLED = @SSL_ENABLED@
+STATICLIB_FALSE = @STATICLIB_FALSE@
+STATICLIB_TRUE = @STATICLIB_TRUE@
+STRIP = @STRIP@
+SUPPORT_FEATURES = @SUPPORT_FEATURES@
+SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
+TEST_SERVER_LIBS = @TEST_SERVER_LIBS@
+USE_ARES = @USE_ARES@
+USE_EMBEDDED_ARES_FALSE = @USE_EMBEDDED_ARES_FALSE@
+USE_EMBEDDED_ARES_TRUE = @USE_EMBEDDED_ARES_TRUE@
+USE_GNUTLS = @USE_GNUTLS@
+USE_LIBRTMP = @USE_LIBRTMP@
+USE_LIBSSH2 = @USE_LIBSSH2@
+USE_MANUAL_FALSE = @USE_MANUAL_FALSE@
+USE_MANUAL_TRUE = @USE_MANUAL_TRUE@
+USE_NSS = @USE_NSS@
+USE_OPENLDAP = @USE_OPENLDAP@
+USE_POLARSSL = @USE_POLARSSL@
+USE_SSLEAY = @USE_SSLEAY@
+USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
+VERSION = @VERSION@
+VERSIONNUM = @VERSIONNUM@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+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@
+lt_ECHO = @lt_ECHO@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+AUTOMAKE_OPTIONS = foreign
+EXTRA_DIST = README curl.list.in
+all: 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 \
+		&& exit 0; \
+	      exit 1;; \
+	  esac; \
+	done; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  packages/EPM/Makefile'; \
+	cd $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign  packages/EPM/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
+curl.list: $(top_builddir)/config.status $(srcdir)/curl.list.in
+	cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
+
+mostlyclean-libtool:
+	-rm -f *.lo
+
+clean-libtool:
+	-rm -rf .libs _libs
+
+distclean-libtool:
+	-rm -f libtool
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+distdir: $(DISTFILES)
+	@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+	list='$(DISTFILES)'; for file in $$list; do \
+	  case $$file in \
+	    $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+	    $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+	  esac; \
+	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+	  dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+	  if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+	    dir="/$$dir"; \
+	    $(mkdir_p) "$(distdir)$$dir"; \
+	  else \
+	    dir=''; \
+	  fi; \
+	  if test -d $$d/$$file; then \
+	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	    fi; \
+	    cp -pR $$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:
+
+distclean-generic:
+	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_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 distclean-libtool
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+	-rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.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-exec install-exec-am \
+	install-info install-info-am install-man install-strip \
+	installcheck installcheck-am installdirs maintainer-clean \
+	maintainer-clean-generic mostlyclean mostlyclean-generic \
+	mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \
+	uninstall-info-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/packages/EPM/README b/packages/EPM/README
new file mode 100644
index 0000000..3529dbf
--- /dev/null
+++ b/packages/EPM/README
@@ -0,0 +1,12 @@
+EPM is a free UNIX software/file packaging program that generates distribution
+archives from a list of files. EPM Can:
+
+ * Generate portable script-based distribution packages complete with
+   installation and removal scripts.
+ * Generate vendor distributions in AIX, BSD, Compaq Tru64, Debian, HP-UX,
+   IRIX, Red Hat, and Solaris formats.
+ * Provide a complete, cross-platform software distribution solution for your
+   applications.
+
+http://www.easysw.com/epm/
+
diff --git a/packages/EPM/curl.list.in b/packages/EPM/curl.list.in
new file mode 100644
index 0000000..39060dd
--- /dev/null
+++ b/packages/EPM/curl.list.in
@@ -0,0 +1,59 @@
+# Directories...
+$prefix=@prefix@
+$exec_prefix=@exec_prefix@
+$bindir=@bindir@
+$confdir=@sysconfdir@
+$docdir=@prefix@/doc
+$mandir=@mandir@
+$libdir=@libdir@
+$srcdir=@top_srcdir@
+$includedir=@includedir@
+$datarootdir=@datarootdir@
+
+# Product information
+%product curl
+%copyright 1998-2002 by Daniel Stenberg
+%vendor Daniel Stenberg, <daniel@haxx.se>
+%license ${srcdir}/MITX.txt
+%readme ${srcdir}/README
+%description Curl is a command line tool for transfering data specified
+%description with URL syntax
+%version @VERSION@
+%packager Giuseppe "Cowo" Corbelli <cowo@lugbs.linux.it>
+
+f 0644 cowo pppusers ${mandir}/man1/curl.1 ./docs/curl.1
+f 0644 cowo pppusers ${mandir}/man1/curl-config.1 ./docs/curl-config.1
+f 0644 cowo pppusers ${mandir}/man3/curl_easy_cleanup.3 ./docs/curl_easy_cleanup.3
+f 0644 cowo pppusers ${mandir}/man3/curl_easy_getinfo.3 ./docs/curl_easy_getinfo.3
+f 0644 cowo pppusers ${mandir}/man3/curl_easy_init.3 ./docs/curl_easy_init.3
+f 0644 cowo pppusers ${mandir}/man3/curl_easy_perform.3 ./docs/curl_easy_perform.3
+f 0644 cowo pppusers ${mandir}/man3/curl_easy_setopt.3 ./docs/curl_easy_setopt.3
+f 0644 cowo pppusers ${mandir}/man3/curl_easy_duphandle.3 ./docs/curl_easy_duphandle.3
+f 0644 cowo pppusers ${mandir}/man3/curl_formparse.3 ./docs/curl_formparse.3
+f 0644 cowo pppusers ${mandir}/man3/curl_formadd.3 ./docs/curl_formadd.3
+f 0644 cowo pppusers ${mandir}/man3/curl_formfree.3 ./docs/curl_formfree.3
+f 0644 cowo pppusers ${mandir}/man3/curl_getdate.3 ./docs/curl_getdate.3
+f 0644 cowo pppusers ${mandir}/man3/curl_getenv.3 ./docs/curl_getenv.3
+f 0644 cowo pppusers ${mandir}/man3/curl_slist_append.3 ./docs/curl_slist_append.3
+f 0644 cowo pppusers ${mandir}/man3/curl_slist_free_all.3 ./docs/curl_slist_free_all.3
+f 0644 cowo pppusers ${mandir}/man3/curl_version.3 ./docs/curl_version.3
+f 0644 cowo pppusers ${mandir}/man3/curl_escape.3 ./docs/curl_escape.3
+f 0644 cowo pppusers ${mandir}/man3/curl_unescape.3 ./docs/curl_unescape.3
+f 0644 cowo pppusers ${mandir}/man3/curl_strequal.3 ./docs/curl_strequal.3
+f 0644 cowo pppusers ${mandir}/man3/curl_strnequal.3 ./docs/curl_strnequal.3
+f 0644 cowo pppusers ${mandir}/man3/curl_mprintf.3 ./docs/curl_mprintf.3
+f 0644 cowo pppusers ${mandir}/man3/curl_global_init.3 ./docs/curl_global_init.3
+f 0644 cowo pppusers ${mandir}/man3/curl_global_cleanup.3 ./docs/curl_global_cleanup.3
+f 0644 cowo pppusers ${mandir}/man3/libcurl.3 ./docs/libcurl.3
+f 0755 cowo pppusers ${libdir}/libcurl.so.2.0.2 ./lib/.libs/libcurl.so.2.0.2
+f 0755 cowo pppusers ${libdir}/libcurl.la ./lib/libcurl.la
+f 0755 cowo pppusers ${libdir}/libcurl.la ./lib/.libs/libcurl.la
+f 0644 cowo pppusers ${libdir}/libcurl.a ./lib/.libs/libcurl.a
+f 0755 cowo pppusers ${bindir}/curl ./src/curl
+f 0755 cowo pppusers ${bindir}/curl ./src/.libs/curl
+f 0644 cowo pppusers ${includedir}/curl/curl.h ./include/curl/curl.h
+f 0644 cowo pppusers ${includedir}/curl/easy.h ./include/curl/easy.h
+f 0644 cowo pppusers ${includedir}/curl/mprintf.h ./include/curl/mprintf.h
+f 0644 cowo pppusers ${includedir}/curl/stdcheaders.h ./include/curl/stdcheaders.h
+f 0644 cowo pppusers ${includedir}/curl/types.h ./include/curl/types.h
+f 0755 cowo pppusers ${bindir}/curl-config ./curl-config
diff --git a/packages/Linux/Makefile.am b/packages/Linux/Makefile.am
new file mode 100644
index 0000000..5753055
--- /dev/null
+++ b/packages/Linux/Makefile.am
@@ -0,0 +1 @@
+SUBDIRS = RPM
diff --git a/packages/Linux/Makefile.in b/packages/Linux/Makefile.in
new file mode 100644
index 0000000..af05429
--- /dev/null
+++ b/packages/Linux/Makefile.in
@@ -0,0 +1,562 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = packages/Linux
+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 = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
+	$(top_builddir)/src/curl_config.h \
+	$(top_builddir)/include/curl/curlbuild.h
+CONFIG_CLEAN_FILES =
+SOURCES =
+DIST_SOURCES =
+RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
+	html-recursive info-recursive install-data-recursive \
+	install-exec-recursive install-info-recursive \
+	install-recursive installcheck-recursive installdirs-recursive \
+	pdf-recursive ps-recursive uninstall-info-recursive \
+	uninstall-recursive
+ETAGS = etags
+CTAGS = ctags
+DIST_SUBDIRS = $(SUBDIRS)
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILD_LIBHOSTNAME_FALSE = @BUILD_LIBHOSTNAME_FALSE@
+BUILD_LIBHOSTNAME_TRUE = @BUILD_LIBHOSTNAME_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CONFIGURE_OPTIONS = @CONFIGURE_OPTIONS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CROSSCOMPILING_FALSE = @CROSSCOMPILING_FALSE@
+CROSSCOMPILING_TRUE = @CROSSCOMPILING_TRUE@
+CURLDEBUG_FALSE = @CURLDEBUG_FALSE@
+CURLDEBUG_TRUE = @CURLDEBUG_TRUE@
+CURL_CA_BUNDLE = @CURL_CA_BUNDLE@
+CURL_CFLAG_EXTRAS = @CURL_CFLAG_EXTRAS@
+CURL_DISABLE_DICT = @CURL_DISABLE_DICT@
+CURL_DISABLE_FILE = @CURL_DISABLE_FILE@
+CURL_DISABLE_FTP = @CURL_DISABLE_FTP@
+CURL_DISABLE_GOPHER = @CURL_DISABLE_GOPHER@
+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@
+CURL_NETWORK_LIBS = @CURL_NETWORK_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@
+ENABLE_SHARED = @ENABLE_SHARED@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
+HAVE_LIBZ = @HAVE_LIBZ@
+HAVE_LIBZ_FALSE = @HAVE_LIBZ_FALSE@
+HAVE_LIBZ_TRUE = @HAVE_LIBZ_TRUE@
+HAVE_PK11_CREATEGENERICOBJECT = @HAVE_PK11_CREATEGENERICOBJECT@
+IDN_ENABLED = @IDN_ENABLED@
+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@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+MANOPT = @MANOPT@
+MIMPURE_FALSE = @MIMPURE_FALSE@
+MIMPURE_TRUE = @MIMPURE_TRUE@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NO_UNDEFINED_FALSE = @NO_UNDEFINED_FALSE@
+NO_UNDEFINED_TRUE = @NO_UNDEFINED_TRUE@
+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@
+SONAME_BUMP_FALSE = @SONAME_BUMP_FALSE@
+SONAME_BUMP_TRUE = @SONAME_BUMP_TRUE@
+SSL_ENABLED = @SSL_ENABLED@
+STATICLIB_FALSE = @STATICLIB_FALSE@
+STATICLIB_TRUE = @STATICLIB_TRUE@
+STRIP = @STRIP@
+SUPPORT_FEATURES = @SUPPORT_FEATURES@
+SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
+TEST_SERVER_LIBS = @TEST_SERVER_LIBS@
+USE_ARES = @USE_ARES@
+USE_EMBEDDED_ARES_FALSE = @USE_EMBEDDED_ARES_FALSE@
+USE_EMBEDDED_ARES_TRUE = @USE_EMBEDDED_ARES_TRUE@
+USE_GNUTLS = @USE_GNUTLS@
+USE_LIBRTMP = @USE_LIBRTMP@
+USE_LIBSSH2 = @USE_LIBSSH2@
+USE_MANUAL_FALSE = @USE_MANUAL_FALSE@
+USE_MANUAL_TRUE = @USE_MANUAL_TRUE@
+USE_NSS = @USE_NSS@
+USE_OPENLDAP = @USE_OPENLDAP@
+USE_POLARSSL = @USE_POLARSSL@
+USE_SSLEAY = @USE_SSLEAY@
+USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
+VERSION = @VERSION@
+VERSIONNUM = @VERSIONNUM@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+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@
+lt_ECHO = @lt_ECHO@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+SUBDIRS = RPM
+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 \
+		&& exit 0; \
+	      exit 1;; \
+	  esac; \
+	done; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  packages/Linux/Makefile'; \
+	cd $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign  packages/Linux/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
+
+mostlyclean-libtool:
+	-rm -f *.lo
+
+clean-libtool:
+	-rm -rf .libs _libs
+
+distclean-libtool:
+	-rm -f libtool
+uninstall-info-am:
+
+# 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):
+	@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; \
+	  (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"
+
+mostlyclean-recursive clean-recursive distclean-recursive \
+maintainer-clean-recursive:
+	@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; \
+	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  || eval $$failcom; \
+	done && test -z "$$fail"
+tags-recursive:
+	list='$(SUBDIRS)'; for subdir in $$list; do \
+	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+	done
+ctags-recursive:
+	list='$(SUBDIRS)'; for subdir in $$list; do \
+	  test "$$subdir" = . || (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; } \
+	       END { for (i in files) print i; }'`; \
+	mkid -fID $$unique
+tags: TAGS
+
+TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
+		$(TAGS_FILES) $(LISP)
+	tags=; \
+	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 || \
+	      tags="$$tags $$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; } \
+	       END { for (i in files) print i; }'`; \
+	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+	  test -n "$$unique" || unique=$$empty_fix; \
+	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	    $$tags $$unique; \
+	fi
+ctags: CTAGS
+CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
+		$(TAGS_FILES) $(LISP)
+	tags=; \
+	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; } \
+	       END { for (i in files) print i; }'`; \
+	test -z "$(CTAGS_ARGS)$$tags$$unique" \
+	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+	     $$tags $$unique
+
+GTAGS:
+	here=`$(am__cd) $(top_builddir) && pwd` \
+	  && 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)'; for file in $$list; do \
+	  case $$file in \
+	    $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+	    $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+	  esac; \
+	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+	  dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+	  if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+	    dir="/$$dir"; \
+	    $(mkdir_p) "$(distdir)$$dir"; \
+	  else \
+	    dir=''; \
+	  fi; \
+	  if test -d $$d/$$file; then \
+	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	    fi; \
+	    cp -pR $$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; \
+	    distdir=`$(am__cd) $(distdir) && pwd`; \
+	    top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
+	    (cd $$subdir && \
+	      $(MAKE) $(AM_MAKEFLAGS) \
+	        top_distdir="$$top_distdir" \
+	        distdir="$$distdir/$$subdir" \
+	        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)
+
+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-libtool \
+	distclean-tags
+
+dvi: dvi-recursive
+
+dvi-am:
+
+html: html-recursive
+
+info: info-recursive
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-recursive
+
+install-man:
+
+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: uninstall-info-am
+
+uninstall-info: uninstall-info-recursive
+
+.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am \
+	clean clean-generic clean-libtool clean-recursive ctags \
+	ctags-recursive distclean distclean-generic distclean-libtool \
+	distclean-recursive distclean-tags distdir dvi dvi-am html \
+	html-am info info-am install install-am install-data \
+	install-data-am install-exec install-exec-am install-info \
+	install-info-am install-man install-strip installcheck \
+	installcheck-am installdirs installdirs-am maintainer-clean \
+	maintainer-clean-generic maintainer-clean-recursive \
+	mostlyclean mostlyclean-generic mostlyclean-libtool \
+	mostlyclean-recursive pdf pdf-am ps ps-am tags tags-recursive \
+	uninstall uninstall-am uninstall-info-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/packages/Linux/RPM/Makefile.am b/packages/Linux/RPM/Makefile.am
new file mode 100644
index 0000000..5d46d87
--- /dev/null
+++ b/packages/Linux/RPM/Makefile.am
@@ -0,0 +1,2 @@
+EXTRA_DIST = README curl-ssl.spec.in curl.spec.in make_curl_rpm
+
diff --git a/packages/Linux/RPM/Makefile.in b/packages/Linux/RPM/Makefile.in
new file mode 100644
index 0000000..2298947
--- /dev/null
+++ b/packages/Linux/RPM/Makefile.in
@@ -0,0 +1,410 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = packages/Linux/RPM
+DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+	$(srcdir)/curl-ssl.spec.in $(srcdir)/curl.spec.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 = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
+	$(top_builddir)/src/curl_config.h \
+	$(top_builddir)/include/curl/curlbuild.h
+CONFIG_CLEAN_FILES = curl.spec curl-ssl.spec
+SOURCES =
+DIST_SOURCES =
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILD_LIBHOSTNAME_FALSE = @BUILD_LIBHOSTNAME_FALSE@
+BUILD_LIBHOSTNAME_TRUE = @BUILD_LIBHOSTNAME_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CONFIGURE_OPTIONS = @CONFIGURE_OPTIONS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CROSSCOMPILING_FALSE = @CROSSCOMPILING_FALSE@
+CROSSCOMPILING_TRUE = @CROSSCOMPILING_TRUE@
+CURLDEBUG_FALSE = @CURLDEBUG_FALSE@
+CURLDEBUG_TRUE = @CURLDEBUG_TRUE@
+CURL_CA_BUNDLE = @CURL_CA_BUNDLE@
+CURL_CFLAG_EXTRAS = @CURL_CFLAG_EXTRAS@
+CURL_DISABLE_DICT = @CURL_DISABLE_DICT@
+CURL_DISABLE_FILE = @CURL_DISABLE_FILE@
+CURL_DISABLE_FTP = @CURL_DISABLE_FTP@
+CURL_DISABLE_GOPHER = @CURL_DISABLE_GOPHER@
+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@
+CURL_NETWORK_LIBS = @CURL_NETWORK_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@
+ENABLE_SHARED = @ENABLE_SHARED@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
+HAVE_LIBZ = @HAVE_LIBZ@
+HAVE_LIBZ_FALSE = @HAVE_LIBZ_FALSE@
+HAVE_LIBZ_TRUE = @HAVE_LIBZ_TRUE@
+HAVE_PK11_CREATEGENERICOBJECT = @HAVE_PK11_CREATEGENERICOBJECT@
+IDN_ENABLED = @IDN_ENABLED@
+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@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+MANOPT = @MANOPT@
+MIMPURE_FALSE = @MIMPURE_FALSE@
+MIMPURE_TRUE = @MIMPURE_TRUE@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NO_UNDEFINED_FALSE = @NO_UNDEFINED_FALSE@
+NO_UNDEFINED_TRUE = @NO_UNDEFINED_TRUE@
+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@
+SONAME_BUMP_FALSE = @SONAME_BUMP_FALSE@
+SONAME_BUMP_TRUE = @SONAME_BUMP_TRUE@
+SSL_ENABLED = @SSL_ENABLED@
+STATICLIB_FALSE = @STATICLIB_FALSE@
+STATICLIB_TRUE = @STATICLIB_TRUE@
+STRIP = @STRIP@
+SUPPORT_FEATURES = @SUPPORT_FEATURES@
+SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
+TEST_SERVER_LIBS = @TEST_SERVER_LIBS@
+USE_ARES = @USE_ARES@
+USE_EMBEDDED_ARES_FALSE = @USE_EMBEDDED_ARES_FALSE@
+USE_EMBEDDED_ARES_TRUE = @USE_EMBEDDED_ARES_TRUE@
+USE_GNUTLS = @USE_GNUTLS@
+USE_LIBRTMP = @USE_LIBRTMP@
+USE_LIBSSH2 = @USE_LIBSSH2@
+USE_MANUAL_FALSE = @USE_MANUAL_FALSE@
+USE_MANUAL_TRUE = @USE_MANUAL_TRUE@
+USE_NSS = @USE_NSS@
+USE_OPENLDAP = @USE_OPENLDAP@
+USE_POLARSSL = @USE_POLARSSL@
+USE_SSLEAY = @USE_SSLEAY@
+USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
+VERSION = @VERSION@
+VERSIONNUM = @VERSIONNUM@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+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@
+lt_ECHO = @lt_ECHO@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = README curl-ssl.spec.in curl.spec.in make_curl_rpm
+all: 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 \
+		&& exit 0; \
+	      exit 1;; \
+	  esac; \
+	done; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  packages/Linux/RPM/Makefile'; \
+	cd $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign  packages/Linux/RPM/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
+curl.spec: $(top_builddir)/config.status $(srcdir)/curl.spec.in
+	cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
+curl-ssl.spec: $(top_builddir)/config.status $(srcdir)/curl-ssl.spec.in
+	cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
+
+mostlyclean-libtool:
+	-rm -f *.lo
+
+clean-libtool:
+	-rm -rf .libs _libs
+
+distclean-libtool:
+	-rm -f libtool
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+distdir: $(DISTFILES)
+	@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+	list='$(DISTFILES)'; for file in $$list; do \
+	  case $$file in \
+	    $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+	    $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+	  esac; \
+	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+	  dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+	  if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+	    dir="/$$dir"; \
+	    $(mkdir_p) "$(distdir)$$dir"; \
+	  else \
+	    dir=''; \
+	  fi; \
+	  if test -d $$d/$$file; then \
+	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	    fi; \
+	    cp -pR $$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:
+
+distclean-generic:
+	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_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 distclean-libtool
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+	-rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.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-exec install-exec-am \
+	install-info install-info-am install-man install-strip \
+	installcheck installcheck-am installdirs maintainer-clean \
+	maintainer-clean-generic mostlyclean mostlyclean-generic \
+	mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \
+	uninstall-info-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/packages/Linux/RPM/README b/packages/Linux/RPM/README
new file mode 100644
index 0000000..a48ece0
--- /dev/null
+++ b/packages/Linux/RPM/README
@@ -0,0 +1,5 @@
+Author: Daniel (I'm not trustworthy, replace this!)
+
+Paul Marquis's 'make_curl_rpm' script is a fine example on how to automate the
+jobs. You need to fill in your own name and email at least.
+
diff --git a/packages/Linux/RPM/curl-ssl.spec.in b/packages/Linux/RPM/curl-ssl.spec.in
new file mode 100644
index 0000000..7f290ba
--- /dev/null
+++ b/packages/Linux/RPM/curl-ssl.spec.in
@@ -0,0 +1,84 @@
+%define name curl-ssl
+%define tarball curl
+%define version 7.11.0
+%define release 1
+
+%define curlroot %{_builddir}/%{tarball}-%{version}
+
+Summary: get a file from an FTP or HTTP server.
+Name: %{name}
+Version: %{version}
+Release: %{release}
+Copyright: MIT/X derivate
+Vendor: Daniel Stenberg <Daniel.Stenberg@haxx.se>
+Packager: Troy Engel <tengel@sonic.net>
+Group: Utilities/Console
+Source: %{tarball}-%{version}.tar.gz
+URL: http://curl.haxx.se/
+Provides: curl
+Obsoletes: curl
+BuildRoot: %{_tmppath}/%{tarball}-%{version}-root
+Requires: openssl >= 0.9.5
+
+%description
+curl is a client to get documents/files from servers, using any of the
+supported protocols. The command is designed to work without user
+interaction or any kind of interactivity.
+
+curl offers a busload of useful tricks like proxy support, user
+authentication, ftp upload, HTTP post, file transfer resume and more.
+
+%package	devel
+Summary:	The includes, libs, and man pages to develop with libcurl
+Group:		Development/Libraries
+Requires:	openssl-devel >= 0.9.5
+Provides:	curl-devel
+
+%description devel
+libcurl is the core engine of curl; this packages contains all the libs,
+headers, and manual pages to develop applications using libcurl.
+
+%prep
+
+%setup -q -n %{tarball}-%{version}
+
+%build
+cd %{curlroot} && (if [ -f configure.in ]; then mv -f configure.in configure.in.rpm; fi)
+%configure
+cd %{curlroot} && (if [ -f configure.in.rpm ]; then mv -f configure.in.rpm configure.in; fi)
+make
+
+%install
+[ "%{buildroot}" != "/" ] && rm -rf %{buildroot}
+make DESTDIR=%{buildroot} install-strip
+
+%clean
+[ "%{buildroot}" != "/" ] && rm -rf %{buildroot}
+[ "%{curlroot}" != "/" ] && rm -rf %{curlroot}
+
+%post
+/sbin/ldconfig
+
+%postun
+/sbin/ldconfig
+
+%files
+%defattr(-,root,root)
+%attr(0755,root,root) %{_bindir}/curl
+%attr(0644,root,root) %{_mandir}/man1/curl.1*
+%{_libdir}/libcurl.so*
+%{_datadir}/curl/curl-ca-bundle.crt
+%doc CHANGES COPYING README testcurl.sh docs/BUGS docs/SSLCERTS
+%doc docs/CONTRIBUTE docs/FAQ docs/FEATURES docs/HISTORY docs/INSTALL
+%doc docs/KNOWN_BUGS docs/MANUAL docs/RESOURCES docs/THANKS
+%doc docs/TODO docs/VERSIONS docs/TheArtOfHttpScripting tests
+
+%files devel
+%defattr(-,root,root)
+%attr(0755,root,root) %{_bindir}/curl-config
+%attr(0644,root,root) %{_mandir}/man1/curl-config.1*
+%attr(0644,root,root) %{_mandir}/man3/*
+%attr(0644,root,root) %{_includedir}/curl/*
+%{_libdir}/libcurl.a
+%{_libdir}/libcurl.la
+%doc docs/BINDINGS docs/INTERNALS docs/examples/* docs/libcurl-the-guide
diff --git a/packages/Linux/RPM/curl.spec.in b/packages/Linux/RPM/curl.spec.in
new file mode 100644
index 0000000..2382f57
--- /dev/null
+++ b/packages/Linux/RPM/curl.spec.in
@@ -0,0 +1,84 @@
+%define name curl
+%define version @VERSION@
+%define release 1
+%define prefix /usr
+
+%define builddir $RPM_BUILD_DIR/%{name}-%{version}
+
+Summary: get a file from an FTP or HTTP server.
+Name: %{name}
+Version: %{version}
+Release: %{release}
+Copyright: MPL
+Vendor: Daniel Stenberg <Daniel.Stenberg@haxx.se>
+Packager: Loic Dachary <loic@senga.org>
+Group: Utilities/Console
+Source: %{name}-%{version}.tar.gz
+URL: http://curl.haxx.se/
+BuildRoot: /tmp/%{name}-%{version}-root
+
+%description
+curl is a client to get documents/files from servers, using any of the
+supported protocols. The command is designed to work without user
+interaction or any kind of interactivity.
+
+curl offers a busload of useful tricks like proxy support, user
+authentication, ftp upload, HTTP post, file transfer resume and more.
+
+Note: this version is compiled without SSL (https:) support.
+
+%package	devel
+Summary:	The includes, libs, and man pages to develop with libcurl
+Group:		Development/Libraries
+
+%description devel
+libcurl is the core engine of curl; this packages contains all the libs,
+headers, and manual pages to develop applications using libcurl.
+
+%prep
+rm -rf %{builddir}
+
+%setup
+
+%build
+%configure --without-ssl --prefix=%{prefix}
+make
+
+%install
+rm -rf $RPM_BUILD_ROOT
+make DESTDIR=$RPM_BUILD_ROOT install-strip
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+rm -rf %{builddir}
+
+%post
+/sbin/ldconfig
+
+%postun
+/sbin/ldconfig
+
+%files
+%defattr(-,root,root)
+%attr(0755,root,root) %{_bindir}/curl
+%attr(0644,root,root) %{_mandir}/man1/*
+%{prefix}/lib/libcurl.so*
+%doc CHANGES LEGAL MITX.txt MPL-1.1.txt README docs/BUGS
+%doc docs/CONTRIBUTE docs/FAQ docs/FEATURES docs/INSTALL docs/INTERNALS
+%doc docs/LIBCURL docs/MANUAL docs/README* docs/RESOURCES docs/TODO
+%doc docs/TheArtOfHttpScripting
+
+%files devel
+%defattr(-,root,root)
+%attr(0644,root,root) %{_mandir}/man3/*
+%attr(0644,root,root) %{_includedir}/curl/*
+%{prefix}/lib/libcurl.a
+%{prefix}/lib/libcurl.la
+%doc docs/examples/*
+
+%changelog
+* Sun Jan  7 2001 Loic Dachary  <loic@senga.org>
+
+        - use _mandir instead of prefix to locate man pages because
+	  _mandir is not always prefix/man/man?.
+
diff --git a/packages/Linux/RPM/make_curl_rpm b/packages/Linux/RPM/make_curl_rpm
new file mode 100644
index 0000000..544a23b
--- /dev/null
+++ b/packages/Linux/RPM/make_curl_rpm
@@ -0,0 +1,62 @@
+#! /bin/sh
+# script to build curl RPM from src RPM (SSL and non-SSL versions)
+
+# initialize
+top_dir=/usr/src/redhat
+sources_dir=$top_dir/SOURCES
+specs_dir=$top_dir/SPECS
+rpms_dir=$top_dir/RPMS
+arch=`rpm --showrc | awk 'NF == 3 && $2 == "_arch" { print $3 }'`
+
+# fill in your own name and email here
+packager_name="Mr Joe Packager Person"
+packager_email='<Joe@packager.person>'
+
+# make sure we're running as root
+if test `id -u` -ne `id -u root`
+then
+   echo "you must build the RPM as root"
+   exit 1
+fi
+
+# get version and release number
+if test $# -lt 1
+then
+   echo "version number?"
+   read version
+else
+   version=$1
+fi
+
+if test $# -lt 2
+then
+   echo "release number?"
+   read release
+else
+   release=$2
+fi
+
+# build all the files
+targets="curl curl-ssl"
+for target in $targets
+do
+   # make sure src RPM exist
+   src_rpm="$target-$version-$release.src.rpm"
+   if test -f $src_rpm
+   then
+      rpm -ivh $src_rpm
+
+      # replace packager in spec file
+      sed -e 's/^Packager: .*/Packager: $packager_name $packager_email/' $specs_dir/$target.spec > $specs_dir/$target-$version-$arch.spec
+
+      # build it
+      if ! rpm -ba $specs_dir/$target-$version-$arch.spec
+      then
+         echo "error building $target for $arch -- check output above"
+      fi
+
+      echo "$target rpm is now in $rpms_dir/$arch"
+   else
+      echo $src_rpm does not exist
+   fi
+done
diff --git a/packages/Makefile.am b/packages/Makefile.am
new file mode 100644
index 0000000..e211c0a
--- /dev/null
+++ b/packages/Makefile.am
@@ -0,0 +1,32 @@
+SUBDIRS = Win32 Linux Solaris EPM AIX vms
+
+EXTRA_DIST = README 			\
+	DOS/README 			\
+	DOS/common.dj 			\
+	NetWare/get_ver.awk 		\
+	OS400/README.OS400 		\
+	OS400/ccsidcurl.c 		\
+	OS400/ccsidcurl.h 		\
+	OS400/curl.inc.in 		\
+	OS400/initscript.sh 		\
+	OS400/make-include.sh 		\
+	OS400/make-lib.sh 		\
+	OS400/make-src.sh 		\
+	OS400/make-tests.sh 		\
+	OS400/makefile.sh 		\
+	OS400/os400sys.c 		\
+	OS400/os400sys.h 		\
+	Symbian/bwins/libcurlu.def 	\
+	Symbian/eabi/libcurlu.def 	\
+	Symbian/group/bld.inf 		\
+	Symbian/group/curl.iby 		\
+	Symbian/group/curl.mmp 		\
+	Symbian/group/curl.pkg 		\
+	Symbian/group/libcurl.iby 	\
+	Symbian/group/libcurl.mmp 	\
+	Symbian/group/libcurl.pkg 	\
+	Symbian/readme.txt 		\
+	TPF/curl.mak 			\
+	TPF/maketpf.env_curl 		\
+	TPF/maketpf.env_curllib
+
diff --git a/packages/Makefile.in b/packages/Makefile.in
new file mode 100644
index 0000000..9114470
--- /dev/null
+++ b/packages/Makefile.in
@@ -0,0 +1,593 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = packages
+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 = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
+	$(top_builddir)/src/curl_config.h \
+	$(top_builddir)/include/curl/curlbuild.h
+CONFIG_CLEAN_FILES =
+SOURCES =
+DIST_SOURCES =
+RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
+	html-recursive info-recursive install-data-recursive \
+	install-exec-recursive install-info-recursive \
+	install-recursive installcheck-recursive installdirs-recursive \
+	pdf-recursive ps-recursive uninstall-info-recursive \
+	uninstall-recursive
+ETAGS = etags
+CTAGS = ctags
+DIST_SUBDIRS = $(SUBDIRS)
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILD_LIBHOSTNAME_FALSE = @BUILD_LIBHOSTNAME_FALSE@
+BUILD_LIBHOSTNAME_TRUE = @BUILD_LIBHOSTNAME_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CONFIGURE_OPTIONS = @CONFIGURE_OPTIONS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CROSSCOMPILING_FALSE = @CROSSCOMPILING_FALSE@
+CROSSCOMPILING_TRUE = @CROSSCOMPILING_TRUE@
+CURLDEBUG_FALSE = @CURLDEBUG_FALSE@
+CURLDEBUG_TRUE = @CURLDEBUG_TRUE@
+CURL_CA_BUNDLE = @CURL_CA_BUNDLE@
+CURL_CFLAG_EXTRAS = @CURL_CFLAG_EXTRAS@
+CURL_DISABLE_DICT = @CURL_DISABLE_DICT@
+CURL_DISABLE_FILE = @CURL_DISABLE_FILE@
+CURL_DISABLE_FTP = @CURL_DISABLE_FTP@
+CURL_DISABLE_GOPHER = @CURL_DISABLE_GOPHER@
+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@
+CURL_NETWORK_LIBS = @CURL_NETWORK_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@
+ENABLE_SHARED = @ENABLE_SHARED@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
+HAVE_LIBZ = @HAVE_LIBZ@
+HAVE_LIBZ_FALSE = @HAVE_LIBZ_FALSE@
+HAVE_LIBZ_TRUE = @HAVE_LIBZ_TRUE@
+HAVE_PK11_CREATEGENERICOBJECT = @HAVE_PK11_CREATEGENERICOBJECT@
+IDN_ENABLED = @IDN_ENABLED@
+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@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+MANOPT = @MANOPT@
+MIMPURE_FALSE = @MIMPURE_FALSE@
+MIMPURE_TRUE = @MIMPURE_TRUE@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NO_UNDEFINED_FALSE = @NO_UNDEFINED_FALSE@
+NO_UNDEFINED_TRUE = @NO_UNDEFINED_TRUE@
+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@
+SONAME_BUMP_FALSE = @SONAME_BUMP_FALSE@
+SONAME_BUMP_TRUE = @SONAME_BUMP_TRUE@
+SSL_ENABLED = @SSL_ENABLED@
+STATICLIB_FALSE = @STATICLIB_FALSE@
+STATICLIB_TRUE = @STATICLIB_TRUE@
+STRIP = @STRIP@
+SUPPORT_FEATURES = @SUPPORT_FEATURES@
+SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
+TEST_SERVER_LIBS = @TEST_SERVER_LIBS@
+USE_ARES = @USE_ARES@
+USE_EMBEDDED_ARES_FALSE = @USE_EMBEDDED_ARES_FALSE@
+USE_EMBEDDED_ARES_TRUE = @USE_EMBEDDED_ARES_TRUE@
+USE_GNUTLS = @USE_GNUTLS@
+USE_LIBRTMP = @USE_LIBRTMP@
+USE_LIBSSH2 = @USE_LIBSSH2@
+USE_MANUAL_FALSE = @USE_MANUAL_FALSE@
+USE_MANUAL_TRUE = @USE_MANUAL_TRUE@
+USE_NSS = @USE_NSS@
+USE_OPENLDAP = @USE_OPENLDAP@
+USE_POLARSSL = @USE_POLARSSL@
+USE_SSLEAY = @USE_SSLEAY@
+USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
+VERSION = @VERSION@
+VERSIONNUM = @VERSIONNUM@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+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@
+lt_ECHO = @lt_ECHO@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+SUBDIRS = Win32 Linux Solaris EPM AIX vms
+EXTRA_DIST = README 			\
+	DOS/README 			\
+	DOS/common.dj 			\
+	NetWare/get_ver.awk 		\
+	OS400/README.OS400 		\
+	OS400/ccsidcurl.c 		\
+	OS400/ccsidcurl.h 		\
+	OS400/curl.inc.in 		\
+	OS400/initscript.sh 		\
+	OS400/make-include.sh 		\
+	OS400/make-lib.sh 		\
+	OS400/make-src.sh 		\
+	OS400/make-tests.sh 		\
+	OS400/makefile.sh 		\
+	OS400/os400sys.c 		\
+	OS400/os400sys.h 		\
+	Symbian/bwins/libcurlu.def 	\
+	Symbian/eabi/libcurlu.def 	\
+	Symbian/group/bld.inf 		\
+	Symbian/group/curl.iby 		\
+	Symbian/group/curl.mmp 		\
+	Symbian/group/curl.pkg 		\
+	Symbian/group/libcurl.iby 	\
+	Symbian/group/libcurl.mmp 	\
+	Symbian/group/libcurl.pkg 	\
+	Symbian/readme.txt 		\
+	TPF/curl.mak 			\
+	TPF/maketpf.env_curl 		\
+	TPF/maketpf.env_curllib
+
+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 \
+		&& exit 0; \
+	      exit 1;; \
+	  esac; \
+	done; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  packages/Makefile'; \
+	cd $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign  packages/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
+
+mostlyclean-libtool:
+	-rm -f *.lo
+
+clean-libtool:
+	-rm -rf .libs _libs
+
+distclean-libtool:
+	-rm -f libtool
+uninstall-info-am:
+
+# 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):
+	@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; \
+	  (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"
+
+mostlyclean-recursive clean-recursive distclean-recursive \
+maintainer-clean-recursive:
+	@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; \
+	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  || eval $$failcom; \
+	done && test -z "$$fail"
+tags-recursive:
+	list='$(SUBDIRS)'; for subdir in $$list; do \
+	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+	done
+ctags-recursive:
+	list='$(SUBDIRS)'; for subdir in $$list; do \
+	  test "$$subdir" = . || (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; } \
+	       END { for (i in files) print i; }'`; \
+	mkid -fID $$unique
+tags: TAGS
+
+TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
+		$(TAGS_FILES) $(LISP)
+	tags=; \
+	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 || \
+	      tags="$$tags $$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; } \
+	       END { for (i in files) print i; }'`; \
+	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+	  test -n "$$unique" || unique=$$empty_fix; \
+	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	    $$tags $$unique; \
+	fi
+ctags: CTAGS
+CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
+		$(TAGS_FILES) $(LISP)
+	tags=; \
+	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; } \
+	       END { for (i in files) print i; }'`; \
+	test -z "$(CTAGS_ARGS)$$tags$$unique" \
+	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+	     $$tags $$unique
+
+GTAGS:
+	here=`$(am__cd) $(top_builddir) && pwd` \
+	  && cd $(top_srcdir) \
+	  && gtags -i $(GTAGS_ARGS) $$here
+
+distclean-tags:
+	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+distdir: $(DISTFILES)
+	$(mkdir_p) $(distdir)/DOS $(distdir)/NetWare $(distdir)/OS400 $(distdir)/Symbian $(distdir)/Symbian/bwins $(distdir)/Symbian/eabi $(distdir)/Symbian/group $(distdir)/TPF
+	@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+	list='$(DISTFILES)'; for file in $$list; do \
+	  case $$file in \
+	    $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+	    $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+	  esac; \
+	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+	  dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+	  if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+	    dir="/$$dir"; \
+	    $(mkdir_p) "$(distdir)$$dir"; \
+	  else \
+	    dir=''; \
+	  fi; \
+	  if test -d $$d/$$file; then \
+	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	    fi; \
+	    cp -pR $$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; \
+	    distdir=`$(am__cd) $(distdir) && pwd`; \
+	    top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
+	    (cd $$subdir && \
+	      $(MAKE) $(AM_MAKEFLAGS) \
+	        top_distdir="$$top_distdir" \
+	        distdir="$$distdir/$$subdir" \
+	        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)
+
+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-libtool \
+	distclean-tags
+
+dvi: dvi-recursive
+
+dvi-am:
+
+html: html-recursive
+
+info: info-recursive
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-recursive
+
+install-man:
+
+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: uninstall-info-am
+
+uninstall-info: uninstall-info-recursive
+
+.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am \
+	clean clean-generic clean-libtool clean-recursive ctags \
+	ctags-recursive distclean distclean-generic distclean-libtool \
+	distclean-recursive distclean-tags distdir dvi dvi-am html \
+	html-am info info-am install install-am install-data \
+	install-data-am install-exec install-exec-am install-info \
+	install-info-am install-man install-strip installcheck \
+	installcheck-am installdirs installdirs-am maintainer-clean \
+	maintainer-clean-generic maintainer-clean-recursive \
+	mostlyclean mostlyclean-generic mostlyclean-libtool \
+	mostlyclean-recursive pdf pdf-am ps ps-am tags tags-recursive \
+	uninstall uninstall-am uninstall-info-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/packages/NetWare/get_ver.awk b/packages/NetWare/get_ver.awk
new file mode 100644
index 0000000..2f3b308
--- /dev/null
+++ b/packages/NetWare/get_ver.awk
@@ -0,0 +1,75 @@
+# ***************************************************************************
+# *                                  _   _ ____  _
+# *  Project                     ___| | | |  _ \| |
+# *                             / __| | | | |_) | |
+# *                            | (__| |_| |  _ <| |___
+# *                             \___|\___/|_| \_\_____|
+# *
+# * Copyright (C) 1998 - 2008, Daniel Stenberg, <daniel@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.
+# *
+# ***************************************************************************
+# awk script which fetches curl / 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], /curlver.h/)) {
+    while ((getline < ARGV[1]) > 0) {
+      if (match ($0, /^#define LIBCURL_COPYRIGHT "[^"]+"$/)) {
+        libcurl_copyright_str = substr($0, 28, length($0)-28);
+      }
+      else if (match ($0, /^#define LIBCURL_VERSION "[^"]+"$/)) {
+        libcurl_ver_str = substr($3, 2, length($3)-2);
+      }
+      else if (match ($0, /^#define LIBCURL_VERSION_MAJOR [0-9]+$/)) {
+        libcurl_ver_major = substr($3, 1, length($3));
+      }
+      else if (match ($0, /^#define LIBCURL_VERSION_MINOR [0-9]+$/)) {
+        libcurl_ver_minor = substr($3, 1, length($3));
+      }
+      else if (match ($0, /^#define LIBCURL_VERSION_PATCH [0-9]+$/)) {
+        libcurl_ver_patch = substr($3, 1, length($3));
+      }
+    }
+    libcurl_ver = libcurl_ver_major "," libcurl_ver_minor "," libcurl_ver_patch;
+    print "LIBCURL_VERSION = " libcurl_ver "";
+    print "LIBCURL_VERSION_STR = " libcurl_ver_str "";
+    print "LIBCURL_COPYRIGHT_STR = " libcurl_copyright_str "";
+  }
+  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/packages/OS400/README.OS400 b/packages/OS400/README.OS400
new file mode 100644
index 0000000..746bba8
--- /dev/null
+++ b/packages/OS400/README.OS400
@@ -0,0 +1,262 @@
+
+Implementation notes:
+
+  This is a true OS/400 implementation, not a PASE implementation (for PASE,
+use AIX implementation).
+
+  The biggest problem with OS/400 is EBCDIC. Libcurl implements an internal
+conversion mechanism, but it has been designed for computers that have a
+single native character set. OS/400 default native character set varies
+depending on the country for which it has been localized. And more, a job
+may dynamically alter its "native" character set.
+  Several characters that do not have fixed code in EBCDIC variants are
+used in libcurl strings. As a consequence, using the existing conversion
+mechanism would have lead in a localized binary library - not portable across
+countries.
+  For this reason, and because libcurl was originally designed for ASCII based
+operating systems, the current OS/400 implementation uses ASCII as internal
+character set. This has been accomplished using the QADRT library and
+include files, a C and system procedures ASCII wrapper library. See IBM QADRT
+description for more information.
+  This then results in libcurl being an ASCII library: any function string
+argument is taken/returned in ASCII and a C/C++ calling program built around
+QADRT may use libcurl functions as on any other platform.
+  QADRT does not define ASCII wrappers for all C/system procedures: the
+OS/400 configuration header file and an additional module (os400sys.c) define
+some more of them, that are used by libcurl and that QADRT left out.
+  To support all the different variants of EBCDIC, non-standard wrapper
+procedures have been added to libcurl on OS/400: they provide an additional
+CCSID (numeric Coded Character Set ID specific to OS/400) parameter for each
+string argument. String values passed to callback procedures are NOT converted,
+so text gathered this way is (probably !) ASCII.
+
+  Another OS/400 problem comes from the fact that the last fixed argument of a
+vararg procedure may not be of type char, unsigned char, short or unsigned
+short. Enums that are internally implemented by the C compiler as one of these
+types are also forbidden. Libcurl uses enums as vararg procedure tagfields...
+Happily, there is a pragma forcing enums to type "int". The original libcurl
+header files are thus altered during build process to use this pragma, in
+order to force libcurl enums of being type int (the pragma disposition in use
+before inclusion is restored before resuming the including unit compilation).
+
+  Three SSL implementations were present in libcurl. Nevertheless, none of them
+is available on OS/400. To support SSL on OS/400, a fourth implementation has
+been added (qssl.[ch]). There is no way to have different certificate stores
+for CAs and for personal/application certificates/key. More, the SSL context
+may be defined as an application identifier in the main certificate store,
+or as a keyring file. As a consequence, the meaning of some fields have been
+slightly altered:
+_ The "certificate identifier" is taken from CURLOPT_SSLCERT if defined, else
+from CURLOPT_CAINFO.
+_ The certificate identifier is then used as an application identifier in the
+main certificate store. If successful, this context is used.
+_ If the previous step failed, the certificate identifier is used as the file
+name of a keyring. CURLOPT_KEYPASSWD is used here as the keyring password.
+_ The default ca-bundle (CURLOPT_CAINFO) is set to the main certificate store's
+keyring file name: this allows to use the system global CAs by default. (In that
+case, the keyring password is safely recovered from the system... IBM dixit!)
+
+  Non-standard EBCDIC wrapper prototypes are defined in an additional header
+file: ccsidcurl.h. These should be self-explanatory to an OS/400-aware
+designer. CCSID 0 can be used to select the current job's CCSID.
+  Wrapper procedures with variable arguments are described below:
+
+_ curl_easy_setopt_ccsid()
+  Variable arguments are a string pointer and a CCSID (unsigned int) for
+options:
+        CURLOPT_CAINFO
+        CURLOPT_CAPATH
+        CURLOPT_COOKIE
+        CURLOPT_COOKIEFILE
+        CURLOPT_COOKIEJAR
+        CURLOPT_COOKIELIST
+        CURLOPT_CUSTOMREQUEST
+        CURLOPT_EGDSOCKET
+        CURLOPT_ENCODING
+        CURLOPT_FTPPORT
+        CURLOPT_FTP_ACCOUNT
+        CURLOPT_FTP_ALTERNATIVE_TO_USER
+        CURLOPT_INTERFACE
+        CURLOPT_KEYPASSWD
+        CURLOPT_KRBLEVEL
+        CURLOPT_NETRC_FILE
+        CURLOPT_COPYPOSTFIELDS
+        CURLOPT_PROXY
+        CURLOPT_PROXYUSERPWD
+        CURLOPT_RANDOM_FILE
+        CURLOPT_RANGE
+        CURLOPT_REFERER
+        CURLOPT_SSH_PRIVATE_KEYFILE
+        CURLOPT_SSH_PUBLIC_KEYFILE
+        CURLOPT_SSLCERT
+        CURLOPT_SSLCERTTYPE
+        CURLOPT_SSLENGINE
+        CURLOPT_SSLKEY
+        CURLOPT_SSLKEYTYPE
+        CURLOPT_SSL_CIPHER_LIST
+        CURLOPT_URL
+        CURLOPT_USERAGENT
+        CURLOPT_USERPWD
+        CURLOPT_SSH_HOST_PUBLIC_KEY_MD5
+        CURLOPT_CRLFILE
+        CURLOPT_ISSUERCERT
+        CURLOPT_USERNAME
+        CURLOPT_PASSWORD
+        CURLOPT_PROXYUSERNAME
+        CURLOPT_PROXYPASSWORD
+        CURLOPT_NOPROXY
+        CURLOPT_RTSP_SESSION_UID
+        CURLOPT_RTSP_STREAM_URI
+        CURLOPT_RTSP_TRANSPORT
+        CURLOPT_SOCKS5_GSSAPI_SERVICE
+        CURLOPT_MAIL_FROM
+  Else it is the same as for curl_easy_setopt().
+  Note that CURLOPT_ERRORBUFFER is not in the list above, since it gives the
+address of an (empty) character buffer, not the address of a string.
+CURLOPT_POSTFIELDS stores the address of static binary data (of type void *) and
+thus is not converted. If CURLOPT_COPYPOSTFIELDS is issued after
+CURLOPT_POSTFIELDSIZE != -1, the data size is adjusted according to the
+CCSID conversion result length.
+
+_ curl_formadd_ccsid()
+  In the variable argument list, string pointers should be followed by a (long)
+CCSID for the following options:
+        CURLFORM_FILENAME
+        CURLFORM_CONTENTTYPE
+        CURLFORM_BUFFER
+        CURLFORM_FILE
+        CURLFORM_FILECONTENT
+        CURLFORM_COPYCONTENTS
+        CURLFORM_COPYNAME
+        CURLFORM_PTRNAME
+  If taken from an argument array, an additional array entry must follow each
+entry containing one of the above option. This additional entry holds the CCSID
+in its value field, and the option field is meaningless.
+  It is not possible to have a string pointer and its CCSID across a function
+parameter/array boundary.
+  Please note that CURLFORM_PTRCONTENTS and CURLFORM_BUFFERPTR are considered
+unconvertible strings and thus are NOT followed by a CCSID.
+
+_ curl_easy_getinfo_ccsid
+  The following options are followed by a 'char * *' and a CCSID. Unlike
+curl_easy_getinfo(), the value returned in the pointer should be freed after
+use:
+        CURLINFO_EFFECTIVE_URL
+        CURLINFO_CONTENT_TYPE
+        CURLINFO_FTP_ENTRY_PATH
+  Other options are processed like in curl_easy_getinfo().
+
+  Standard compilation environment does support neither autotools nor make;
+in fact, very few common utilities are available. As a consequence, the
+config-os400.h has been coded manually and the compilation scripts are
+a set of shell scripts stored in subdirectory packages/OS400.
+
+  The "curl" command and the test environment are currently not supported on
+OS/400.
+
+
+Protocols currently implemented on OS/400:
+_ HTTP
+_ HTTPS
+_ FTP
+_ FTPS
+_ FTP with secure transmission.
+_ LDAP
+_ DICT
+_ TELNET
+
+
+
+Compiling on OS/400:
+
+  These instructions targets people who knows about OS/400, compiling, IFS and
+archive extraction. Do not ask questions about these subjects if you're not
+familiar with.
+
+_ As a prerequisite, QADRT development environment must be installed.
+_ Install the curl source directory in IFS.
+_ Enter shell (QSH)
+_ Change current directory to the curl installation directory
+_ Change current directory to ./packages/OS400
+_ Edit file iniscript.sh. You may want to change tunable configuration
+  parameters, like debug info generation, optimisation level, listing option,
+  target library, etc.
+_ Copy any file in the current directory to makelog (i.e.:
+  cp initscript.sh makelog): this is intended to create the makelog file with
+  an ASCII CCSID!
+_ Enter the command "sh makefile.sh > makelog 2>&1'
+_ Examine the makelog file to check for compilation errors.
+
+  Leaving file initscript.sh unchanged, this will produce the following OS/400
+objects:
+_ Library CURL. All other objects will be stored in this library.
+_ Modules for all libcurl units.
+_ Binding directory CURL_A, to be used at calling program link time for
+  statically binding the modules (specify BNDSRVPGM(QADRTTS QGLDCLNT QGLDBRDR)
+  when creating a program using CURL_A).
+_ Service program CURL.<soname>, where <soname> is extracted from the
+  lib/Makefile.am VERSION variable. To be used at calling program run-time
+  when this program has dynamically bound curl at link time.
+_ Binding directory CURL. To be used to dynamically bind libcurl when linking a
+  calling program.
+_ Source file H. It contains all the include members needed to compile a C/C++
+  module using libcurl, and an ILE/RPG /copy member for support in this
+  language.
+_ Standard C/C++ libcurl include members in file H.
+_ CCSIDCURL member in file H. This defines the non-standard EBCDIC wrappers for
+  C and C++.
+_ CURL.INC member in file H. This defines everything needed by an ILE/RPG
+  program using libcurl.
+_ LIBxxx modules and programs. Although the test environment is not supported
+  on OS/400, the libcurl test programs are compiled for manual tests.
+
+
+
+Special programming consideration:
+
+QADRT being used, the following points must be considered:
+_ If static binding is used, service program QADRTTS must be linked too.
+_ The EBCDIC CCSID used by QADRT is 37 by default, NOT THE JOB'S CCSID. If
+  another EBCDIC CCSID is required, it must be set via a locale through a call
+  to setlocale_a (QADRT's setlocale() ASCII wrapper) with category LC_ALL or
+  LC_CTYPE, or by setting environment variable QADRT_ENV_LOCALE to the locale
+  object path before executing the program.
+_ Do not use original source include files unless you know what you are doing.
+  Use the installed members instead (in /QSYS.LIB/CURL.LIB/H.FILE).
+
+
+
+ILE/RPG support:
+
+  Since 95% of the OS/400 programmers use ILE/RPG exclusively, a definition
+  /COPY member is provided for this language. To include all libcurl
+  definitions in an ILE/RPG module, line
+
+     h bnddir('CURL/CURL')
+
+must figure in the program header, and line
+
+     d/copy curl/h,curl.inc
+
+in the global data section of the module's source code.
+
+  No vararg procedure support exists in ILE/RPG: for this reason, the following
+considerations apply:
+_ Procedures curl_easy_setopt_long(), curl_easy_setopt_object(),
+  curl_easy_setopt_function() and curl_easy_setopt_offset() are all alias
+  prototypes to curl_easy_setopt(), but with different parameter lists.
+_ Procedures curl_easy_getinfo_string(), curl_easy_getinfo_long(),
+  curl_easy_getinfo_double() and curl_easy_getinfo_slist() are all alias
+  prototypes to curl_easy_getinfo(), but with different parameter lists.
+_ Procedures curl_multi_setopt_long(), curl_multi_setopt_object(),
+  curl_multi_setopt_function() and curl_multi_setopt_offset() are all alias
+  prototypes to curl_multi_setopt(), but with different parameter lists.
+_ The prototype of procedure curl_formadd() allows specifying a pointer option
+  and the CURLFORM_END option. This makes possible to use an option array
+  without any additional definition. If some specific incompatible argument
+  list is used in the ILE/RPG program, the latter must define a specialised
+  alias. The same applies to curl_formadd_ccsid() too.
+
+  Since RPG cannot cast a long to a pointer, procedure curl_form_long_value()
+is provided for that purpose: this allows storing a long value in the curl_forms
+array.
diff --git a/packages/OS400/ccsidcurl.c b/packages/OS400/ccsidcurl.c
new file mode 100644
index 0000000..ad67e1c
--- /dev/null
+++ b/packages/OS400/ccsidcurl.c
@@ -0,0 +1,1186 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel@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.
+ *
+ *
+ ***************************************************************************/
+
+/* CCSID API wrappers for OS/400. */
+
+#include <iconv.h>
+#include <string.h>
+#include <stdlib.h>
+#include <errno.h>
+#include <stdarg.h>
+
+#pragma enum(int)
+
+#include "curl.h"
+#include "mprintf.h"
+#include "urldata.h"
+#include "url.h"
+#include "getinfo.h"
+#include "ccsidcurl.h"
+
+#include "os400sys.h"
+
+#ifndef SIZE_MAX
+#define SIZE_MAX        ((size_t) ~0)   /* Is unsigned on OS/400. */
+#endif
+
+
+#define ASCII_CCSID     819     /* Use ISO-8859-1 as ASCII. */
+#define NOCONV_CCSID    65535   /* No conversion. */
+#define ICONV_ID_SIZE   32      /* Size of iconv_open() code identifier. */
+#define ICONV_OPEN_ERROR(t)     ((t).return_value == -1)
+
+#define ALLOC_GRANULE   8       /* Alloc. granule for curl_formadd_ccsid(). */
+
+
+static void
+makeOS400IconvCode(char buf[ICONV_ID_SIZE], unsigned int ccsid)
+
+{
+  /**
+  *** Convert a CCSID to the corresponding IBM iconv_open() character
+  ***  code identifier.
+  ***  This code is specific to the OS400 implementation of the iconv library.
+  ***  CCSID 65535 (no conversion) is replaced by the ASCII CCSID.
+  ***  CCSID 0 is interpreted by the OS400 as the job's CCSID.
+  **/
+
+  ccsid &= 0xFFFF;
+
+  if (ccsid == NOCONV_CCSID)
+    ccsid = ASCII_CCSID;
+
+  memset(buf, 0, ICONV_ID_SIZE);
+  curl_msprintf(buf, "IBMCCSID%05u0000000", ccsid);
+}
+
+
+static iconv_t
+iconv_open_CCSID(unsigned int ccsidout, unsigned int ccsidin, unsigned int cstr)
+
+{
+  char fromcode[ICONV_ID_SIZE];
+  char tocode[ICONV_ID_SIZE];
+
+  /**
+  ***  Like iconv_open(), but character codes are given as CCSIDs.
+  ***  If `cstr' is non-zero, conversion is set up to stop whenever a
+  ***   null character is encountered.
+  ***  See iconv_open() IBM description in "National Language Support API".
+  **/
+
+  makeOS400IconvCode(fromcode, ccsidin);
+  makeOS400IconvCode(tocode, ccsidout);
+  memset(tocode + 13, 0, sizeof tocode - 13);   /* Dest. code id format. */
+
+  if (cstr)
+    fromcode[18] = '1';                         /* Set null-terminator flag. */
+
+  return iconv_open(tocode, fromcode);
+}
+
+
+static int
+convert(char * d, size_t dlen, int dccsid,
+        const char * s, int slen, int sccsid)
+
+{
+  int i;
+  iconv_t cd;
+  size_t lslen;
+
+  /**
+  ***  Convert `sccsid'-coded `slen'-data bytes at `s' into `dccsid'-coded
+  ***   data stored in the `dlen'-byte buffer at `d'.
+  ***  If `slen' < 0, source string is null-terminated.
+  ***  CCSID 65535 (no conversion) is replaced by the ASCII CCSID.
+  ***  Return the converted destination byte count, or -1 if error.
+  **/
+
+  if (sccsid == 65535)
+    sccsid = ASCII_CCSID;
+
+  if (dccsid == 65535)
+    dccsid = ASCII_CCSID;
+
+  if (sccsid == dccsid) {
+    lslen = slen >= 0? slen: strlen(s) + 1;
+    i = lslen < dlen? lslen: dlen;
+
+    if (s != d && i > 0)
+      memcpy(d, s, i);
+
+    return i;
+    }
+
+  if (slen < 0) {
+    lslen = 0;
+    cd = iconv_open_CCSID(dccsid, sccsid, 1);
+    }
+  else {
+    lslen = (size_t) slen;
+    cd = iconv_open_CCSID(dccsid, sccsid, 0);
+    }
+
+  if (ICONV_OPEN_ERROR(cd))
+    return -1;
+
+  i = dlen;
+
+  if ((int) iconv(cd, (char * *) &s, &lslen, &d, &dlen) < 0)
+    i = -1;
+  else
+    i -= dlen;
+
+  iconv_close(cd);
+  return i;
+}
+
+
+static char *
+dynconvert(int dccsid, const char * s, int slen, int sccsid)
+
+{
+  char * d;
+  char * cp;
+  size_t dlen;
+  int l;
+  int l2;
+  static const char nullbyte = 0;
+
+  /* Like convert, but the destination is allocated and returned. */
+
+  dlen = (size_t) (slen < 0? strlen(s): slen) + 1;
+  dlen *= MAX_CONV_EXPANSION;           /* Allow some expansion. */
+  d = malloc(dlen);
+
+  if (!d)
+    return (char *) NULL;
+
+  l = convert(d, dlen, dccsid, s, slen, sccsid);
+
+  if (l < 0) {
+    free(d);
+    return (char *) NULL;
+    }
+
+  if (slen < 0) {
+    /* Need to null-terminate even when source length is given.
+       Since destination code size is unknown, use a conversion to generate
+       terminator. */
+
+    l2 = convert(d + l, dlen - l, dccsid, &nullbyte, -1, ASCII_CCSID);
+
+    if (l2 < 0) {
+      free(d);
+      return (char *) NULL;
+      }
+
+    l += l2;
+    }
+
+  if ((size_t) l < dlen) {
+    cp = realloc(d, l);         /* Shorten to minimum needed. */
+
+    if (cp)
+      d = cp;
+    }
+
+  return d;
+}
+
+
+char *
+curl_version_ccsid(unsigned int ccsid)
+
+{
+  int i;
+  char * aversion;
+  char * eversion;
+
+  aversion = curl_version();
+
+  if (!aversion)
+    return aversion;
+
+  i = strlen(aversion) + 1;
+  i *= MAX_CONV_EXPANSION;
+
+  if (!(eversion = Curl_thread_buffer(LK_CURL_VERSION, i)))
+    return (char *) NULL;
+
+  if (convert(eversion, i, ccsid, aversion, -1, ASCII_CCSID) < 0)
+    return (char *) NULL;
+
+  return eversion;
+}
+
+
+char *
+curl_easy_escape_ccsid(CURL * handle, const char * string, int length,
+                       unsigned int sccsid, unsigned int dccsid)
+
+{
+  char * s;
+  char * d;
+
+  if (!string) {
+    errno = EINVAL;
+    return (char *) NULL;
+    }
+
+  s = dynconvert(ASCII_CCSID, s, length? length: -1, sccsid);
+
+  if (!s)
+    return (char *) NULL;
+
+  d = curl_easy_escape(handle, s, 0);
+  free(s);
+
+  if (!d)
+    return (char *) NULL;
+
+  s = dynconvert(dccsid, d, -1, ASCII_CCSID);
+  free(d);
+  return s;
+}
+
+
+char *
+curl_easy_unescape_ccsid(CURL * handle, const char * string, int length,
+                         int * outlength,
+                         unsigned int sccsid, unsigned int dccsid)
+
+{
+  char * s;
+  char * d;
+
+  if (!string) {
+    errno = EINVAL;
+    return (char *) NULL;
+    }
+
+  s = dynconvert(ASCII_CCSID, s, length? length: -1, sccsid);
+
+  if (!s)
+    return (char *) NULL;
+
+  d = curl_easy_unescape(handle, s, 0, outlength);
+  free(s);
+
+  if (!d)
+    return (char *) NULL;
+
+  s = dynconvert(dccsid, d, -1, ASCII_CCSID);
+  free(d);
+
+  if (s && outlength)
+    *outlength = strlen(s);
+
+  return s;
+}
+
+
+struct curl_slist *
+curl_slist_append_ccsid(struct curl_slist * list,
+                        const char * data, unsigned int ccsid)
+
+{
+  char * s;
+
+  s = (char *) NULL;
+
+  if (!data)
+    return curl_slist_append(list, data);
+
+  s = dynconvert(ASCII_CCSID, data, -1, ccsid);
+
+  if (!s)
+    return (struct curl_slist *) NULL;
+
+  list = curl_slist_append(list, s);
+  free(s);
+  return list;
+}
+
+
+time_t
+curl_getdate_ccsid(const char * p, const time_t * unused, unsigned int ccsid)
+
+{
+  char * s;
+  time_t t;
+
+  if (!p)
+    return curl_getdate(p, unused);
+
+  s = dynconvert(ASCII_CCSID, p, -1, ccsid);
+
+  if (!s)
+    return (time_t) -1;
+
+  t = curl_getdate(s, unused);
+  free(s);
+  return t;
+}
+
+
+static int
+convert_version_info_string(const char * * stringp,
+                            char * * bufp, int * left, unsigned int ccsid)
+
+{
+  int l;
+
+  /* Helper for curl_version_info_ccsid(): convert a string if defined.
+     Result is stored in the `*left'-byte buffer at `*bufp'.
+     `*bufp' and `*left' are updated accordingly.
+     Return 0 if ok, else -1. */
+
+  if (*stringp) {
+    l = convert(*bufp, *left, ccsid, *stringp, -1, ASCII_CCSID);
+
+    if (l <= 0)
+      return -1;
+
+    *stringp = *bufp;
+    *bufp += l;
+    *left -= l;
+    }
+
+  return 0;
+}
+
+
+curl_version_info_data *
+curl_version_info_ccsid(CURLversion stamp, unsigned int ccsid)
+
+{
+  curl_version_info_data * p;
+  char * cp;
+  int n;
+  int nproto;
+  int i;
+  curl_version_info_data * id;
+
+  /* The assertion below is possible, because although the second operand
+     is an enum member, the first is a #define. In that case, the OS/400 C
+     compiler seems to compare string values after substitution. */
+
+#if CURLVERSION_NOW != CURLVERSION_FOURTH
+#error curl_version_info_data structure has changed: upgrade this procedure too.
+#endif
+
+  /* If caller has been compiled with a new version, error. */
+
+  if (stamp > CURLVERSION_NOW)
+    return (curl_version_info_data *) NULL;
+
+  p = curl_version_info(stamp);
+
+  if (!p)
+    return p;
+
+  /* Measure thread space needed. */
+
+  n = 0;
+  nproto = 0;
+
+  if (p->protocols) {
+    while (p->protocols[nproto])
+      n += strlen(p->protocols[nproto++]);
+
+    n += nproto++;
+    }
+
+  if (p->version)
+    n += strlen(p->version) + 1;
+
+  if (p->host)
+    n += strlen(p->host) + 1;
+
+  if (p->ssl_version)
+    n += strlen(p->ssl_version) + 1;
+
+  if (p->libz_version)
+    n += strlen(p->libz_version) + 1;
+
+  if (p->ares)
+    n += strlen(p->ares) + 1;
+
+  if (p->libidn)
+    n += strlen(p->libidn) + 1;
+
+  if (p->libssh_version)
+    n += strlen(p->libssh_version) + 1;
+
+  /* Allocate thread space. */
+
+  n *= MAX_CONV_EXPANSION;
+
+  if (nproto)
+    n += nproto * sizeof(const char *);
+
+  cp = Curl_thread_buffer(LK_VERSION_INFO_DATA, n);
+  id = (curl_version_info_data *) Curl_thread_buffer(LK_VERSION_INFO,
+                                                     sizeof *id);
+
+  if (!id || !cp)
+    return (curl_version_info_data *) NULL;
+
+  /* Copy data and convert strings. */
+
+  memcpy((char *) id, (char *) p, sizeof *p);
+
+  if (id->protocols) {
+    id->protocols = (const char * const *) cp;
+    i = nproto * sizeof id->protocols[0];
+    memcpy(cp, (char *) p->protocols, i);
+    cp += i;
+    n -= i;
+
+    for (i = 0; id->protocols[i]; i++)
+      if (convert_version_info_string(((const char * *) id->protocols) + i,
+                                      &cp, &n, ccsid))
+        return (curl_version_info_data *) NULL;
+    }
+
+  if (convert_version_info_string(&id->version, &cp, &n, ccsid))
+    return (curl_version_info_data *) NULL;
+
+  if (convert_version_info_string(&id->host, &cp, &n, ccsid))
+    return (curl_version_info_data *) NULL;
+
+  if (convert_version_info_string(&id->ssl_version, &cp, &n, ccsid))
+    return (curl_version_info_data *) NULL;
+
+  if (convert_version_info_string(&id->libz_version, &cp, &n, ccsid))
+    return (curl_version_info_data *) NULL;
+
+  if (convert_version_info_string(&id->ares, &cp, &n, ccsid))
+    return (curl_version_info_data *) NULL;
+
+  if (convert_version_info_string(&id->libidn, &cp, &n, ccsid))
+    return (curl_version_info_data *) NULL;
+
+  if (convert_version_info_string(&id->libssh_version, &cp, &n, ccsid))
+    return (curl_version_info_data *) NULL;
+
+  return id;
+}
+
+
+const char *
+curl_easy_strerror_ccsid(CURLcode error, unsigned int ccsid)
+
+{
+  int i;
+  const char * s;
+  char * buf;
+
+  s = curl_easy_strerror(error);
+
+  if (!s)
+    return s;
+
+  i = MAX_CONV_EXPANSION * (strlen(s) + 1);
+
+  if (!(buf = Curl_thread_buffer(LK_EASY_STRERROR, i)))
+    return (const char *) NULL;
+
+  if (convert(buf, i, ccsid, s, -1, ASCII_CCSID) < 0)
+    return (const char *) NULL;
+
+  return (const char *) buf;
+}
+
+
+const char *
+curl_share_strerror_ccsid(CURLSHcode error, unsigned int ccsid)
+
+{
+  int i;
+  const char * s;
+  char * buf;
+
+  s = curl_share_strerror(error);
+
+  if (!s)
+    return s;
+
+  i = MAX_CONV_EXPANSION * (strlen(s) + 1);
+
+  if (!(buf = Curl_thread_buffer(LK_SHARE_STRERROR, i)))
+    return (const char *) NULL;
+
+  if (convert(buf, i, ccsid, s, -1, ASCII_CCSID) < 0)
+    return (const char *) NULL;
+
+  return (const char *) buf;
+}
+
+
+const char *
+curl_multi_strerror_ccsid(CURLMcode error, unsigned int ccsid)
+
+{
+  int i;
+  const char * s;
+  char * buf;
+
+  s = curl_multi_strerror(error);
+
+  if (!s)
+    return s;
+
+  i = MAX_CONV_EXPANSION * (strlen(s) + 1);
+
+  if (!(buf = Curl_thread_buffer(LK_MULTI_STRERROR, i)))
+    return (const char *) NULL;
+
+  if (convert(buf, i, ccsid, s, -1, ASCII_CCSID) < 0)
+    return (const char *) NULL;
+
+  return (const char *) buf;
+}
+
+
+CURLcode
+curl_easy_getinfo_ccsid(CURL * curl, CURLINFO info, ...)
+
+{
+  va_list arg;
+  void * paramp;
+  CURLcode ret;
+  unsigned int ccsid;
+  char * * cpp;
+  char * s;
+  char * d;
+  struct SessionHandle * data;
+
+  /* WARNING: unlike curl_easy_get_info(), the strings returned by this
+     procedure have to be free'ed. */
+
+  data = (struct SessionHandle *) curl;
+  va_start(arg, info);
+  paramp = va_arg(arg, void *);
+  ret = Curl_getinfo(data, info, paramp);
+
+  if (ret != CURLE_OK || ((int) info & CURLINFO_TYPEMASK) != CURLINFO_STRING) {
+    va_end(arg);
+    return ret;
+    }
+
+  ccsid = va_arg(arg, unsigned int);
+  va_end(arg);
+  cpp = (char * *) paramp;
+  s = *cpp;
+
+  if (!s)
+    return ret;
+
+  d = dynconvert(ccsid, s, -1, ASCII_CCSID);
+  *cpp = d;
+
+  if (!d)
+    return CURLE_OUT_OF_MEMORY;
+
+  return ret;
+}
+
+
+static int
+Curl_is_formadd_string(CURLformoption option)
+
+{
+  switch (option) {
+
+    case CURLFORM_FILENAME:
+    case CURLFORM_CONTENTTYPE:
+    case CURLFORM_BUFFER:
+    case CURLFORM_FILE:
+    case CURLFORM_FILECONTENT:
+    case CURLFORM_COPYCONTENTS:
+    case CURLFORM_COPYNAME:
+      return 1;
+    }
+
+  return 0;
+}
+
+
+static void
+Curl_formadd_release_local(struct curl_forms * forms, int nargs, int skip)
+
+{
+  while (nargs--)
+    if (nargs != skip)
+      if (Curl_is_formadd_string(forms[nargs].option))
+        if (forms[nargs].value)
+          free((char *) forms[nargs].value);
+
+  free((char *) forms);
+}
+
+
+static int
+Curl_formadd_convert(struct curl_forms * forms,
+                     int formx, int lengthx, unsigned int ccsid)
+
+{
+  int l;
+  char * cp;
+  char * cp2;
+
+  if (formx < 0 || !forms[formx].value)
+    return 0;
+
+  if (lengthx >= 0)
+    l = (int) forms[lengthx].value;
+  else
+    l = strlen(forms[formx].value) + 1;
+
+  cp = malloc(MAX_CONV_EXPANSION * l);
+
+  if (!cp)
+    return -1;
+
+  l = convert(cp, MAX_CONV_EXPANSION * l, ASCII_CCSID,
+              forms[formx].value, l, ccsid);
+
+  if (l < 0) {
+    free(cp);
+    return -1;
+    }
+
+  cp2 = realloc(cp, l);                 /* Shorten buffer to the string size. */
+
+  if (cp2)
+    cp = cp2;
+
+  forms[formx].value = cp;
+
+  if (lengthx >= 0)
+    forms[lengthx].value = (char *) l;  /* Update to length after conversion. */
+
+  return l;
+}
+
+
+CURLFORMcode
+curl_formadd_ccsid(struct curl_httppost * * httppost,
+                   struct curl_httppost * * last_post, ...)
+
+{
+  va_list arg;
+  CURLformoption option;
+  CURLFORMcode result;
+  struct curl_forms * forms;
+  struct curl_forms * lforms;
+  struct curl_forms * tforms;
+  unsigned int lformlen;
+  const char * value;
+  unsigned int ccsid;
+  int nargs;
+  int namex;
+  int namelengthx;
+  int contentx;
+  int lengthx;
+  unsigned int contentccsid;
+  unsigned int nameccsid;
+
+  /* A single curl_formadd() call cannot be splitted in several calls to deal
+     with all parameters: the original parameters are thus copied to a local
+     curl_forms array and converted to ASCII when needed.
+     CURLFORM_PTRNAME is processed as if it were CURLFORM_COPYNAME.
+     CURLFORM_COPYNAME and CURLFORM_NAMELENGTH occurrence order in
+     parameters is not defined; for this reason, the actual conversion is
+     delayed to the end of parameter processing. The same applies to
+     CURLFORM_COPYCONTENTS/CURLFORM_CONTENTSLENGTH, but these may appear
+     several times in the parameter list; the problem resides here in knowing
+     which CURLFORM_CONTENTSLENGTH applies to which CURLFORM_COPYCONTENTS and
+     when we can be sure to have both info for conversion: end of parameter
+     list is such a point, but CURLFORM_CONTENTTYPE is also used here as a
+     natural separator between content data definitions; this seems to be
+     in accordance with FormAdd() behavior. */
+
+  /* Allocate the local curl_forms array. */
+
+  lformlen = ALLOC_GRANULE;
+  lforms = malloc(lformlen * sizeof *lforms);
+
+  if (!lforms)
+    return CURL_FORMADD_MEMORY;
+
+  /* Process the arguments, copying them into local array, latching conversion
+     indexes and converting when needed. */
+
+  result = CURL_FORMADD_OK;
+  nargs = 0;
+  contentx = -1;
+  lengthx = -1;
+  namex = -1;
+  namelengthx = -1;
+  forms = (struct curl_forms *) NULL;
+  va_start(arg, last_post);
+
+  for (;;) {
+    /* Make sure there is still room for an item in local array. */
+
+    if (nargs >= lformlen) {
+      lformlen += ALLOC_GRANULE;
+      tforms = realloc(lforms, lformlen * sizeof *lforms);
+
+      if (!tforms) {
+        result = CURL_FORMADD_MEMORY;
+        break;
+        }
+
+      lforms = tforms;
+      }
+
+    /* Get next option. */
+
+    if (forms) {
+      /* Get option from array. */
+
+      option = forms->option;
+      value = forms->value;
+      forms++;
+      }
+    else {
+      /* Get option from arguments. */
+
+      option = va_arg(arg, CURLformoption);
+
+      if (option == CURLFORM_END)
+        break;
+      }
+
+    /* Dispatch by option. */
+
+    switch (option) {
+
+    case CURLFORM_END:
+      forms = (struct curl_forms *) NULL;       /* Leave array mode. */
+      continue;
+
+    case CURLFORM_ARRAY:
+      if (!forms) {
+        forms = va_arg(arg, struct curl_forms *);
+        continue;
+        }
+
+      result = CURL_FORMADD_ILLEGAL_ARRAY;
+      break;
+
+    case CURLFORM_COPYNAME:
+      option = CURLFORM_PTRNAME;                /* Static for now. */
+
+    case CURLFORM_PTRNAME:
+      if (namex >= 0)
+        result = CURL_FORMADD_OPTION_TWICE;
+
+      namex = nargs;
+
+      if (!forms) {
+        value = va_arg(arg, char *);
+        nameccsid = (unsigned int) va_arg(arg, long);
+        }
+      else {
+        nameccsid = (unsigned int) forms->value;
+        forms++;
+        }
+
+      break;
+
+    case CURLFORM_COPYCONTENTS:
+      if (contentx >= 0)
+        result = CURL_FORMADD_OPTION_TWICE;
+
+      contentx = nargs;
+
+      if (!forms) {
+        value = va_arg(arg, char *);
+        contentccsid = (unsigned int) va_arg(arg, long);
+        }
+      else {
+        contentccsid = (unsigned int) forms->value;
+        forms++;
+        }
+
+      break;
+
+    case CURLFORM_PTRCONTENTS:
+    case CURLFORM_BUFFERPTR:
+      if (!forms)
+        value = va_arg(arg, char *);            /* No conversion. */
+
+      break;
+
+    case CURLFORM_CONTENTSLENGTH:
+      lengthx = nargs;
+
+      if (!forms)
+        value = (char *) va_arg(arg, long);
+
+      break;
+
+    case CURLFORM_NAMELENGTH:
+      namelengthx = nargs;
+
+      if (!forms)
+        value = (char *) va_arg(arg, long);
+
+      break;
+
+    case CURLFORM_BUFFERLENGTH:
+      if (!forms)
+        value = (char *) va_arg(arg, long);
+
+      break;
+
+    case CURLFORM_CONTENTHEADER:
+      if (!forms)
+        value = (char *) va_arg(arg, struct curl_slist *);
+
+      break;
+
+    case CURLFORM_STREAM:
+      if (!forms)
+        value = (char *) va_arg(arg, void *);
+
+      break;
+
+    case CURLFORM_CONTENTTYPE:
+      /* If a previous content has been encountered, convert it now. */
+
+      if (Curl_formadd_convert(lforms, contentx, lengthx, contentccsid) < 0) {
+        result = CURL_FORMADD_MEMORY;
+        break;
+        }
+
+      contentx = -1;
+      lengthx = -1;
+      /* Fall into default. */
+
+    default:
+      /* Must be a convertible string. */
+
+      if (!Curl_is_formadd_string(option)) {
+        result = CURL_FORMADD_UNKNOWN_OPTION;
+        break;
+        }
+
+      if (!forms) {
+        value = va_arg(arg, char *);
+        ccsid = (unsigned int) va_arg(arg, long);
+        }
+      else {
+        ccsid = (unsigned int) forms->value;
+        forms++;
+        }
+
+      /* Do the conversion. */
+
+      lforms[nargs].value = value;
+
+      if (Curl_formadd_convert(lforms, nargs, -1, ccsid) < 0) {
+        result = CURL_FORMADD_MEMORY;
+        break;
+        }
+
+      value = lforms[nargs].value;
+      }
+
+    if (result != CURL_FORMADD_OK)
+      break;
+
+    lforms[nargs].value = value;
+    lforms[nargs++].option = option;
+    }
+
+  va_end(arg);
+
+  /* Convert the name and the last content, now that we know their lengths. */
+
+  if (result == CURL_FORMADD_OK && namex >= 0) {
+    if (Curl_formadd_convert(lforms, namex, namelengthx, nameccsid) < 0)
+      result = CURL_FORMADD_MEMORY;
+    else
+      lforms[namex].option = CURLFORM_COPYNAME;         /* Force copy. */
+    }
+
+  if (result == CURL_FORMADD_OK) {
+    if (Curl_formadd_convert(lforms, contentx, lengthx, contentccsid) < 0)
+      result = CURL_FORMADD_MEMORY;
+    else
+      contentx = -1;
+    }
+
+  /* Do the formadd with our converted parameters. */
+
+  if (result == CURL_FORMADD_OK) {
+    lforms[nargs].option = CURLFORM_END;
+    result = curl_formadd(httppost, last_post,
+                          CURLFORM_ARRAY, lforms, CURLFORM_END);
+    }
+
+  /* Terminate. */
+
+  Curl_formadd_release_local(lforms, nargs, contentx);
+  return result;
+}
+
+
+typedef struct {
+  curl_formget_callback append;
+  void *                arg;
+  unsigned int          ccsid;
+}   cfcdata;
+
+
+static size_t
+Curl_formget_callback_ccsid(void * arg, const char * buf, size_t len)
+
+{
+  cfcdata * p;
+  char * b;
+  int l;
+  size_t ret;
+
+  p = (cfcdata *) arg;
+
+  if ((long) len <= 0)
+    return (*p->append)(p->arg, buf, len);
+
+  b = malloc(MAX_CONV_EXPANSION * len);
+
+  if (!b)
+    return (size_t) -1;
+
+  l = convert(b, MAX_CONV_EXPANSION * len, p->ccsid, buf, len, ASCII_CCSID);
+
+  if (l < 0) {
+    free(b);
+    return (size_t) -1;
+    }
+
+  ret = (*p->append)(p->arg, b, l);
+  free(b);
+  return ret == l? len: -1;
+}
+
+
+int
+curl_formget_ccsid(struct curl_httppost * form, void * arg,
+                   curl_formget_callback append, unsigned int ccsid)
+
+{
+  cfcdata lcfc;
+
+  lcfc.append = append;
+  lcfc.arg = arg;
+  lcfc.ccsid = ccsid;
+  return curl_formget(form, (void *) &lcfc, Curl_formget_callback_ccsid);
+}
+
+
+CURLcode
+curl_easy_setopt_ccsid(CURL * curl, CURLoption tag, ...)
+
+{
+  CURLcode result;
+  va_list arg;
+  struct SessionHandle * data;
+  char * s;
+  char * cp;
+  unsigned int ccsid;
+  size_t len;
+  curl_off_t pfsize;
+  static char testwarn = 1;
+
+  /* Warns if this procedure has not been updated when the dupstring enum
+     changes.
+     We (try to) do it only once: there is no need to issue several times
+     the same message; but since threadsafeness is not handled here,
+     this may occur (and we don't care!). */
+
+  if (testwarn) {
+    testwarn = 0;
+
+    if ((int) STRING_LAST != (int) STRING_MAIL_FROM + 1)
+      curl_mfprintf(stderr,
+       "*** WARNING: curl_easy_setopt_ccsid() should be reworked ***\n");
+    }
+
+  data = (struct SessionHandle *) curl;
+  va_start(arg, tag);
+
+  switch (tag) {
+
+  case CURLOPT_CAINFO:
+  case CURLOPT_CAPATH:
+  case CURLOPT_COOKIE:
+  case CURLOPT_COOKIEFILE:
+  case CURLOPT_COOKIEJAR:
+  case CURLOPT_COOKIELIST:
+  case CURLOPT_CUSTOMREQUEST:
+  case CURLOPT_EGDSOCKET:
+  case CURLOPT_ENCODING:
+  case CURLOPT_FTPPORT:
+  case CURLOPT_FTP_ACCOUNT:
+  case CURLOPT_FTP_ALTERNATIVE_TO_USER:
+  case CURLOPT_INTERFACE:
+  case CURLOPT_KEYPASSWD:
+  case CURLOPT_KRBLEVEL:
+  case CURLOPT_NETRC_FILE:
+  case CURLOPT_PROXY:
+  case CURLOPT_PROXYUSERPWD:
+  case CURLOPT_RANDOM_FILE:
+  case CURLOPT_RANGE:
+  case CURLOPT_REFERER:
+  case CURLOPT_SSH_PRIVATE_KEYFILE:
+  case CURLOPT_SSH_PUBLIC_KEYFILE:
+  case CURLOPT_SSLCERT:
+  case CURLOPT_SSLCERTTYPE:
+  case CURLOPT_SSLENGINE:
+  case CURLOPT_SSLKEY:
+  case CURLOPT_SSLKEYTYPE:
+  case CURLOPT_SSL_CIPHER_LIST:
+  case CURLOPT_URL:
+  case CURLOPT_USERAGENT:
+  case CURLOPT_USERPWD:
+  case CURLOPT_SSH_HOST_PUBLIC_KEY_MD5:
+  case CURLOPT_CRLFILE:
+  case CURLOPT_ISSUERCERT:
+  case CURLOPT_USERNAME:
+  case CURLOPT_PASSWORD:
+  case CURLOPT_PROXYUSERNAME:
+  case CURLOPT_PROXYPASSWORD:
+  case CURLOPT_NOPROXY:
+  case CURLOPT_RTSP_SESSION_ID:
+  case CURLOPT_RTSP_STREAM_URI:
+  case CURLOPT_RTSP_TRANSPORT:
+  /* SSH2 not (yet) implemented on OS400. */
+  /* case CURLOPT_SSH_KNOWNHOSTS: */
+  case CURLOPT_SOCKS5_GSSAPI_SERVICE:
+  case CURLOPT_MAIL_FROM:
+    s = va_arg(arg, char *);
+    ccsid = va_arg(arg, unsigned int);
+
+    if (s) {
+      s = dynconvert(ASCII_CCSID, s, -1, ccsid);
+
+      if (!s) {
+        result = CURLE_OUT_OF_MEMORY;
+        break;
+        }
+      }
+
+    result = curl_easy_setopt(curl, tag, s);
+
+    if (s)
+      free(s);
+
+    break;
+
+  case CURLOPT_COPYPOSTFIELDS:
+    /* Special case: byte count may have been given by CURLOPT_POSTFIELDSIZE
+       prior to this call. In this case, convert the given byte count and
+       replace the length according to the conversion result. */
+    s = va_arg(arg, char *);
+    ccsid = va_arg(arg, unsigned int);
+
+    pfsize = data->set.postfieldsize;
+
+    if (!s || !pfsize || ccsid == NOCONV_CCSID || ccsid == ASCII_CCSID) {
+      result = curl_easy_setopt(curl, CURLOPT_COPYPOSTFIELDS, s);
+      break;
+      }
+
+    if (pfsize == -1) {
+      /* Data is null-terminated. */
+      s = dynconvert(ASCII_CCSID, s, -1, ccsid);
+
+      if (!s) {
+        result = CURLE_OUT_OF_MEMORY;
+        break;
+        }
+      }
+    else {
+      /* Data length specified. */
+
+      if (pfsize < 0 || pfsize > SIZE_MAX) {
+        result = CURLE_OUT_OF_MEMORY;
+        break;
+        }
+
+      len = pfsize;
+      pfsize = len * MAX_CONV_EXPANSION;
+
+      if (pfsize > SIZE_MAX)
+        pfsize = SIZE_MAX;
+
+      cp = malloc(pfsize);
+
+      if (!cp) {
+        result = CURLE_OUT_OF_MEMORY;
+        break;
+        }
+
+      pfsize = convert(cp, pfsize, ASCII_CCSID, s, len, ccsid);
+
+      if (pfsize < 0) {
+        free(cp);
+        result = CURLE_OUT_OF_MEMORY;
+        break;
+        }
+
+      data->set.postfieldsize = pfsize;         /* Replace data size. */
+      s = cp;
+      }
+
+    result = curl_easy_setopt(curl, CURLOPT_POSTFIELDS, s);
+    data->set.str[STRING_COPYPOSTFIELDS] = s;   /* Give to library. */
+    break;
+
+  case CURLOPT_ERRORBUFFER:                     /* This is an output buffer. */
+  default:
+    result = Curl_setopt(data, tag, arg);
+    break;
+    }
+
+  va_end(arg);
+  return result;
+}
+
+
+char *
+curl_form_long_value(long value)
+
+{
+  /* ILE/RPG cannot cast an integer to a pointer. This procedure does it. */
+
+  return (char *) value;
+}
diff --git a/packages/OS400/ccsidcurl.h b/packages/OS400/ccsidcurl.h
new file mode 100644
index 0000000..96340c9
--- /dev/null
+++ b/packages/OS400/ccsidcurl.h
@@ -0,0 +1,64 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2008, Daniel Stenberg, <daniel@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_CCSIDCURL_H
+#define __CURL_CCSIDCURL_H
+
+#include "curl.h"
+#include "easy.h"
+#include "multi.h"
+
+
+CURL_EXTERN char * curl_version_ccsid(unsigned int ccsid);
+CURL_EXTERN char * curl_easy_escape_ccsid(CURL * handle,
+                                          const char * string, int length,
+                                          unsigned int sccsid,
+                                          unsigned int dccsid);
+CURL_EXTERN char * curl_easy_unescape_ccsid(CURL * handle, const char * string,
+                                            int length, int * outlength,
+                                            unsigned int sccsid,
+                                            unsigned int dccsid);
+CURL_EXTERN struct curl_slist * curl_slist_append_ccsid(struct curl_slist * lst,
+                                                        const char * data,
+                                                        unsigned int ccsid);
+CURL_EXTERN time_t curl_getdate_ccsid(const char * p, const time_t * unused,
+                                      unsigned int ccsid);
+CURL_EXTERN curl_version_info_data * curl_version_info_ccsid(CURLversion stamp,
+                                                             unsigned int csid);
+CURL_EXTERN const char * curl_easy_strerror_ccsid(CURLcode error,
+                                                  unsigned int ccsid);
+CURL_EXTERN const char * curl_share_strerror_ccsid(CURLSHcode error,
+                                                   unsigned int ccsid);
+CURL_EXTERN const char * curl_multi_strerror_ccsid(CURLMcode error,
+                                                   unsigned int ccsid);
+CURL_EXTERN CURLcode curl_easy_getinfo_ccsid(CURL * curl, CURLINFO info, ...);
+CURL_EXTERN CURLFORMcode curl_formadd_ccsid(struct curl_httppost * * httppost,
+                                            struct curl_httppost * * last_post,
+                                            ...);
+CURL_EXTERN char * curl_form_long_value(long value);
+CURL_EXTERN int curl_formget_ccsid(struct curl_httppost * form, void * arg,
+                                   curl_formget_callback append,
+                                   unsigned int ccsid);
+CURL_EXTERN CURLcode curl_easy_setopt_ccsid(CURL * curl, CURLoption tag, ...);
+
+#endif
diff --git a/packages/OS400/curl.inc.in b/packages/OS400/curl.inc.in
new file mode 100644
index 0000000..b5e46bb
--- /dev/null
+++ b/packages/OS400/curl.inc.in
@@ -0,0 +1,1966 @@
+      **************************************************************************
+      *                                  _   _ ____  _
+      *  Project                     ___| | | |  _ \| |
+      *                             / __| | | | |_) | |
+      *                            | (__| |_| |  _ <| |___
+      *                             \___|\___/|_| \_\_____|
+      *
+      * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel@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 not defined(CURL_CURL_INC_)
+      /define CURL_CURL_INC_
+      *
+      *     WARNING: this file should be kept in sync with C include files.
+      *
+      **************************************************************************
+      *                               Constants
+      **************************************************************************
+      *
+     d LIBCURL_VERSION...
+     d                 c                   '@LIBCURL_VERSION@'
+     d LIBCURL_VERSION_MAJOR...
+     d                 c                   @LIBCURL_VERSION_MAJOR@
+     d LIBCURL_VERSION_MINOR...
+     d                 c                   @LIBCURL_VERSION_MINOR@
+     d LIBCURL_VERSION_PATCH...
+     d                 c                   @LIBCURL_VERSION_PATCH@
+     d LIBCURL_VERSION_NUM...
+     d                 c                   X'00@LIBCURL_VERSION_NUM@'
+     d LIBCURL_TIMESTAMP...
+     d                 c                   '@LIBCURL_TIMESTAMP@'
+      *
+     d CURL_SOCKET_BAD...
+     d                 c                   -1
+     d CURL_SOCKET_TIMEOUT...
+     d                 c                   -1
+      *
+      /if not defined(CURL_MAX_WRITE_SIZE)
+      /define CURL_MAX_WRITE_SIZE
+     d CURL_MAX_WRITE_SIZE...
+     d                 c                   16384
+      /endif
+      *
+      /if not defined(CURL_MAX_HTTP_HEADER)
+      /define CURL_MAX_HTTP_HEADER
+     d CURL_MAX_HTTP_HEADER...
+     d                 c                   102400
+      /endif
+      *
+     d CURLINFO_STRING...
+     d                 c                   X'00100000'
+     d CURLINFO_LONG   c                   X'00200000'
+     d CURLINFO_DOUBLE...
+     d                 c                   X'00300000'
+     d CURLINFO_SLIST  c                   X'00400000'
+     d CURLINFO_MASK   c                   X'000FFFFF'
+     d CURLINFO_TYPEMASK...
+     d                 c                   X'00F00000'
+      *
+     d CURL_GLOBAL_SSL...
+     d                 c                   X'00000001'
+     d CURL_GLOBAL_WIN32...
+     d                 c                   X'00000002'
+     d CURL_GLOBAL_ALL...
+     d                 c                   X'00000003'
+     d CURL_GLOBAL_NOTHING...
+     d                 c                   X'00000000'
+     d CURL_GLOBAL_DEFAULT...
+     d                 c                   X'00000003'
+      *
+     d CURL_VERSION_IPV6...
+     d                 c                   X'00000001'
+     d CURL_VERSION_KERBEROS4...
+     d                 c                   X'00000002'
+     d CURL_VERSION_SSL...
+     d                 c                   X'00000004'
+     d CURL_VERSION_LIBZ...
+     d                 c                   X'00000008'
+     d CURL_VERSION_NTLM...
+     d                 c                   X'00000010'
+     d CURL_VERSION_GSSNEGOTIATE...
+     d                 c                   X'00000020'
+     d CURL_VERSION_DEBUG...
+     d                 c                   X'00000040'
+     d CURL_VERSION_ASYNCHDNS...
+     d                 c                   X'00000080'
+     d CURL_VERSION_SPNEGO...
+     d                 c                   X'00000100'
+     d CURL_VERSION_LARGEFILE...
+     d                 c                   X'00000200'
+     d CURL_VERSION_IDN...
+     d                 c                   X'00000400'
+     d CURL_VERSION_SSPI...
+     d                 c                   X'00000800'
+     d CURL_VERSION_CONV...
+     d                 c                   X'00001000'
+     d CURL_VERSION_CURLDEBUG...
+     d                 c                   X'00002000'
+      *
+     d HTTPPOST_FILENAME...
+     d                 c                   X'00000001'
+     d HTTPPOST_READFILE...
+     d                 c                   X'00000002'
+     d HTTPPOST_PTRNAME...
+     d                 c                   X'00000004'
+     d HTTPPOST_PTRCONTENTS...
+     d                 c                   X'00000008'
+     d HTTPPOST_BUFFER...
+     d                 c                   X'00000010'
+     d HTTPPOST_PTRBUFFER...
+     d                 c                   X'00000020'
+     d HTTPPOST_CALLBACK...
+     d                 c                   X'00000040'
+      *
+     d CURL_SEEKFUNC_OK...
+     d                 c                   0
+     d CURL_SEEKFUNC_FAIL...
+     d                 c                   1
+     d CURL_SEEKFUNC_CANTSEEK...
+     d                 c                   2
+      *
+     d CURL_READFUNC_ABORT...
+     d                 c                   X'10000000'
+     d CURL_READFUNC_PAUSE...
+     d                 c                   X'10000001'
+      *
+     d CURL_WRITEFUNC_PAUSE...
+     d                 c                   X'10000001'
+      *
+     d CURLAUTH_NONE   c                   X'00000000'
+     d CURLAUTH_BASIC  c                   X'00000001'
+     d CURLAUTH_DIGEST...
+     d                 c                   X'00000002'
+     d CURLAUTH_GSSNEGOTIATE...
+     d                 c                   X'00000004'
+     d CURLAUTH_NTLM   c                   X'00000008'
+     d CURLAUTH_DIGEST_IE...
+     d                 c                   X'00000010'
+     d CURLAUTH_ANY    c                   X'7FFFFFEF'
+     d CURLAUTH_ANYSAFE...
+     d                 c                   X'7FFFFFEE'
+      *
+     d CURLSSH_AUTH_ANY...
+     d                 c                   X'7FFFFFFF'
+     d CURLSSH_AUTH_NONE...
+     d                 c                   X'00000000'
+     d CURLSSH_AUTH_PUBLICKEY...
+     d                 c                   X'00000001'
+     d CURLSSH_AUTH_PASSWORD...
+     d                 c                   X'00000002'
+     d CURLSSH_AUTH_HOST...
+     d                 c                   X'00000004'
+     d CURLSSH_AUTH_KEYBOARD...
+     d                 c                   X'00000008'
+     d CURLSSH_AUTH_DEFAULT...
+     d                 c                   X'7FFFFFFF'                          CURLSSH_AUTH_ANY
+      *
+     d CURL_ERROR_SIZE...
+     d                 c                   256
+      *
+     d CURLOPTTYPE_LONG...
+     d                 c                   0
+     d CURLOPTTYPE_OBJECTPOINT...
+     d                 c                   10000
+     d CURLOPTTYPE_FUNCTIONPOINT...
+     d                 c                   20000
+     d CURLOPTTYPE_OFF_T...
+     d                 c                   30000
+      *
+     d CURL_IPRESOLVE_WHATEVER...
+     d                 c                   0
+     d CURL_IPRESOLVE_V4...
+     d                 c                   1
+     d CURL_IPRESOLVE_V6...
+     d                 c                   2
+      *
+     d CURL_HTTP_VERSION_NONE...
+     d                 c                   0
+     d CURL_HTTP_VERSION_1_0...
+     d                 c                   1
+     d CURL_HTTP_VERSION_1_1...
+     d                 c                   2
+      *
+     d CURL_NETRC_IGNORED...
+     d                 c                   0
+     d CURL_NETRC_OPTIONAL...
+     d                 c                   1
+     d CURL_NETRC_REQUIRED...
+     d                 c                   2
+      *
+     d CURL_SSLVERSION_DEFAULT...
+     d                 c                   0
+     d CURL_SSLVERSION_TLSv1...
+     d                 c                   1
+     d CURL_SSLVERSION_SSLv2...
+     d                 c                   2
+     d CURL_SSLVERSION_SSLv3...
+     d                 c                   3
+      *
+     d CURL_REDIR_GET_ALL...
+     d                 c                   0
+     d CURL_REDIR_POST_301...
+     d                 c                   1
+     d CURL_REDIR_POST_302...
+     d                 c                   2
+     d CURL_REDIR_POST_ALL...
+     d                 c                   3
+      *
+     d CURL_POLL_NONE  c                   0
+     d CURL_POLL_IN    c                   1
+     d CURL_POLL_OUT   c                   2
+     d CURL_POLL_INOUT...
+     d                 c                   3
+     d CURL_POLL_REMOVE...
+     d                 c                   4
+      *
+     d CURL_CSELECT_IN...
+     d                 c                   X'00000001'
+     d CURL_CSELECT_OUT...
+     d                 c                   X'00000002'
+     d CURL_CSELECT_ERR...
+     d                 c                   X'00000004'
+      *
+     d CURLPAUSE_RECV  c                   X'00000001'
+     d CURLPAUSE_RECV_CONT...
+     d                 c                   X'00000000'
+     d CURLPAUSE_SEND  c                   X'00000004'
+     d CURLPAUSE_SEND_CONT...
+     d                 c                   X'00000000'
+     d CURLPAUSE_ALL   c                   X'00000005'
+     d CURLPAUSE_CONT  c                   X'00000000'
+      *
+     d CURLINFOFLAG_KNOWN_FILENAME...
+     d                 c                   X'00000001'
+     d CURLINFOFLAG_KNOWN_FILETYPE...
+     d                 c                   X'00000002'
+     d CURLINFOFLAG_KNOWN_TIME...
+     d                 c                   X'00000004'
+     d CURLINFOFLAG_KNOWN_PERM...
+     d                 c                   X'00000008'
+     d CURLINFOFLAG_KNOWN_UID...
+     d                 c                   X'00000010'
+     d CURLINFOFLAG_KNOWN_GID...
+     d                 c                   X'00000020'
+     d CURLINFOFLAG_KNOWN_SIZE...
+     d                 c                   X'00000040'
+     d CURLINFOFLAG_KNOWN_HLINKCOUNT...
+     d                 c                   X'00000080'
+      *
+     d CURL_CHUNK_BGN_FUNC_OK...
+     d                 c                   0
+     d CURL_CHUNK_BGN_FUNC_FAIL...
+     d                 c                   1
+     d CURL_CHUNK_BGN_FUNC_SKIP...
+     d                 c                   2
+      *
+     d CURL_CHUNK_END_FUNC_OK...
+     d                 c                   0
+     d CURL_CHUNK_END_FUNC_FAIL...
+     d                 c                   1
+      *
+     d CURL_FNMATCHFUNC_MATCH...
+     d                 c                   0
+     d CURL_FNMATCHFUNC_NOMATCH...
+     d                 c                   1
+     d CURL_FNMATCHFUNC_FAIL...
+     d                 c                   2
+      *
+      **************************************************************************
+      *                                Types
+      **************************************************************************
+      *
+     d curl_socket_t   s             10i 0 based(######ptr######)
+      *
+     d curl_off_t      s             20i 0 based(######ptr######)
+      *
+     d CURLcode        s             10i 0 based(######ptr######)               Enum
+     d  CURLE_OK       c                   0
+     d  CURLE_UNSUPPORTED_PROTOCOL...
+     d                 c                   1
+     d  CURLE_FAILED_INIT...
+     d                 c                   2
+     d  CURLE_URL_MALFORMAT...
+     d                 c                   3
+     d  CURLE_OBSOLETE4...
+     d                 c                   4
+     d  CURLE_COULDNT_RESOLVE_PROXY...
+     d                 c                   5
+     d  CURLE_COULDNT_RESOLVE_HOST...
+     d                 c                   6
+     d  CURLE_COULDNT_CONNECT...
+     d                 c                   7
+     d  CURLE_FTP_WEIRD_SERVER_REPLY...
+     d                 c                   8
+     d  CURLE_REMOTE_ACCESS_DENIED...
+     d                 c                   9
+     d  CURLE_OBSOLETE10...
+     d                 c                   10
+     d  CURLE_FTP_WEIRD_PASS_REPLY...
+     d                 c                   11
+     d  CURLE_OBSOLETE12...
+     d                 c                   12
+     d  CURLE_FTP_WEIRD_PASV_REPLY...
+     d                 c                   13
+     d  CURLE_FTP_WEIRD_227_FORMAT...
+     d                 c                   14
+     d  CURLE_FTP_CANT_GET_HOST...
+     d                 c                   15
+     d  CURLE_OBSOLETE16...
+     d                 c                   16
+     d  CURLE_FTP_COULDNT_SET_TYPE...
+     d                 c                   17
+     d  CURLE_PARTIAL_FILE...
+     d                 c                   18
+     d  CURLE_FTP_COULDNT_RETR_FILE...
+     d                 c                   19
+     d  CURLE_OBSOLETE20...
+     d                 c                   20
+     d  CURLE_QUOTE_ERROR...
+     d                 c                   21
+     d  CURLE_HTTP_RETURNED_ERROR...
+     d                 c                   22
+     d  CURLE_WRITE_ERROR...
+     d                 c                   23
+     d  CURLE_OBSOLETE24...
+     d                 c                   24
+     d  CURLE_UPLOAD_FAILED...
+     d                 c                   25
+     d  CURLE_READ_ERROR...
+     d                 c                   26
+     d  CURLE_OUT_OF_MEMORY...
+     d                 c                   27
+     d  CURLE_OPERATION_TIMEDOUT...
+     d                 c                   28
+     d  CURLE_OBSOLETE29...
+     d                 c                   29
+     d  CURLE_FTP_PORT_FAILED...
+     d                 c                   30
+     d  CURLE_FTP_COULDNT_USE_REST...
+     d                 c                   31
+     d  CURLE_OBSOLETE32...
+     d                 c                   32
+     d  CURLE_RANGE_ERROR...
+     d                 c                   33
+     d  CURLE_HTTP_POST_ERROR...
+     d                 c                   34
+     d  CURLE_SSL_CONNECT_ERROR...
+     d                 c                   35
+     d  CURLE_BAD_DOWNLOAD_RESUME...
+     d                 c                   36
+     d  CURLE_FILE_COULDNT_READ_FILE...
+     d                 c                   37
+     d  CURLE_LDAP_CANNOT_BIND...
+     d                 c                   38
+     d  CURLE_LDAP_SEARCH_FAILED...
+     d                 c                   39
+     d  CURLE_OBSOLETE40...
+     d                 c                   40
+     d  CURLE_FUNCTION_NOT_FOUND...
+     d                 c                   41
+     d  CURLE_ABORTED_BY_CALLBACK...
+     d                 c                   42
+     d  CURLE_BAD_FUNCTION_ARGUMENT...
+     d                 c                   43
+     d  CURLE_OBSOLETE44...
+     d                 c                   44
+     d  CURLE_INTERFACE_FAILED...
+     d                 c                   45
+     d  CURLE_OBSOLETE46...
+     d                 c                   46
+     d  CURLE_TOO_MANY_REDIRECTS...
+     d                 c                   47
+     d  CURLE_UNKNOWN_TELNET_OPTION...
+     d                 c                   48
+     d  CURLE_TELNET_OPTION_SYNTAX...
+     d                 c                   49
+     d  CURLE_OBSOLETE50...
+     d                 c                   50
+     d  CURLE_PEER_FAILED_VERIFICATION...
+     d                 c                   51
+     d  CURLE_GOT_NOTHING...
+     d                 c                   52
+     d  CURLE_SSL_ENGINE_NOTFOUND...
+     d                 c                   53
+     d  CURLE_SSL_ENGINE_SETFAILED...
+     d                 c                   54
+     d  CURLE_SEND_ERROR...
+     d                 c                   55
+     d  CURLE_RECV_ERROR...
+     d                 c                   56
+     d  CURLE_OBSOLETE57...
+     d                 c                   57
+     d  CURLE_SSL_CERTPROBLEM...
+     d                 c                   58
+     d  CURLE_SSL_CIPHER...
+     d                 c                   59
+     d  CURLE_SSL_CACERT...
+     d                 c                   60
+     d  CURLE_BAD_CONTENT_ENCODING...
+     d                 c                   61
+     d  CURLE_LDAP_INVALID_URL...
+     d                 c                   62
+     d  CURLE_FILESIZE_EXCEEDED...
+     d                 c                   63
+     d  CURLE_USE_SSL_FAILED...
+     d                 c                   64
+     d  CURLE_SEND_FAIL_REWIND...
+     d                 c                   65
+     d  CURLE_SSL_ENGINE_INITFAILED...
+     d                 c                   66
+     d  CURLE_LOGIN_DENIED...
+     d                 c                   67
+     d  CURLE_TFTP_NOTFOUND...
+     d                 c                   68
+     d  CURLE_TFTP_PERM...
+     d                 c                   69
+     d  CURLE_REMOTE_DISK_FULL...
+     d                 c                   70
+     d  CURLE_TFTP_ILLEGAL...
+     d                 c                   71
+     d  CURLE_TFTP_UNKNOWNID...
+     d                 c                   72
+     d  CURLE_REMOTE_FILE_EXISTS...
+     d                 c                   73
+     d  CURLE_TFTP_NOSUCHUSER...
+     d                 c                   74
+     d  CURLE_CONV_FAILED...
+     d                 c                   75
+     d  CURLE_CONV_REQD...
+     d                 c                   76
+     d  CURLE_SSL_CACERT_BADFILE...
+     d                 c                   77
+     d  CURLE_REMOTE_FILE_NOT_FOUND...
+     d                 c                   78
+     d  CURLE_SSH...
+     d                 c                   79
+     d  CURLE_SSL_SHUTDOWN_FAILED...
+     d                 c                   80
+     d  CURLE_AGAIN...
+     d                 c                   81
+     d  CURLE_SSL_CRL_BADFILE...
+     d                 c                   82
+     d  CURLE_SSL_ISSUER_ERROR...
+     d                 c                   83
+     d  CURLE_FTP_PRET_FAILED...
+     d                 c                   84
+     d  CURLE_RTSP_CSEQ_ERROR...
+     d                 c                   85
+     d  CURLE_RTSP_SESSION_ERROR...
+     d                 c                   86
+     d  CURLE_FTP_BAD_FILE_LIST...
+     d                 c                   87
+     d  CURLE_CHUNK_FAILED...
+     d                 c                   88
+      *
+     d curlioerr       s             10i 0 based(######ptr######)               Enum
+     d  CURLIOE_OK     c                   0
+     d  CURLIOE_UNKNOWNCMD...
+     d                 c                   1
+     d  CURLIOE_FAILRESTART...
+     d                 c                   2
+      *
+     d curlfiletype    s             10i 0 based(######ptr######)               Enum
+     d  CURLFILETYPE_FILE...
+     d                 c                   0
+     d  CURLFILETYPE_DIRECTORY...
+     d                 c                   1
+     d  CURLFILETYPE_SYMLINK...
+     d                 c                   2
+     d  CURLFILETYPE_DEVICE_BLOCK...
+     d                 c                   3
+     d  CURLFILETYPE_DEVICE_CHAR...
+     d                 c                   4
+     d  CURLFILETYPE_NAMEDPIPE...
+     d                 c                   5
+     d  CURLFILETYPE_SOCKET...
+     d                 c                   6
+     d  CURLFILETYPE_DOOR...
+     d                 c                   7
+      *
+     d curliocmd       s             10i 0 based(######ptr######)               Enum
+     d  CURLIOCMD_NOP  c                   0
+     d  CURLIOCMD_RESTARTREAD...
+     d                 c                   1
+      *
+     d curl_infotype   s             10i 0 based(######ptr######)               Enum
+     d  CURLINFO_TEXT...
+     d                 c                   0
+     d  CURLINFO_HEADER_IN...
+     d                 c                   1
+     d  CURLINFO_HEADER_OUT...
+     d                 c                   2
+     d  CURLINFO_DATA_IN...
+     d                 c                   3
+     d  CURLINFO_DATA_OUT...
+     d                 c                   4
+     d  CURLINFO_SSL_DATA_IN...
+     d                 c                   5
+     d  CURLINFO_SSL_DATA_OUT...
+     d                 c                   6
+     d  CURLINFO_END...
+     d                 c                   7
+      *
+     d curl_proxytype  s             10i 0 based(######ptr######)               Enum
+     d  CURLPROXY_HTTP...
+     d                 c                   0
+     d  CURLPROXY_HTTP_1_0...
+     d                 c                   1
+     d  CURLPROXY_SOCKS4...
+     d                 c                   4
+     d  CURLPROXY_SOCKS5...
+     d                 c                   5
+     d  CURLPROXY_SOCKS4A...
+     d                 c                   6
+     d  CURLPROXY_SOCKS5_HOSTNAME...
+     d                 c                   7
+      *
+     d curl_khstat     s             10i 0 based(######ptr######)               Enum
+     d  CURLKHSTAT_FINE_ADD_TO_FILE...
+     d                 c                   0
+     d  CURLKHSTAT_FINE...
+     d                 c                   1
+     d  CURLKHSTAT_REJECT...
+     d                 c                   2
+     d  CURLKHSTAT_DEFER...
+     d                 c                   3
+     d  CURLKHSTAT_LAST...
+     d                 c                   4
+      *
+     d curl_khmatch    s             10i 0 based(######ptr######)               Enum
+     d  CURLKHMATCH_OK...
+     d                 c                   0
+     d  CURLKHMATCH_MISMATCH...
+     d                 c                   1
+     d  CURLKHMATCH_MISSING...
+     d                 c                   2
+     d  CURLKHMATCH_LAST...
+     d                 c                   3
+      *
+     d curl_usessl     s             10i 0 based(######ptr######)               Enum
+     d  CURLUSESSL_NONE...
+     d                 c                   0
+     d  CURLUSESSL_TRY...
+     d                 c                   1
+     d  CURLUSESSL_CONTROL...
+     d                 c                   2
+     d  CURLUSESSL_ALL...
+     d                 c                   3
+      *
+     d curl_ftpccc     s             10i 0 based(######ptr######)               Enum
+     d  CURLFTPSSL_CCC_NONE...
+     d                 c                   0
+     d  CURLFTPSSL_CCC_PASSIVE...
+     d                 c                   1
+     d  CURLFTPSSL_CCC_ACTIVE...
+     d                 c                   2
+      *
+     d curl_ftpauth    s             10i 0 based(######ptr######)               Enum
+     d  CURLFTPAUTH_DEFAULT...
+     d                 c                   0
+     d  CURLFTPAUTH_SSL...
+     d                 c                   1
+     d  CURLFTPAUTH_TLS...
+     d                 c                   2
+      *
+     d curl_ftpcreatedir...
+     d                 s             10i 0 based(######ptr######)               Enum
+     d  CURLFTP_CREATE_DIR_NONE...
+     d                 c                   0
+     d  CURLFTP_CREATE_DIR...
+     d                 c                   1
+     d  CURLFTP_CREATE_DIR_RETRY...
+     d                 c                   2
+      *
+     d curl_ftpmethod  s             10i 0 based(######ptr######)               Enum
+     d  CURLFTPMETHOD_DEFAULT...
+     d                 c                   0
+     d  CURLFTPMETHOD_MULTICWD...
+     d                 c                   1
+     d  CURLFTPMETHOD_NOCWD...
+     d                 c                   2
+     d  CURLFTPMETHOD_SINGLECWD...
+     d                 c                   3
+      *
+     d  CURLPROTO_HTTP...
+     d                 c                   X'00000001'
+     d  CURLPROTO_HTTPS...
+     d                 c                   X'00000002'
+     d  CURLPROTO_FTP...
+     d                 c                   X'00000004'
+     d  CURLPROTO_FTPS...
+     d                 c                   X'00000008'
+     d  CURLPROTO_SCP...
+     d                 c                   X'00000010'
+     d  CURLPROTO_SFTP...
+     d                 c                   X'00000020'
+     d  CURLPROTO_TELNET...
+     d                 c                   X'00000040'
+     d  CURLPROTO_LDAP...
+     d                 c                   X'00000080'
+     d  CURLPROTO_LDAPS...
+     d                 c                   X'00000100'
+     d  CURLPROTO_DICT...
+     d                 c                   X'00000200'
+     d  CURLPROTO_FILE...
+     d                 c                   X'00000400'
+     d  CURLPROTO_TFTP...
+     d                 c                   X'00000800'
+     d  CURLPROTO_IMAP...
+     d                 c                   X'00001000'
+     d  CURLPROTO_IMAPS...
+     d                 c                   X'00002000'
+     d  CURLPROTO_POP3...
+     d                 c                   X'00004000'
+     d  CURLPROTO_POP3S...
+     d                 c                   X'00008000'
+     d  CURLPROTO_SMTP...
+     d                 c                   X'00010000'
+     d  CURLPROTO_SMTPS...
+     d                 c                   X'00020000'
+     d  CURLPROTO_RTSP...
+     d                 c                   X'00040000'
+     d  CURLPROTO_RTMP...
+     d                 c                   X'00080000'
+     d  CURLPROTO_RTMPT...
+     d                 c                   X'00100000'
+     d  CURLPROTO_RTMPTE...
+     d                 c                   X'00200000'
+     d  CURLPROTO_RTMPE...
+     d                 c                   X'00400000'
+     d  CURLPROTO_RTMPS...
+     d                 c                   X'00800000'
+     d  CURLPROTO_RTMPTS...
+     d                 c                   X'01000000'
+     d  CURLPROTO_GOPHER...
+     d                 c                   X'02000000'
+      *
+     d CURLoption      s             10i 0 based(######ptr######)               Enum
+     d  CURLOPT_FILE   c                   10001
+     d  CURLOPT_WRITEDATA...
+     d                 c                   10001
+     d  CURLOPT_URL    c                   10002
+     d  CURLOPT_PORT   c                   00003
+     d  CURLOPT_PROXY  c                   10004
+     d  CURLOPT_USERPWD...
+     d                 c                   10005
+     d  CURLOPT_PROXYUSERPWD...
+     d                 c                   10006
+     d  CURLOPT_RANGE  c                   10007
+     d  CURLOPT_INFILE...
+     d                 c                   10009
+     d  CURLOPT_READDATA...
+     d                 c                   10009
+     d  CURLOPT_ERRORBUFFER...
+     d                 c                   10010
+     d  CURLOPT_WRITEFUNCTION...
+     d                 c                   20011
+     d  CURLOPT_READFUNCTION...
+     d                 c                   20012
+     d  CURLOPT_TIMEOUT...
+     d                 c                   00013
+     d  CURLOPT_INFILESIZE...
+     d                 c                   00014
+     d  CURLOPT_POSTFIELDS...
+     d                 c                   10015
+     d  CURLOPT_REFERER...
+     d                 c                   10016
+     d  CURLOPT_FTPPORT...
+     d                 c                   10017
+     d  CURLOPT_USERAGENT...
+     d                 c                   10018
+     d  CURLOPT_LOW_SPEED_LIMIT...
+     d                 c                   00019
+     d  CURLOPT_LOW_SPEED_TIME...
+     d                 c                   00020
+     d  CURLOPT_RESUME_FROM...
+     d                 c                   00021
+     d  CURLOPT_COOKIE...
+     d                 c                   10022
+     d  CURLOPT_HTTPHEADER...
+     d                 c                   10023
+     d  CURLOPT_RTSPHEADER...
+     d                 c                   10023
+     d  CURLOPT_HTTPPOST...
+     d                 c                   10024
+     d  CURLOPT_SSLCERT...
+     d                 c                   10025
+     d  CURLOPT_SSLCERTPASSWD...
+     d                 c                   10026
+     d  CURLOPT_KEYPASSWD...
+     d                 c                   10026
+     d  CURLOPT_CRLF   c                   00027
+     d  CURLOPT_QUOTE  c                   10028
+     d  CURLOPT_WRITEHEADER...
+     d                 c                   10029
+     d  CURLOPT_HEADERDATA...
+     d                 c                   10029
+     d  CURLOPT_COOKIEFILE...
+     d                 c                   10031
+     d  CURLOPT_SSLVERSION...
+     d                 c                   00032
+     d  CURLOPT_TIMECONDITION...
+     d                 c                   00033
+     d  CURLOPT_TIMEVALUE...
+     d                 c                   00034
+     d  CURLOPT_CUSTOMREQUEST...
+     d                 c                   10036
+     d  CURLOPT_STDERR...
+     d                 c                   10037
+     d  CURLOPT_POSTQUOTE...
+     d                 c                   10039
+     d  CURLOPT_WRITEINFO...
+     d                 c                   10040
+     d  CURLOPT_VERBOSE...
+     d                 c                   00041
+     d  CURLOPT_HEADER...
+     d                 c                   00042
+     d  CURLOPT_NOPROGRESS...
+     d                 c                   00043
+     d  CURLOPT_NOBODY...
+     d                 c                   00044
+     d  CURLOPT_FAILONERROR...
+     d                 c                   00045
+     d  CURLOPT_UPLOAD...
+     d                 c                   00046
+     d  CURLOPT_POST   c                   00047
+     d  CURLOPT_DIRLISTONLY...
+     d                 c                   00048
+     d  CURLOPT_APPEND...
+     d                 c                   00050
+     d  CURLOPT_NETRC  c                   00051
+     d  CURLOPT_FOLLOWLOCATION...
+     d                 c                   00052
+     d  CURLOPT_TRANSFERTEXT...
+     d                 c                   00053
+     d  CURLOPT_PUT    c                   00054
+     d  CURLOPT_PROGRESSFUNCTION...
+     d                 c                   20056
+     d  CURLOPT_PROGRESSDATA...
+     d                 c                   10057
+     d  CURLOPT_AUTOREFERER...
+     d                 c                   00058
+     d  CURLOPT_PROXYPORT...
+     d                 c                   00059
+     d  CURLOPT_POSTFIELDSIZE...
+     d                 c                   00060
+     d  CURLOPT_HTTPPROXYTUNNEL...
+     d                 c                   00061
+     d  CURLOPT_INTERFACE...
+     d                 c                   10062
+     d  CURLOPT_KRBLEVEL...
+     d                 c                   10063
+     d  CURLOPT_SSL_VERIFYPEER...
+     d                 c                   00064
+     d  CURLOPT_CAINFO...
+     d                 c                   10065
+     d  CURLOPT_MAXREDIRS...
+     d                 c                   00068
+     d  CURLOPT_FILETIME...
+     d                 c                   00069
+     d  CURLOPT_TELNETOPTIONS...
+     d                 c                   10070
+     d  CURLOPT_MAXCONNECTS...
+     d                 c                   00071
+     d  CURLOPT_CLOSEPOLICY...
+     d                 c                   00072
+     d  CURLOPT_FRESH_CONNECT...
+     d                 c                   00074
+     d  CURLOPT_FORBID_REUSE...
+     d                 c                   00075
+     d  CURLOPT_RANDOM_FILE...
+     d                 c                   10076
+     d  CURLOPT_EGDSOCKET...
+     d                 c                   10077
+     d  CURLOPT_CONNECTTIMEOUT...
+     d                 c                   00078
+     d  CURLOPT_HEADERFUNCTION...
+     d                 c                   20079
+     d  CURLOPT_HTTPGET...
+     d                 c                   00080
+     d  CURLOPT_SSL_VERIFYHOST...
+     d                 c                   00081
+     d  CURLOPT_COOKIEJAR...
+     d                 c                   10082
+     d  CURLOPT_SSL_CIPHER_LIST...
+     d                 c                   10083
+     d  CURLOPT_HTTP_VERSION...
+     d                 c                   00084
+     d  CURLOPT_FTP_USE_EPSV...
+     d                 c                   00085
+     d  CURLOPT_SSLCERTTYPE...
+     d                 c                   10086
+     d  CURLOPT_SSLKEY...
+     d                 c                   10087
+     d  CURLOPT_SSLKEYTYPE...
+     d                 c                   10088
+     d  CURLOPT_SSLENGINE...
+     d                 c                   10089
+     d  CURLOPT_SSLENGINE_DEFAULT...
+     d                 c                   00090
+     d  CURLOPT_DNS_USE_GLOBAL_CACHE...
+     d                 c                   00091
+     d  CURLOPT_DNS_CACHE_TIMEOUT...
+     d                 c                   00092
+     d  CURLOPT_PREQUOTE...
+     d                 c                   10093
+     d  CURLOPT_DEBUGFUNCTION...
+     d                 c                   20094
+     d  CURLOPT_DEBUGDATA...
+     d                 c                   10095
+     d  CURLOPT_COOKIESESSION...
+     d                 c                   00096
+     d  CURLOPT_CAPATH...
+     d                 c                   10097
+     d  CURLOPT_BUFFERSIZE...
+     d                 c                   00098
+     d  CURLOPT_NOSIGNAL...
+     d                 c                   00099
+     d  CURLOPT_SHARE  c                   10100
+     d  CURLOPT_PROXYTYPE...
+     d                 c                   00101
+     d  CURLOPT_ENCODING...
+     d                 c                   10102
+     d  CURLOPT_PRIVATE...
+     d                 c                   10103
+     d  CURLOPT_HTTP200ALIASES...
+     d                 c                   10104
+     d  CURLOPT_UNRESTRICTED_AUTH...
+     d                 c                   00105
+     d  CURLOPT_FTP_USE_EPRT...
+     d                 c                   00106
+     d  CURLOPT_HTTPAUTH...
+     d                 c                   00107
+     d  CURLOPT_SSL_CTX_FUNCTION...
+     d                 c                   20108
+     d  CURLOPT_SSL_CTX_DATA...
+     d                 c                   10109
+     d  CURLOPT_FTP_CREATE_MISSING_DIRS...
+     d                 c                   00110
+     d  CURLOPT_PROXYAUTH...
+     d                 c                   00111
+     d  CURLOPT_FTP_RESPONSE_TIMEOUT...
+     d                 c                   00112
+     d  CURLOPT_IPRESOLVE...
+     d                 c                   00113
+     d  CURLOPT_MAXFILESIZE...
+     d                 c                   00114
+     d  CURLOPT_INFILESIZE_LARGE...
+     d                 c                   30115
+     d  CURLOPT_RESUME_FROM_LARGE...
+     d                 c                   30116
+     d  CURLOPT_MAXFILESIZE_LARGE...
+     d                 c                   30117
+     d  CURLOPT_NETRC_FILE...
+     d                 c                   10118
+     d  CURLOPT_USE_SSL...
+     d                 c                   00119
+     d  CURLOPT_POSTFIELDSIZE_LARGE...
+     d                 c                   30120
+     d  CURLOPT_TCP_NODELAY...
+     d                 c                   00121
+     d  CURLOPT_FTPSSLAUTH...
+     d                 c                   00129
+     d  CURLOPT_IOCTLFUNCTION...
+     d                 c                   20130
+     d  CURLOPT_IOCTLDATA...
+     d                 c                   10131
+     d  CURLOPT_FTP_ACCOUNT...
+     d                 c                   10134
+     d  CURLOPT_COOKIELIST...
+     d                 c                   10135
+     d  CURLOPT_IGNORE_CONTENT_LENGTH...
+     d                 c                   00136
+     d  CURLOPT_FTP_SKIP_PASV_IP...
+     d                 c                   00137
+     d  CURLOPT_FTP_FILEMETHOD...
+     d                 c                   00138
+     d  CURLOPT_LOCALPORT...
+     d                 c                   00139
+     d  CURLOPT_LOCALPORTRANGE...
+     d                 c                   00140
+     d  CURLOPT_CONNECT_ONLY...
+     d                 c                   00141
+     d  CURLOPT_CONV_FROM_NETWORK_FUNCTION...
+     d                 c                   20142
+     d  CURLOPT_CONV_TO_NETWORK_FUNCTION...
+     d                 c                   20143
+     d  CURLOPT_CONV_FROM_UTF8_FUNCTION...
+     d                 c                   20144
+     d  CURLOPT_MAX_SEND_SPEED_LARGE...
+     d                 c                   30145
+     d  CURLOPT_MAX_RECV_SPEED_LARGE...
+     d                 c                   30146
+     d  CURLOPT_FTP_ALTERNATIVE_TO_USER...
+     d                 c                   10147
+     d  CURLOPT_SOCKOPTFUNCTION...
+     d                 c                   20148
+     d  CURLOPT_SOCKOPTDATA...
+     d                 c                   10149
+     d  CURLOPT_SSL_SESSIONID_CACHE...
+     d                 c                   00150
+     d  CURLOPT_SSH_AUTH_TYPES...
+     d                 c                   00151
+     d  CURLOPT_SSH_PUBLIC_KEYFILE...
+     d                 c                   10152
+     d  CURLOPT_SSH_PRIVATE_KEYFILE...
+     d                 c                   10153
+     d  CURLOPT_FTP_SSL_CCC...
+     d                 c                   00154
+     d  CURLOPT_TIMEOUT_MS...
+     d                 c                   00155
+     d  CURLOPT_CONNECTTIMEOUT_MS...
+     d                 c                   00156
+     d  CURLOPT_HTTP_TRANSFER_DECODING...
+     d                 c                   00157
+     d  CURLOPT_HTTP_CONTENT_DECODING...
+     d                 c                   00158
+     d  CURLOPT_NEW_FILE_PERMS...
+     d                 c                   00159
+     d  CURLOPT_NEW_DIRECTORY_PERMS...
+     d                 c                   00160
+     d  CURLOPT_POSTREDIR...
+     d                 c                   00161
+     d  CURLOPT_SSH_HOST_PUBLIC_KEY_MD5...
+     d                 c                   10162
+     d  CURLOPT_OPENSOCKETFUNCTION...
+     d                 c                   20163
+     d  CURLOPT_OPENSOCKETDATA...
+     d                 c                   10164
+     d  CURLOPT_COPYPOSTFIELDS...
+     d                 c                   10165
+     d  CURLOPT_PROXY_TRANSFER_MODE...
+     d                 c                   00166
+     d  CURLOPT_SEEKFUNCTION...
+     d                 c                   20167
+     d  CURLOPT_SEEKDATA...
+     d                 c                   10168
+     d  CURLOPT_CRLFILE...
+     d                 c                   10169
+     d  CURLOPT_ISSUERCERT...
+     d                 c                   10170
+     d  CURLOPT_ADDRESS_SCOPE...
+     d                 c                   00171
+     d  CURLOPT_CERTINFO...
+     d                 c                   00172
+     d  CURLOPT_USERNAME...
+     d                 c                   10173
+     d  CURLOPT_PASSWORD...
+     d                 c                   10174
+     d  CURLOPT_PROXYUSERNAME...
+     d                 c                   10175
+     d  CURLOPT_PROXYPASSWORD...
+     d                 c                   10176
+     d  CURLOPT_NOPROXY...
+     d                 c                   10177
+     d  CURLOPT_TFTP_BLKSIZE...
+     d                 c                   00178
+     d  CURLOPT_SOCKS5_GSSAPI_SERVICE...
+     d                 c                   10179
+     d  CURLOPT_SOCKS5_GSSAPI_NEC...
+     d                 c                   00180
+     d  CURLOPT_PROTOCOLS...
+     d                 c                   00181
+     d  CURLOPT_REDIR_PROTOCOLS...
+     d                 c                   00182
+     d  CURLOPT_SSH_KNOWNHOSTS...
+     d                 c                   10183
+     d  CURLOPT_SSH_KEYFUNCTION...
+     d                 c                   20184
+     d  CURLOPT_SSH_KEYDATA...
+     d                 c                   10185
+     d  CURLOPT_MAIL_FROM...
+     d                 c                   10186
+     d  CURLOPT_MAIL_RCPT...
+     d                 c                   10187
+     d  CURLOPT_FTP_USE_PRET...
+     d                 c                   00188
+     d  CURLOPT_RTSP_REQUEST...
+     d                 c                   00189
+     d  CURLOPT_RTSP_SESSION_ID...
+     d                 c                   10190
+     d  CURLOPT_RTSP_STREAM_URI...
+     d                 c                   10191
+     d  CURLOPT_RTSP_TRANSPORT...
+     d                 c                   10192
+     d  CURLOPT_RTSP_CLIENT_CSEQ...
+     d                 c                   00193
+     d  CURLOPT_RTSP_SERVER_CSEQ...
+     d                 c                   00194
+     d  CURLOPT_INTERLEAVEDATA...
+     d                 c                   10195
+     d  CURLOPT_INTERLEAVEFUNCTION...
+     d                 c                   20196
+     d  CURLOPT_WILDCARDMATCH...
+     d                 c                   00197
+     d  CURLOPT_CHUNK_BGN_FUNCTION...
+     d                 c                   20198
+     d  CURLOPT_CHUNK_END_FUNCTION...
+     d                 c                   20199
+     d  CURLOPT_FNMATCH_FUNCTION...
+     d                 c                   20200
+     d  CURLOPT_CHUNK_DATA...
+     d                 c                   10201
+     d  CURLOPT_FNMATCH_DATA...
+     d                 c                   10202
+      *
+     d  CURLOPT_SERVER_RESPONSE_TIMEOUT...
+     d                 c                   00112
+     d  CURLOPT_POST301...
+     d                 c                   00161                                Obsolescent
+      *
+     d CURLFORMcode    s             10i 0 based(######ptr######)               Enum
+     d  CURL_FORMADD_OK...
+     d                 c                   0
+     d  CURL_FORMADD_MEMORY...
+     d                 c                   1
+     d  CURL_FORMADD_OPTION_TWICE...
+     d                 c                   2
+     d  CURL_FORMADD_NULL...
+     d                 c                   3
+     d  CURL_FORMADD_UNKNOWN_OPTION...
+     d                 c                   4
+     d  CURL_FORMADD_INCOMPLETE...
+     d                 c                   5
+     d  CURL_FORMADD_ILLEGAL_ARRAY...
+     d                 c                   6
+     d  CURL_FORMADD_DISABLED...
+     d                 c                   7
+      *
+     d CURLformoption  s             10i 0 based(######ptr######)               Enum
+     d  CURLFORM_NOTHING...
+     d                 c                   0
+     d  CURLFORM_COPYNAME...
+     d                 c                   1
+     d  CURLFORM_PTRNAME...
+     d                 c                   2
+     d  CURLFORM_NAMELENGTH...
+     d                 c                   3
+     d  CURLFORM_COPYCONTENTS...
+     d                 c                   4
+     d  CURLFORM_PTRCONTENTS...
+     d                 c                   5
+     d  CURLFORM_CONTENTSLENGTH...
+     d                 c                   6
+     d  CURLFORM_FILECONTENT...
+     d                 c                   7
+     d  CURLFORM_ARRAY...
+     d                 c                   8
+     d  CURLFORM_OBSOLETE...
+     d                 c                   9
+     d  CURLFORM_FILE...
+     d                 c                   10
+     d  CURLFORM_BUFFER...
+     d                 c                   11
+     d  CURLFORM_BUFFERPTR...
+     d                 c                   12
+     d  CURLFORM_BUFFERLENGTH...
+     d                 c                   13
+     d  CURLFORM_CONTENTTYPE...
+     d                 c                   14
+     d  CURLFORM_CONTENTHEADER...
+     d                 c                   15
+     d  CURLFORM_FILENAME...
+     d                 c                   16
+     d  CURLFORM_END...
+     d                 c                   17
+     d  CURLFORM_OBSOLETE2...
+     d                 c                   18
+     d  CURLFORM_STREAM...
+     d                 c                   19
+      *
+     d CURLINFO        s             10i 0 based(######ptr######)               Enum
+     d  CURLINFO_EFFECTIVE_URL...                                               CURLINFO_STRING + 1
+     d                 c                   X'00100001'
+     d  CURLINFO_RESPONSE_CODE...                                               CURLINFO_LONG   + 2
+     d                 c                   X'00200002'
+     d  CURLINFO_TOTAL_TIME...                                                  CURLINFO_DOUBLE + 3
+     d                 c                   X'00300003'
+     d  CURLINFO_NAMELOOKUP_TIME...                                             CURLINFO_DOUBLE + 4
+     d                 c                   X'00300004'
+     d  CURLINFO_CONNECT_TIME...                                                CURLINFO_DOUBLE + 5
+     d                 c                   X'00300005'
+     d  CURLINFO_PRETRANSFER_TIME...                                            CURLINFO_DOUBLE + 6
+     d                 c                   X'00300006'
+     d  CURLINFO_SIZE_UPLOAD...                                                 CURLINFO_DOUBLE + 7
+     d                 c                   X'00300007'
+     d  CURLINFO_SIZE_DOWNLOAD...                                               CURLINFO_DOUBLE + 8
+     d                 c                   X'00300008'
+     d  CURLINFO_SPEED_DOWNLOAD...                                              CURLINFO_DOUBLE + 9
+     d                 c                   X'00300009'
+     d  CURLINFO_SPEED_UPLOAD...                                                CURLINFO_DOUBLE + 10
+     d                 c                   X'0030000A'
+     d  CURLINFO_HEADER_SIZE...                                                 CURLINFO_LONG   + 11
+     d                 c                   X'0020000B'
+     d  CURLINFO_REQUEST_SIZE...                                                CURLINFO_LONG   + 12
+     d                 c                   X'0020000C'
+     d  CURLINFO_SSL_VERIFYRESULT...                                            CURLINFO_LONG   + 13
+     d                 c                   X'0020000D'
+     d  CURLINFO_FILETIME...                                                    CURLINFO_LONG   + 14
+     d                 c                   X'0020000E'
+     d  CURLINFO_CONTENT_LENGTH_DOWNLOAD...                                     CURLINFO_DOUBLE + 15
+     d                 c                   X'0030000F'
+     d  CURLINFO_CONTENT_LENGTH_UPLOAD...                                       CURLINFO_DOUBLE + 16
+     d                 c                   X'00300010'
+     d  CURLINFO_STARTTRANSFER_TIME...                                          CURLINFO_DOUBLE + 17
+     d                 c                   X'00300011'
+     d  CURLINFO_CONTENT_TYPE...                                                CURLINFO_STRING + 18
+     d                 c                   X'00100012'
+     d  CURLINFO_REDIRECT_TIME...                                               CURLINFO_DOUBLE + 19
+     d                 c                   X'00300013'
+     d  CURLINFO_REDIRECT_COUNT...                                              CURLINFO_LONG   + 20
+     d                 c                   X'00200014'
+     d  CURLINFO_PRIVATE...                                                     CURLINFO_STRING + 21
+     d                 c                   X'00100015'
+     d  CURLINFO_HTTP_CONNECTCODE...                                            CURLINFO_LONG   + 22
+     d                 c                   X'00200016'
+     d  CURLINFO_HTTPAUTH_AVAIL...                                              CURLINFO_LONG   + 23
+     d                 c                   X'00200017'
+     d  CURLINFO_PROXYAUTH_AVAIL...                                             CURLINFO_LONG   + 24
+     d                 c                   X'00200018'
+     d  CURLINFO_OS_ERRNO...                                                    CURLINFO_LONG   + 25
+     d                 c                   X'00200019'
+     d  CURLINFO_NUM_CONNECTS...                                                CURLINFO_LONG   + 26
+     d                 c                   X'0020001A'
+     d  CURLINFO_SSL_ENGINES...                                                 CURLINFO_SLIST  + 27
+     d                 c                   X'0040001B'
+     d  CURLINFO_COOKIELIST...                                                  CURLINFO_SLIST  + 28
+     d                 c                   X'0040001C'
+     d  CURLINFO_LASTSOCKET...                                                  CURLINFO_LONG   + 29
+     d                 c                   X'0020001D'
+     d  CURLINFO_FTP_ENTRY_PATH...                                              CURLINFO_STRING + 30
+     d                 c                   X'0010001E'
+     d  CURLINFO_REDIRECT_URL...                                                CURLINFO_STRING + 31
+     d                 c                   X'0010001F'
+     d  CURLINFO_PRIMARY_IP...                                                  CURLINFO_STRING + 32
+     d                 c                   X'00100020'
+     d  CURLINFO_APPCONNECT_TIME...                                             CURLINFO_DOUBLE + 33
+     d                 c                   X'00300021'
+     d  CURLINFO_CERTINFO...                                                    CURLINFO_SLIST + 34
+     d                 c                   X'00400022'
+     d  CURLINFO_CONDITION_UNMET...                                             CURLINFO_LONG + 35
+     d                 c                   X'00200023'
+     d  CURLINFO_RTSP_SESSION_ID...                                             CURLINFO_STRING + 36
+     d                 c                   X'00100024'
+     d  CURLINFO_RTSP_CLIENT_CSEQ...                                            CURLINFO_LONG + 37
+     d                 c                   X'00200025'
+     d  CURLINFO_RTSP_SERVER_CSEQ...                                            CURLINFO_LONG + 38
+     d                 c                   X'00200026'
+     d  CURLINFO_RTSP_CSEQ_RECV...                                              CURLINFO_LONG + 39
+     d                 c                   X'00200027'
+     d  CURLINFO_PRIMARY_PORT...                                                CURLINFO_LONG + 40
+     d                 c                   X'00200028'
+     d  CURLINFO_LOCAL_IP...                                                    CURLINFO_STRING + 41
+     d                 c                   X'00100029'
+     d  CURLINFO_LOCAL_PORT...                                                  CURLINFO_LONG + 42
+     d                 c                   X'0020002A'
+      *
+     d  CURLINFO_HTTP_CODE...                                                   Old ...RESPONSE_CODE
+     d                 c                   X'00200002'
+      *
+     d curl_closepolicy...
+     d                 s             10i 0 based(######ptr######)               Enum
+     d  CURLCLOSEPOLICY_OLDEST...
+     d                 c                   1
+     d  CURLCLOSEPOLICY_LEAST_RECENTLY_USED...
+     d                 c                   2
+     d  CURLCLOSEPOLICY_LEAST_TRAFFIC...
+     d                 c                   3
+     d  CURLCLOSEPOLICY_SLOWEST...
+     d                 c                   4
+     d  CURLCLOSEPOLICY_CALLBACK...
+     d                 c                   5
+      *
+     d curl_lock_data...
+     d                 s             10i 0 based(######ptr######)               Enum
+     d  CURL_LOCK_DATA_NONE...
+     d                 c                   0
+     d  CURL_LOCK_DATA_SHARE...
+     d                 c                   1
+     d  CURL_LOCK_DATA_COOKIE...
+     d                 c                   2
+     d  CURL_LOCK_DATA_DNS...
+     d                 c                   3
+     d  CURL_LOCK_DATA_SSL_SESSION...
+     d                 c                   4
+     d  CURL_LOCK_DATA_CONNECT...
+     d                 c                   5
+     d  CURL_LOCK_DATA_LAST...
+     d                 c                   6
+      *
+     d curl_lock_access...
+     d                 s             10i 0 based(######ptr######)               Enum
+     d  CURL_LOCK_ACCESS_NONE...
+     d                 c                   0
+     d  CURL_LOCK_ACCESS_SHARED...
+     d                 c                   1
+     d  CURL_LOCK_ACCESS_SINGLE...
+     d                 c                   2
+      *
+     d curl_TimeCond   s             10i 0 based(######ptr######)               Enum
+     d  CURL_TIMECOND_NONE...
+     d                 c                   0
+     d  CURL_TIMECOND_IFMODSINCE...
+     d                 c                   1
+     d  CURL_TIMECOND_LASTMOD...
+     d                 c                   2
+     d  CURL_TIMECOND_LAST...
+     d                 c                   3
+      *
+     d CURLSHcode      s             10i 0 based(######ptr######)               Enum
+     d  CURLSHE_OK     c                   0
+     d  CURLSHE_BAD_OPTION...
+     d                 c                   1
+     d  CURLSHE_IN_USE...
+     d                 c                   2
+     d  CURLSHE_INVALID...
+     d                 c                   3
+     d  CURLSHE_NOMEM...
+     d                 c                   4
+      *
+     d CURLSHoption...
+     d                 s             10i 0 based(######ptr######)               Enum
+     d  CURLSHOPT_SHARE...
+     d                 c                   1
+     d  CURLSHOPT_UNSHARE...
+     d                 c                   2
+     d  CURLSHOPT_LOCKFUNC...
+     d                 c                   3
+     d  CURLSHOPT_UNLOCKFUNC...
+     d                 c                   4
+     d  CURLSHOPT_USERDATA...
+     d                 c                   5
+      *
+     d CURLversion     s             10i 0 based(######ptr######)               Enum
+     d  CURLVERSION_FIRST...
+     d                 c                   0
+     d  CURLVERSION_SECOND...
+     d                 c                   1
+     d  CURLVERSION_THIRD...
+     d                 c                   2
+     d  CURLVERSION_FOURTH...
+     d                 c                   3
+     d  CURLVERSION_NOW...
+     d                 c                   3                                    CURLVERSION_FOURTH
+      *
+     d curlsocktype    s             10i 0 based(######ptr######)               Enum
+     d  CURLSOCKTYPE_IPCXN...
+     d                 c                   0
+      *
+     d CURLMcode       s             10i 0 based(######ptr######)               Enum
+     d  CURLM_CALL_MULTI_PERFORM...
+     d                 c                   -1
+     d  CURLM_CALL_MULTI_SOCKET...
+     d                 c                   -1
+     d  CURLM_OK       c                   0
+     d  CURLM_BAD_HANDLE...
+     d                 c                   1
+     d  CURLM_BAD_EASY_HANDLE...
+     d                 c                   2
+     d  CURLM_OUT_OF_MEMORY...
+     d                 c                   3
+     d  CURLM_INTERNAL_ERROR...
+     d                 c                   4
+     d  CURLM_BAD_SOCKET...
+     d                 c                   5
+     d  CURLM_UNKNOWN_OPTION...
+     d                 c                   6
+     d  CURLM_LAST     c                   7
+      *
+     d CURLMSG         s             10i 0 based(######ptr######)               Enum
+     d  CURLMSG_NONE   c                   0
+     d  CURLMSG_DONE   c                   1
+      *
+     d CURLMoption     s             10i 0 based(######ptr######)               Enum
+     d  CURLMOPT_SOCKETFUNCTION...
+     d                 c                   20001
+     d  CURLMOPT_SOCKETDATA...
+     d                 c                   10002
+     d  CURLMOPT_PIPELINING...
+     d                 c                   00003
+     d  CURLMOPT_TIMERFUNCTION...
+     d                 c                   20004
+     d  CURLMOPT_TIMERDATA...
+     d                 c                   10005
+     d  CURLMOPT_MAXCONNECTS...
+     d                 c                   00006
+      *
+      *  Public API enums for RTSP requests.
+      *
+     d CURLRTSPREQ_NONE...
+     d                 c                   0
+     d CURL_RTSPREQ_OPTIONS...
+     d                 c                   1
+     d CURL_RTSPREQ_DESCRIBE...
+     d                 c                   2
+     d CURL_RTSPREQ_ANNOUNCE...
+     d                 c                   3
+     d CURL_RTSPREQ_SETUP...
+     d                 c                   4
+     d CURL_RTSPREQ_PLAY...
+     d                 c                   5
+     d CURL_RTSPREQ_PAUSE...
+     d                 c                   6
+     d CURL_RTSPREQ_TEARDOWN...
+     d                 c                   7
+     d CURL_RTSPREQ_GET_PARAMETER...
+     d                 c                   8
+     d CURL_RTSPREQ_SET_PARAMETER...
+     d                 c                   9
+     d CURL_RTSPREQ_RECORD...
+     d                 c                   10
+     d CURL_RTSPREQ_RECEIVE...
+     d                 c                   12
+     d CURL_RTSPREQ_LAST...
+     d                 c                   13
+
+      *
+      *  Renaming CURLMsg to CURL_Msg to avoid case-insensivity name clash.
+      *
+     d CURL_Msg        ds                  based(######ptr######)
+     d                                     qualified
+     d  msg                                like(CURLMSG)
+     d  easy_handle                    *                                        CURL *
+     d  data                           *
+     d   whatever                      *   overlay(data)                        void *
+     d   result                            overlay(data) like(CURLcode)
+      *
+     d curl_http_post...
+     d                 ds                  based(######ptr######)
+     d                                     qualified
+     d  next                           *                                        curl_httppost *
+     d  name                           *                                        char *
+     d  namelength                   10i 0                                      long
+     d  contents                       *                                        char *
+     d  contentslength...
+     d                               10i 0                                      long
+     d  buffer                         *                                        char *
+     d  bufferlength...
+     d                               10i 0                                      long
+     d  contenttype                    *                                        char *
+     d  contentheader...
+     d                                 *                                        curl_slist *
+     d  more                           *                                        curl_httppost *
+     d  flags                        10i 0                                      long
+     d  showfilename                   *                                        char *
+     d  userp                          *                                        void *
+      *
+     d curl_sockaddr   ds                  based(######ptr######)
+     d                                     qualified
+     d  family                       10i 0
+     d  socktype                     10i 0
+     d  protocol                     10i 0
+     d  addrlen                      10u 0
+     d  addr                         16                                         struct sockaddr
+      *
+     d curl_khkey      ds                  based(######ptr######)
+     d                                     qualified
+     d  key                            *                                        const char *
+     d  len                          10u 0
+     d  keytype                      10i 0
+      *
+     d CURLKHTYPE_UNKNOWN...
+     d                 c                   0
+     d CURLKHTYPE_RSA1...
+     d                 c                   1
+     d CURLKHTYPE_RSA...
+     d                 c                   2
+     d CURLKHTYPE_DSS...
+     d                 c                   3
+      *
+     d curl_forms      ds                  based(######ptr######)
+     d                                     qualified
+     d  option                             like(CURLformoption)
+     d  value                          *                                        const char *
+     d   value_ptr                     *   overlay(value)
+     d   value_procptr...
+     d                                 *   overlay(value) procptr
+      *
+     d curl_slist      ds                  based(######ptr######)
+     d                                     qualified
+     d  data                           *                                        char *
+     d  next                           *                                        struct curl_slist *
+      *
+     d curl_version_info_data...
+     d                 ds                  based(######ptr######)
+     d                                     qualified
+     d  age                                like(CURLversion)
+     d  version                        *                                        const char *
+     d  version_num                  10u 0
+     d  host                           *                                        const char *
+     d  features                     10i 0
+     d  ssl_version                    *                                        const char *
+     d  ssl_version_num...
+     d                               10i 0                                      long
+     d  libz_version                   *                                        const char *
+     d  protocols                      *                                        const char * const *
+     d  ares                           *                                        const char *
+     d  ares_num                     10i 0
+     d  libidn                         *                                        const char *
+     d  iconv_ver_num...
+     d                               10i 0
+     d  libssh_version...
+     d                                 *                                        const char *
+      *
+     d curl_certinfo   ds                  based(######ptr######)
+     d                                     qualified
+     d  num_of_certs                 10i 0
+     d  certinfo                       *                                        struct curl_slist **
+      *
+     d curl_fistrgs    ds                  based(######ptr######)
+     d                                     qualified
+     d  time                           *                                        char *
+     d  perm                           *                                        char *
+     d  user                           *                                        char *
+     d  group                          *                                        char *
+     d  target                         *                                        char *
+      *
+     d curl_fileinfo   ds                  based(######ptr######)
+     d                                     qualified
+     d  filename                       *                                        char *
+     d  filetype                           like(curlfiletype)
+     d  time                         10i 0                                      time_t
+     d  perm                         10u 0
+     d  uid                          10i 0
+     d  gid                          10i 0
+     d  size                               like(curl_off_t)
+     d  hardlinks                    10i 0
+     d  strings                            likeds(curl_fistrgs)
+     d  flags                        10u 0
+     d  b_data                         *                                        char *
+     d  b_size                       10u 0                                      size_t
+     d  b_used                       10u 0                                      size_t
+      *
+     d curl_formget_callback...
+     d                 s               *   based(######ptr######) procptr
+      *
+     d curl_malloc_callback...
+     d                 s               *   based(######ptr######) procptr
+      *
+     d curl_free_callback...
+     d                 s               *   based(######ptr######) procptr
+      *
+     d curl_realloc_callback...
+     d                 s               *   based(######ptr######) procptr
+      *
+     d curl_strdup_callback...
+     d                 s               *   based(######ptr######) procptr
+      *
+     d curl_calloc_callback...
+     d                 s               *   based(######ptr######) procptr
+      *
+     d curl_lock_function...
+     d                 s               *   based(######ptr######) procptr
+      *
+     d curl_unlock_function...
+     d                 s               *   based(######ptr######) procptr
+      *
+     d curl_progress_callback...
+     d                 s               *   based(######ptr######) procptr
+      *
+     d curl_read_callback...
+     d                 s               *   based(######ptr######) procptr
+      *
+     d curl_write_callback...
+     d                 s               *   based(######ptr######) procptr
+      *
+     d curl_seek_callback...
+     d                 s               *   based(######ptr######) procptr
+      *
+     d curl_sockopt_callback...
+     d                 s               *   based(######ptr######) procptr
+      *
+     d curl_ioctl_callback...
+     d                 s               *   based(######ptr######) procptr
+      *
+     d curl_debug_callback...
+     d                 s               *   based(######ptr######) procptr
+      *
+     d curl_conv_callback...
+     d                 s               *   based(######ptr######) procptr
+      *
+     d curl_ssl_ctx_callback...
+     d                 s               *   based(######ptr######) procptr
+      *
+     d curl_socket_callback...
+     d                 s               *   based(######ptr######) procptr
+      *
+     d curl_opensocket_callback...
+     d                 s               *   based(######ptr######) procptr
+      *
+     d curl_sshkeycallback...
+     d                 s               *   based(######ptr######) procptr
+      *
+     d curl_chunk_bgn_callback...
+     d                 s               *   based(######ptr######) procptr
+      *
+     d curl_chunk_end_callback...
+     d                 s               *   based(######ptr######) procptr
+      *
+     d curl_fnmatch_callback...
+     d                 s               *   based(######ptr######) procptr
+      *
+      **************************************************************************
+      *                              Prototypes
+      **************************************************************************
+      *
+      *  This procedure as a variable parameter list.
+      *  This prototype allows use of an option array, or a single "object"
+      *    option. Other argument lists may be implemented by alias procedure
+      *    prototype definitions.
+      *
+     d curl_formadd    pr                  extproc('curl_formadd')
+     d                                     like(CURLFORMcode)
+     d  httppost                       *                                        curl_httppost *
+     d  lastpost                       *                                        curl_httppost *
+     d  option1                            value like(CURLFORMoption)           CURLFORM_ARRAY
+     d                                     options(*nopass)
+     d  object1                        *   value options(*string: *nopass)
+     d  option2                            value like(CURLFORMoption)           CURLFORM_END
+     d                                     options(*nopass)
+      *
+      *
+     d curl_strequal   pr            10i 0 extproc('curl_strequal')
+     d  s1                             *   value options(*string)
+     d  s2                             *   value options(*string)
+      *
+     d curl_strnequal  pr            10i 0 extproc('curl_strnequal')
+     d  s1                             *   value options(*string)
+     d  s2                             *   value options(*string)
+     d  n                            10u 0 value
+      *
+     d curl_formget    pr            10i 0 extproc('curl_formget')
+     d  form                           *   value                                curl_httppost *
+     d  arg                            *   value
+     d  append                             value like(curl_formget_callback)
+      *
+     d curl_formfree   pr                  extproc('curl_formfree')
+     d  form                           *   value                                curl_httppost *
+      *
+     d curl_getenv     pr              *   extproc('curl_getenv')
+     d  variable                       *   value options(*string)
+      *
+     d curl_version    pr              *   extproc('curl_version')
+      *
+     d curl_easy_escape...
+     d                 pr              *   extproc('curl_easy_escape')          char *
+     d  handle                         *   value                                CURL *
+     d  string                         *   value options(*string)
+     d  length                       10i 0 value
+      *
+     d curl_escape     pr              *   extproc('curl_escape')               char *
+     d  string                         *   value options(*string)
+     d  length                       10i 0 value
+      *
+     d curl_easy_unescape...
+     d                 pr              *   extproc('curl_easy_unescape')        char *
+     d  handle                         *   value                                CURL *
+     d  string                         *   value options(*string)
+     d  length                       10i 0 value
+     d  outlength                    10i 0 options(*omit)
+      *
+     d curl_unescape   pr              *   extproc('curl_unescape')             char *
+     d  string                         *   value options(*string)
+     d  length                       10i 0 value
+      *
+     d curl_free       pr                  extproc('curl_free')
+     d  p                              *   value
+      *
+     d curl_global_init...
+     d                 pr                  extproc('curl_global_init')
+     d                                     like(CURLcode)
+     d  flags                        10i 0 value
+      *
+     d curl_global_init_mem...
+     d                 pr                  extproc('curl_global_init_mem')
+     d                                     like(CURLcode)
+     d  m                                  value like(curl_malloc_callback)
+     d  f                                  value like(curl_free_callback)
+     d  r                                  value like(curl_realloc_callback)
+     d  s                                  value like(curl_strdup_callback)
+     d  c                                  value like(curl_calloc_callback)
+      *
+     d curl_global_cleanup...
+     d                 pr                  extproc('curl_global_cleanup')
+      *
+     d curl_slist_append...
+     d                 pr              *   extproc('curl_slist_append')         struct curl_slist *
+     d  list                           *   value                                struct curl_slist *
+     d  data                           *   value options(*string)               const char *
+      *
+     d curl_slist_free_all...
+     d                 pr                  extproc('curl_slist_free_all')
+     d  list                           *   value                                struct curl_slist *
+      *
+     d curl_getdate    pr            10i 0 extproc('curl_getdate')              time_t
+     d  p                              *   value options(*string)               const char *
+     d  unused                       10i 0 const options(*omit)                 time_t
+      *
+     d curl_share_init...
+     d                 pr              *   extproc('curl_share_init')           CURLSH * (= void *)
+      *
+      *  Variable argument type procedure.
+      *  Multiply prototyped to support all possible types.
+      *
+     d curl_share_setopt_int...
+     d                 pr                  extproc('curl_share_setopt')
+     d                                     like(CURLSHcode)
+     d  share                          *   value                                CURLSH * (= void *)
+     d  option                             value like(CURLSHoption)
+     d  intarg                       10i 0 value options(*nopass)
+      *
+     d curl_share_setopt_ptr...
+     d                 pr                  extproc('curl_share_setopt')
+     d                                     like(CURLSHcode)
+     d  share                          *   value                                CURLSH * (= void *)
+     d  option                             value like(CURLSHoption)
+     d  ptrarg                         *   value options(*nopass)
+      *
+     d curl_share_setopt_proc...
+     d                 pr                  extproc('curl_share_setopt')
+     d                                     like(CURLSHcode)
+     d  share                          *   value                                CURLSH * (= void *)
+     d  option                             value like(CURLSHoption)
+     d  procarg                        *   value procptr options(*nopass)
+      *
+     d curl_share_cleanup...
+     d                 pr                  extproc('curl_share_cleanup')
+     d                                     like(CURLSHcode)
+     d  share                          *   value                                CURLSH * (= void *)
+      *
+     d curl_version_info...
+     d                 pr              *   extproc('curl_version_info')         c_i_version_data *
+     d  version                            value like(CURLversion)
+      *
+     d curl_easy_strerror...
+     d                 pr              *   extproc('curl_easy_strerror')        const char *
+     d  code                               value like(CURLcode)
+      *
+     d curl_share_strerror...
+     d                 pr              *   extproc('curl_share_strerror')       const char *
+     d  code                               value like(CURLSHcode)
+      *
+     d curl_easy_init  pr              *   extproc('curl_easy_init')            CURL *
+      *
+      *  Multiple prototypes for vararg procedure curl_easy_setopt.
+      *
+     d curl_easy_setopt_long...
+     d                 pr                  extproc('curl_easy_setopt')
+     d                                     like(CURLcode)
+     d  curl                           *   value                                CURL *
+     d  option                             value like(CURLoption)
+     d  longarg                      10i 0 value options(*nopass)
+      *
+     d curl_easy_setopt_object...
+     d                 pr                  extproc('curl_easy_setopt')
+     d                                     like(CURLcode)
+     d  curl                           *   value                                CURL *
+     d  option                             value like(CURLoption)
+     d  objectarg                      *   value options(*string: *nopass)
+      *
+     d curl_easy_setopt_function...
+     d                 pr                  extproc('curl_easy_setopt')
+     d                                     like(CURLcode)
+     d  curl                           *   value                                CURL *
+     d  option                             value like(CURLoption)
+     d  functionarg                    *   value procptr options(*nopass)
+      *
+     d curl_easy_setopt_offset...
+     d                 pr                  extproc('curl_easy_setopt')
+     d                                     like(CURLcode)
+     d  curl                           *   value                                CURL *
+     d  option                             value like(CURLoption)
+     d  offsetarg                          value like(curl_off_t)
+     d                                     options(*nopass)
+      *
+      *
+     d curl_easy_perform...
+     d                 pr                  extproc('curl_easy_perform')
+     d                                     like(CURLcode)
+     d  curl                           *   value                                CURL *
+      *
+     d curl_easy_cleanup...
+     d                 pr                  extproc('curl_easy_cleanup')
+     d  curl                           *   value                                CURL *
+      *
+      *  Multiple prototypes for vararg procedure curl_easy_getinfo.
+      *
+     d curl_easy_getinfo_string...
+     d                 pr                  extproc('curl_easy_getinfo')
+     d                                     like(CURLcode)
+     d  curl                           *   value                                CURL *
+     d  info                               value like(CURLINFO)
+     d  stringarg                      *   options(*nopass)                     char *
+      *
+     d curl_easy_getinfo_long...
+     d                 pr                  extproc('curl_easy_getinfo')
+     d                                     like(CURLcode)
+     d  curl                           *   value                                CURL *
+     d  info                               value like(CURLINFO)
+     d  longarg                      10i 0 options(*nopass)
+      *
+     d curl_easy_getinfo_double...
+     d                 pr                  extproc('curl_easy_getinfo')
+     d                                     like(CURLcode)
+     d  curl                           *   value                                CURL *
+     d  info                               value like(CURLINFO)
+     d  doublearg                     8f   options(*nopass)
+      *
+     d curl_easy_getinfo_slist...
+     d                 pr                  extproc('curl_easy_getinfo')
+     d                                     like(CURLcode)
+     d  curl                           *   value                                CURL *
+     d  info                               value like(CURLINFO)
+     d  slistarg                       *   options(*nopass)                     struct curl_slist *
+      *
+      *
+     d curl_easy_duphandle...
+     d                 pr              *   extproc('curl_easy_duphandle')       CURL *
+     d  curl                           *   value                                CURL *
+      *
+     d curl_easy_reset...
+     d                 pr                  extproc('curl_easy_reset')
+     d  curl                           *   value                                CURL *
+      *
+     d curl_easy_recv...
+     d                 pr                  extproc('curl_easy_recv')
+     d                                     like(CURLcode)
+     d  curl                           *   value                                CURL *
+     d  buffer                         *   value                                void *
+     d  buflen                       10u 0 value                                size_t
+     d  n                            10u 0                                      size_t *
+      *
+     d curl_easy_send...
+     d                 pr                  extproc('curl_easy_send')
+     d                                     like(CURLcode)
+     d  curl                           *   value                                CURL *
+     d  buffer                         *   value                                const void *
+     d  buflen                       10u 0 value                                size_t
+     d  n                            10u 0                                      size_t *
+      *
+     d curl_easy_pause...
+     d                 pr                  extproc('curl_easy_pause')
+     d  curl                           *   value                                CURL *
+     d  bitmask                      10i 0 value
+      *
+     d curl_multi_init...
+     d                 pr              *   extproc('curl_multi_init')           CURLM *
+      *
+     d curl_multi_add_handle...
+     d                 pr                  extproc('curl_multi_add_handle')
+     d                                     like(CURLMcode)
+     d  multi_handle                   *   value                                CURLM *
+     d  curl_handle                    *   value                                CURL *
+      *
+     d curl_multi_remove_handle...
+     d                 pr                  extproc('curl_multi_remove_handle')
+     d                                     like(CURLMcode)
+     d  multi_handle                   *   value                                CURLM *
+     d  curl_handle                    *   value                                CURL *
+      *
+     d curl_multi_fdset...
+     d                 pr                  extproc('curl_multi_fdset')
+     d                                     like(CURLMcode)
+     d  multi_handle                   *   value                                CURLM *
+     d  read_fd_set               65535    options(*varsize)                    fd_set
+     d  write_fd_set              65535    options(*varsize)                    fd_set
+     d  exc_fd_set                65535    options(*varsize)                    fd_set
+     d  max_fd                       10i 0
+      *
+     d curl_multi_perform...
+     d                 pr                  extproc('curl_multi_perform')
+     d                                     like(CURLMcode)
+     d  multi_handle                   *   value                                CURLM *
+     d  running_handles...
+     d                               10i 0
+      *
+     d curl_multi_cleanup...
+     d                 pr                  extproc('curl_multi_cleanup')
+     d                                     like(CURLMcode)
+     d  multi_handle                   *   value                                CURLM *
+      *
+     d curl_multi_info_read...
+     d                 pr              *   extproc('curl_multi_info_read')      CURL_Msg *
+     d  multi_handle                   *   value                                CURLM *
+     d  msgs_in_queue                10i 0
+      *
+     d curl_multi_strerror...
+     d                 pr              *   extproc('curl_multi_strerror')       char *
+     d  code                               value like(CURLMcode)
+      *
+     d curl_multi_socket...
+     d                 pr                  extproc('curl_multi_socket')
+     d                                     like(CURLMcode)
+     d  multi_handle                   *   value                                CURLM *
+     d  s                                  value like(curl_socket_t)
+     d  running_handles...
+     d                               10i 0
+      *
+     d curl_multi_socket_action...
+     d                 pr                  extproc('curl_multi_socket_action')
+     d                                     like(CURLMcode)
+     d  multi_handle                   *   value                                CURLM *
+     d  s                                  value like(curl_socket_t)
+     d  ev_bitmask                   10i 0 value
+     d  running_handles...
+     d                               10i 0
+      *
+     d curl_multi_socket_all...
+     d                 pr                  extproc('curl_multi_socket_all')
+     d                                     like(CURLMcode)
+     d  multi_handle                   *   value                                CURLM *
+     d  running_handles...
+     d                               10i 0
+      *
+     d curl_multi_timeout...
+     d                 pr                  extproc('curl_multi_timeout')
+     d                                     like(CURLMcode)
+     d  multi_handle                   *   value                                CURLM *
+     d  milliseconds                 10i 0
+      *
+      *  Multiple prototypes for vararg procedure curl_multi_setopt.
+      *
+     d curl_multi_setopt_long...
+     d                 pr                  extproc('curl_multi_setopt')
+     d                                     like(CURLMcode)
+     d  multi_handle                   *   value                                CURLM *
+     d  option                             value like(CURLMoption)
+     d  longarg                      10i 0 value options(*nopass)
+      *
+     d curl_multi_setopt_object...
+     d                 pr                  extproc('curl_multi_setopt')
+     d                                     like(CURLMcode)
+     d  multi_handle                   *   value                                CURLM *
+     d  option                             value like(CURLMoption)
+     d  objectarg                      *   value options(*string: *nopass)
+      *
+     d curl_multi_setopt_function...
+     d                 pr                  extproc('curl_multi_setopt')
+     d                                     like(CURLMcode)
+     d  multi_handle                   *   value                                CURLM *
+     d  option                             value like(CURLMoption)
+     d  functionarg                    *   value procptr options(*nopass)
+      *
+     d curl_multi_setopt_offset...
+     d                 pr                  extproc('curl_multi_setopt')
+     d                                     like(CURLMcode)
+     d  multi_handle                   *   value                                CURLM *
+     d  option                             value like(CURLMoption)
+     d  offsetarg                          value like(curl_off_t)
+     d                                     options(*nopass)
+      *
+      *
+     d curl_multi_assign...
+     d                 pr                  extproc('curl_multi_assign')
+     d                                     like(CURLMcode)
+     d  multi_handle                   *   value                                CURLM *
+     d  sockfd                             value like(curl_socket_t)
+     d  sockp                          *   value                                void *
+      *
+      **************************************************************************
+      *                CCSID wrapper procedure prototypes
+      **************************************************************************
+      *
+     d curl_version_ccsid...
+     d                 pr              *   extproc('curl_version_ccsid')
+     d  ccsid                        10u 0 value
+      *
+     d curl_easy_escape_ccsid...
+     d                 pr              *   extproc('curl_easy_escape_ccsid')    char *
+     d  handle                         *   value                                CURL *
+     d  string                         *   value options(*string)
+     d  length                       10i 0 value
+     d  ccsid                        10u 0 value
+      *
+     d curl_easy_unescape_ccsid...
+     d                 pr              *   extproc('curl_easy_unescape_ccsid')  char *
+     d  handle                         *   value                                CURL *
+     d  string                         *   value options(*string)
+     d  length                       10i 0 value
+     d  outlength                    10i 0 options(*omit)
+     d  ccsid                        10u 0 value
+      *
+     d curl_slist_append_ccsid...
+     d                 pr              *   extproc('curl_slist_append_ccsid')   struct curl_slist *
+     d  list                           *   value                                struct curl_slist *
+     d  data                           *   value options(*string)               const char *
+     d  ccsid                        10u 0 value
+      *
+     d curl_getdate_ccsid...
+     d                 pr            10i 0 extproc('curl_getdate_ccsid')        time_t
+     d  p                              *   value options(*string)               const char *
+     d  unused                       10i 0 const options(*omit)                 time_t
+     d  ccsid                        10u 0 value
+      *
+     d curl_version_info_ccsid...
+     d                 pr              *   extproc('curl_version_info_ccsid')   c_i_version_data *
+     d  version                            value like(CURLversion)
+     d  ccsid                        10u 0 value
+      *
+     d curl_easy_strerror_ccsid...
+     d                 pr              *   extproc('curl_easy_strerror_ccsid')  const char *
+     d  code                               value like(CURLcode)
+     d  ccsid                        10u 0 value
+      *
+     d curl_share_strerror_ccsid...
+     d                 pr              *   extproc('curl_share_strerror_ccsid') const char *
+     d  code                               value like(CURLSHcode)
+     d  ccsid                        10u 0 value
+      *
+     d curl_multi_strerror_ccsid...
+     d                 pr              *   extproc('curl_multi_strerror_ccsid') char *
+     d  code                               value like(CURLMcode)
+     d  ccsid                        10u 0 value
+      *
+     d curl_easy_getinfo_ccsid...
+     d                 pr                  extproc('curl_easy_getinfo_ccsid')
+     d                                     like(CURLcode)
+     d  curl                           *   value                                CURL *
+     d  info                               value like(CURLINFO)
+     d  stringarg                      *   options(*nopass)                     char *
+     d  ccsid                        10u 0 value options(*nopass)
+      *
+     d curl_formadd_ccsid...
+     d                 pr                  extproc('curl_formadd_ccsid')
+     d                                     like(CURLFORMcode)
+     d  httppost                       *                                        curl_httppost *
+     d  lastpost                       *                                        curl_httppost *
+     d  option1                            value like(CURLFORMoption)           CURLFORM_ARRAY
+     d                                     options(*nopass)
+     d  object1                        *   value options(*string: *nopass)
+     d  option2                            value like(CURLFORMoption)           CURLFORM_END
+     d                                     options(*nopass)
+      *
+     d curl_formget_ccsid...
+     d                 pr            10i 0 extproc('curl_formget_ccsid')
+     d  form                           *   value                                curl_httppost *
+     d  arg                            *   value
+     d  append                             value like(curl_formget_callback)
+     d  ccsid                        10u 0 value
+      *
+     d curl_form_long_value...
+     d                 pr              *   extproc('curl_form_long_value')
+     d  value                        10i 0 value                                curl_httppost *
+      *
+     d curl_easy_setopt_ccsid...
+     d                 pr                  extproc('curl_easy_setopt_ccsid')
+     d                                     like(CURLcode)
+     d  curl                           *   value                                CURL *
+     d  option                             value like(CURLoption)
+     d  objectarg                      *   value options(*string: *nopass)
+     d  ccsid                        10u 0 value options(*nopass)
+      *
+      /endif
diff --git a/packages/OS400/initscript.sh b/packages/OS400/initscript.sh
new file mode 100644
index 0000000..9bf93a8
--- /dev/null
+++ b/packages/OS400/initscript.sh
@@ -0,0 +1,176 @@
+#!/bin/sh
+
+
+case "${SCRIPTDIR}" in
+/*)     ;;
+*)      SCRIPTDIR="`pwd`/${SCRIPTDIR}"
+esac
+
+while true
+do      case "${SCRIPTDIR}" in
+        */.)    SCRIPTDIR="${SCRIPTDIR%/.}";;
+        *)      break;;
+        esac
+done
+
+#  The script directory is supposed to be in $TOPDIR/packages/os400.
+
+TOPDIR=`dirname "${SCRIPTDIR}"`
+TOPDIR=`dirname "${TOPDIR}"`
+export SCRIPTDIR TOPDIR
+
+#  Extract the SONAME from the library makefile.
+
+SONAME=`sed -e '/^VERSIONINFO=/!d' -e 's/^.* \([0-9]*\):.*$/\1/' -e 'q' \
+                                                < "${TOPDIR}/lib/Makefile.am"`
+export SONAME
+
+
+################################################################################
+#
+#                       Tunable configuration parameters.
+#
+################################################################################
+
+TARGETLIB='CURL'                # Target OS/400 program library
+STATBNDDIR='CURL_A'             # Static binding directory.
+DYNBNDDIR='CURL'                # Dynamic binding directory.
+SRVPGM="CURL.${SONAME}"         # Service program.
+TGTCCSID='500'                  # Target CCSID of objects
+DEBUG='*ALL'                    # Debug level
+OPTIMIZE='10'                   # Optimisation level
+OUTPUT='*NONE'                  # Compilation output option.
+TGTRLS='V5R3M0'                 # Target OS release
+
+export TARGETLIB STATBNDDIR DYNBNDDIR SRVPGM TGTCCSID DEBUG OPTIMIZE OUTPUT
+export TGTRLS
+
+
+################################################################################
+
+#       Need to get the version definitions.
+
+LIBCURL_VERSION=`grep '^#define  *LIBCURL_VERSION '                     \
+                        "${TOPDIR}/include/curl/curlver.h"              |
+                sed 's/.*"\(.*\)".*/\1/'`
+LIBCURL_VERSION_MAJOR=`grep '^#define  *LIBCURL_VERSION_MAJOR '         \
+                        "${TOPDIR}/include/curl/curlver.h"              |
+                sed 's/^#define  *LIBCURL_VERSION_MAJOR  *\([^ ]*\).*/\1/'`
+LIBCURL_VERSION_MINOR=`grep '^#define  *LIBCURL_VERSION_MINOR '         \
+                        "${TOPDIR}/include/curl/curlver.h"              |
+                sed 's/^#define  *LIBCURL_VERSION_MINOR  *\([^ ]*\).*/\1/'`
+LIBCURL_VERSION_PATCH=`grep '^#define  *LIBCURL_VERSION_PATCH '         \
+                        "${TOPDIR}/include/curl/curlver.h"              |
+                sed 's/^#define  *LIBCURL_VERSION_PATCH  *\([^ ]*\).*/\1/'`
+LIBCURL_VERSION_NUM=`grep '^#define  *LIBCURL_VERSION_NUM '             \
+                        "${TOPDIR}/include/curl/curlver.h"              |
+                sed 's/^#define  *LIBCURL_VERSION_NUM  *0x\([^ ]*\).*/\1/'`
+LIBCURL_TIMESTAMP=`grep '^#define  *LIBCURL_TIMESTAMP '                 \
+                        "${TOPDIR}/include/curl/curlver.h"              |
+                sed 's/.*"\(.*\)".*/\1/'`
+export LIBCURL_VERSION
+export LIBCURL_VERSION_MAJOR LIBCURL_VERSION_MINOR LIBCURL_VERSION_PATCH
+export LIBCURL_VERSION_NUM LIBCURL_TIMESTAMP
+
+################################################################################
+#
+#                       OS/400 specific definitions.
+#
+################################################################################
+
+LIBIFSNAME="/QSYS.LIB/${TARGETLIB}.LIB"
+
+
+################################################################################
+#
+#                               Procedures.
+#
+################################################################################
+
+#       action_needed dest [src]
+#
+#       dest is an object to build
+#       if specified, src is an object on which dest depends.
+#
+#       exit 0 (succeeds) if some action has to be taken, else 1.
+
+action_needed()
+
+{
+        [ ! -e "${1}" ] && return 0
+        [ "${2}" ] || return 1
+        [ "${1}" -ot "${2}" ] && return 0
+        return 1
+}
+
+
+#       make_module module_name source_name [additional_definitions]
+#
+#       Compile source name into ASCII module if needed.
+#       As side effect, append the module name to variable MODULES.
+#       Set LINK to "YES" if the module has been compiled.
+
+make_module()
+
+{
+        MODULES="${MODULES} ${1}"
+        MODIFSNAME="${LIBIFSNAME}/${1}.MODULE"
+        action_needed "${MODIFSNAME}" "${2}" || return 0;
+
+        #       #pragma convert has to be in the source file itself, i.e.
+        #               putting it in an include file makes it only active
+        #               for that include file.
+        #       Thus we build a temporary file with the pragma prepended to
+        #               the source file and we compile that themporary file.
+
+        echo "#line 1 \"${2}\"" > __tmpsrcf.c
+        echo "#pragma convert(819)" >> __tmpsrcf.c
+        echo "#line 1" >> __tmpsrcf.c
+        cat "${2}" >> __tmpsrcf.c
+        CMD="CRTCMOD MODULE(${TARGETLIB}/${1}) SRCSTMF('__tmpsrcf.c')"
+#       CMD="${CMD} SYSIFCOPT(*IFS64IO) OPTION(*INCDIRFIRST *SHOWINC *SHOWSYS)"
+        CMD="${CMD} SYSIFCOPT(*IFS64IO) OPTION(*INCDIRFIRST)"
+        CMD="${CMD} LOCALETYPE(*LOCALE)"
+        CMD="${CMD} INCDIR('/qibm/proddata/qadrt/include'"
+        CMD="${CMD} '${TOPDIR}/include/curl' '${TOPDIR}/include'"
+        CMD="${CMD} '${TOPDIR}/packages/OS400' ${INCLUDES})"
+        CMD="${CMD} TGTCCSID(${TGTCCSID}) TGTRLS(${TGTRLS})"
+        CMD="${CMD} OUTPUT(${OUTPUT})"
+        CMD="${CMD} OPTIMIZE(${OPTIMIZE})"
+        CMD="${CMD} DBGVIEW(${DEBUG})"
+
+        if [ "${3}" ]
+        then    CMD="${CMD} DEFINE(${3})"
+        fi
+
+        system "${CMD}"
+        rm -f __tmpsrcf.c
+        LINK=YES
+}
+
+
+#       Determine DB2 object name from IFS name.
+
+db2_name()
+
+{
+        basename "${1}"                                                 |
+        tr '[a-z-]' '[A-Z_]'                                            |
+        sed -e 's/\..*//'                                               \
+            -e 's/^\(..........\).*/\1/'
+}
+
+
+#       Copy IFS file replacing version info.
+
+versioned_copy()
+
+{
+        sed -e "s/@LIBCURL_VERSION@/${LIBCURL_VERSION}/g"               \
+            -e "s/@LIBCURL_VERSION_MAJOR@/${LIBCURL_VERSION_MAJOR}/g"   \
+            -e "s/@LIBCURL_VERSION_MINOR@/${LIBCURL_VERSION_MINOR}/g"   \
+            -e "s/@LIBCURL_VERSION_PATCH@/${LIBCURL_VERSION_PATCH}/g"   \
+            -e "s/@LIBCURL_VERSION_NUM@/${LIBCURL_VERSION_NUM}/g"       \
+            -e "s/@LIBCURL_TIMESTAMP@/${LIBCURL_TIMESTAMP}/g"           \
+                < "${1}" > "${2}"
+}
diff --git a/packages/OS400/make-include.sh b/packages/OS400/make-include.sh
new file mode 100644
index 0000000..834ee2f
--- /dev/null
+++ b/packages/OS400/make-include.sh
@@ -0,0 +1,72 @@
+#!/bin/sh
+#
+#       Installation of the include files in the OS/400 library.
+#
+
+SCRIPTDIR=`dirname "${0}"`
+. "${SCRIPTDIR}/initscript.sh"
+cd "${TOPDIR}/include"
+
+
+#	Produce the curlbuild.h include file if not yet in distribution (CVS).
+
+if action_needed curl/curlbuild.h
+then	if action_needed curl/curlbuild.h curl/curlbuild.h.dist
+	then	cp -p curl/curlbuild.h.dist curl/curlbuild.h
+	fi
+fi
+
+
+#       Create the OS/400 source program file for the include files.
+
+SRCPF="${LIBIFSNAME}/H.FILE"
+
+if action_needed "${SRCPF}"
+then    CMD="CRTSRCPF FILE(${TARGETLIB}/H) RCDLEN(112)"
+        CMD="${CMD} CCSID(${TGTCCSID}) TEXT('curl: Header files')"
+        system "${CMD}"
+fi
+
+
+#       Enumeration values are used as va_arg tagfields, so they MUST be
+#               integers.
+
+copy_hfile()
+
+{
+	destfile="${1}"
+	srcfile="${2}"
+	shift
+	shift
+        sed -e '1i\
+#pragma enum(int)\
+' "${@}" -e '$a\
+#pragma enum(pop)\
+' < "${srcfile}" > "${destfile}"
+}
+
+#       Copy the header files.
+
+for HFILE in curl/*.h ${SCRIPTDIR}/ccsidcurl.h
+do      DEST="${SRCPF}/`db2_name \"${HFILE}\"`.MBR"
+        if action_needed "${DEST}" "${HFILE}"
+        then    copy_hfile "${DEST}" "${HFILE}"
+        fi
+done
+
+
+#       Copy the ILE/RPG include file, setting-up version number.
+
+        versioned_copy "${SCRIPTDIR}/curl.inc.in" "${SRCPF}/CURL.INC.MBR"
+
+
+#	Duplicate file H as CURL to support more include path forms.
+
+if action_needed "${LIBIFSNAME}/CURL.FILE"
+then	:
+else	system "DLTF FILE(${TARGETLIB}/CURL)"
+fi
+
+CMD="CRTDUPOBJ OBJ(H) FROMLIB(${TARGETLIB}) OBJTYPE(*FILE) TOLIB(*FROMLIB)"
+CMD="${CMD} NEWOBJ(CURL) DATA(*YES)"
+system "${CMD}"
diff --git a/packages/OS400/make-lib.sh b/packages/OS400/make-lib.sh
new file mode 100644
index 0000000..b7f951b
--- /dev/null
+++ b/packages/OS400/make-lib.sh
@@ -0,0 +1,192 @@
+#!/bin/sh
+#
+#       libcurl compilation script for the OS/400.
+#
+
+SCRIPTDIR=`dirname "${0}"`
+. "${SCRIPTDIR}/initscript.sh"
+cd "${TOPDIR}/lib"
+
+
+#      Create and compile the identification source file.
+
+echo '#pragma comment(user, "libcurl version '"${LIBCURL_VERSION}"'")' > os400.c
+echo '#pragma comment(date)' >> os400.c
+echo '#pragma comment(copyright, "Copyright (C) 1998-2010 Daniel Stenberg et al. OS/400 version by P. Monnerat")' >> os400.c
+make_module     OS400           os400.c
+LINK=                           # No need to rebuild service program yet.
+MODULES=
+
+
+#       Get source list.
+
+CSOURCES()
+
+{
+        shift                   # Drop the equal sign.
+        CSOURCES="$*"           # Get the file names.
+}
+
+HHEADERS()
+
+{
+        shift                   # Drop the equal sign.
+        HHEADERS="$*"           # Get the file names.
+}
+
+. Makefile.inc
+
+
+#       Compile the sources into modules.
+
+INCLUDES="'`pwd`'"
+
+make_module     OS400SYS        "${SCRIPTDIR}/os400sys.c"
+make_module     CCSIDCURL       "${SCRIPTDIR}/ccsidcurl.c"
+
+for SRC in ${CSOURCES}
+do      MODULE=`basename "${SRC}" .c |
+                tr '[a-z]' '[A-Z]'   |
+                sed -e 's/^\(..........\).*/\1/'`
+        make_module "${MODULE}" "${SRC}"
+done
+
+
+#       If needed, (re)create the static binding directory.
+
+if action_needed "${LIBIFSNAME}/${STATBNDDIR}.BNDDIR"
+then    LINK=YES
+fi
+
+if [ "${LINK}" ]
+then    rm -rf "${LIBIFSNAME}/${STATBNDDIR}.BNDDIR"
+        CMD="CRTBNDDIR BNDDIR(${TARGETLIB}/${STATBNDDIR})"
+        CMD="${CMD} TEXT('LibCurl API static binding directory')"
+        system "${CMD}"
+
+        for MODULE in ${MODULES}
+        do      CMD="ADDBNDDIRE BNDDIR(${TARGETLIB}/${STATBNDDIR})"
+                CMD="${CMD} OBJ((${TARGETLIB}/${MODULE} *MODULE))"
+                system "${CMD}"
+        done
+fi
+
+
+#       The exportation file for service program creation must be in a DB2
+#               source file, so make sure it exists.
+
+if action_needed "${LIBIFSNAME}/TOOLS.FILE"
+then    CMD="CRTSRCPF FILE(${TARGETLIB}/TOOLS) RCDLEN(112)"
+        CMD="${CMD} TEXT('curl: build tools')"
+        system "${CMD}"
+fi
+
+
+#       Gather the list of symbols to export.
+
+EXPORTS=`grep '^CURL_EXTERN[ 	]'                                      \
+              "${TOPDIR}"/include/curl/*.h                              \
+              "${SCRIPTDIR}/ccsidcurl.h"                                |
+         sed -e 's/^.*CURL_EXTERN[ 	]\(.*\)(.*$/\1/'                \
+             -e 's/[ 	]*$//'                                          \
+             -e 's/^.*[ 	][ 	]*//'                           \
+             -e 's/^\*//'                                               \
+             -e 's/(\(.*\))/\1/'`
+
+#       Create the service program exportation file in DB2 member if needed.
+
+BSF="${LIBIFSNAME}/TOOLS.FILE/BNDSRC.MBR"
+
+if action_needed "${BSF}" Makefile.am
+then    LINK=YES
+fi
+
+if [ "${LINK}" ]
+then    echo " STRPGMEXP PGMLVL(*CURRENT) SIGNATURE('LIBCURL_${SONAME}')" \
+            > "${BSF}"
+        for EXPORT in ${EXPORTS}
+        do      echo ' EXPORT    SYMBOL("'"${EXPORT}"'")' >> "${BSF}"
+        done
+
+        echo ' ENDPGMEXP' >> "${BSF}"
+fi
+
+
+#       Build the service program if needed.
+
+if action_needed "${LIBIFSNAME}/${SRVPGM}.SRVPGM"
+then    LINK=YES
+fi
+
+if [ "${LINK}" ]
+then    CMD="CRTSRVPGM SRVPGM(${TARGETLIB}/${SRVPGM})"
+        CMD="${CMD} SRCFILE(${TARGETLIB}/TOOLS) SRCMBR(BNDSRC)"
+        CMD="${CMD} MODULE(${TARGETLIB}/OS400)"
+        CMD="${CMD} BNDDIR(${TARGETLIB}/${STATBNDDIR})"
+        CMD="${CMD} BNDSRVPGM(QADRTTS QGLDCLNT QGLDBRDR)"
+        CMD="${CMD} TEXT('curl API library')"
+        CMD="${CMD} TGTRLS(${TGTRLS})"
+        system "${CMD}"
+        LINK=YES
+fi
+
+
+#       If needed, (re)create the dynamic binding directory.
+
+if action_needed "${LIBIFSNAME}/${DYNBNDDIR}.BNDDIR"
+then    LINK=YES
+fi
+
+if [ "${LINK}" ]
+then    rm -rf "${LIBIFSNAME}/${DYNBNDDIR}.BNDDIR"
+        CMD="CRTBNDDIR BNDDIR(${TARGETLIB}/${DYNBNDDIR})"
+        CMD="${CMD} TEXT('LibCurl API dynamic binding directory')"
+        system "${CMD}"
+        CMD="ADDBNDDIRE BNDDIR(${TARGETLIB}/${DYNBNDDIR})"
+        CMD="${CMD} OBJ((*LIBL/${SRVPGM} *SRVPGM))"
+        system "${CMD}"
+fi
+
+
+#       Rebuild the formdata test if needed.
+
+if [ "${TEST_FORMDATA}" ]
+then    MODULES=
+        make_module TFORMDATA   formdata.c      "'_FORM_DEBUG' 'CURLDEBUG'"
+        make_module TSTREQUAL   strequal.c      "'_FORM_DEBUG' 'CURLDEBUG'"
+        make_module TMEMDEBUG   memdebug.c      "'_FORM_DEBUG' 'CURLDEBUG'"
+        make_module TMPRINTF    mprintf.c       "'_FORM_DEBUG' 'CURLDEBUG'"
+        make_module TSTRERROR   strerror.c      "'_FORM_DEBUG' 'CURLDEBUG'"
+        #       The following modules should not be needed (see comment in
+        #               formdata.c. However, there are some unsatisfied
+        #               external references leading in the following
+        #               modules to be (recursively) needed.
+        MODULES="${MODULES} EASY STRDUP SSLGEN QSSL HOSTIP HOSTIP4 HOSTIP6"
+        MODULES="${MODULES} URL HASH TRANSFER GETINFO COOKIE SENDF SELECT"
+        MODULES="${MODULES} INET_NTOP SHARE HOSTTHRE MULTI LLIST FTP HTTP"
+        MODULES="${MODULES} HTTP_DIGES HTTP_CHUNK HTTP_NEGOT TIMEVAL HOSTSYN"
+        MODULES="${MODULES} CONNECT SOCKS PROGRESS ESCAPE INET_PTON GETENV"
+        MODULES="${MODULES} DICT LDAP TELNET FILE TFTP NETRC PARSEDATE"
+        MODULES="${MODULES} SPEEDCHECK SPLAY BASE64 SECURITY IF2IP MD5"
+        MODULES="${MODULES} KRB5 OS400SYS"
+
+        PGMIFSNAME="${LIBIFSNAME}/TFORMDATA.PGM"
+
+        if action_needed "${PGMIFSNAME}"
+        then    LINK=YES
+        fi
+
+        if [ "${LINK}" ]
+        then    CMD="CRTPGM PGM(${TARGETLIB}/TFORMDATA)"
+                CMD="${CMD} ENTMOD(QADRT/QADRTMAIN2)"
+                CMD="${CMD} MODULE("
+
+                for MODULE in ${MODULES}
+                do      CMD="${CMD} ${TARGETLIB}/${MODULE}"
+                done
+
+                CMD="${CMD} ) BNDSRVPGM(QADRTTS)"
+                CMD="${CMD} TGTRLS(${TGTRLS})"
+                system "${CMD}"
+        fi
+fi
diff --git a/packages/OS400/make-src.sh b/packages/OS400/make-src.sh
new file mode 100644
index 0000000..090ae12
--- /dev/null
+++ b/packages/OS400/make-src.sh
@@ -0,0 +1,4 @@
+#!/bin/sh
+#
+#
+#       Not implemented yet on OS/400.
diff --git a/packages/OS400/make-tests.sh b/packages/OS400/make-tests.sh
new file mode 100644
index 0000000..cee3ed9
--- /dev/null
+++ b/packages/OS400/make-tests.sh
@@ -0,0 +1,114 @@
+#!/bin/sh
+#
+#       tests compilation script for the OS/400.
+#
+
+
+SCRIPTDIR=`dirname "${0}"`
+. "${SCRIPTDIR}/initscript.sh"
+cd "${TOPDIR}/tests"
+
+
+#       tests directory not implemented yet.
+
+
+#       Process the libtest subdirectory.
+
+cd libtest
+
+#       Get definitions from the Makefile.inc file.
+#       The `sed' statement works as follows:
+#       _ Join \nl-separated lines.
+#       _ Retain only lines that begins with "identifier =".
+#       _ Turn these lines into shell variable assignments.
+
+eval "`sed -e ': begin'                                                 \
+        -e '/\\\\$/{'                                                   \
+        -e 'N'                                                          \
+        -e 's/\\\\\\n/ /'                                               \
+        -e 'b begin'                                                    \
+        -e '}'                                                          \
+        -e '/^[A-Za-z_][A-Za-z0-9_]*[ 	]*[=]/b keep'                   \
+        -e 'd'                                                          \
+        -e ': keep'                                                     \
+        -e 's/[ 	]*=[ 	]*/=/'                                  \
+        -e 's/=\\(.*[^ 	]\\)[ 	]*$/=\\"\\1\\"/'                        \
+        -e 's/\\$(\\([^)]*\\))/${\\1}/g'                                \
+        < Makefile.inc`"
+
+#       Special case: redefine chkhostname compilation parameters.
+
+chkhostname_SOURCES=chkhostname.c
+chkhostname_LDADD=curl_gethostname.o
+
+#       Compile all programs.
+#       The list is found in variable "noinst_PROGRAMS"
+
+INCLUDES="'${TOPDIR}/tests/libtest' '${TOPDIR}/lib'"
+
+for PGM in ${noinst_PROGRAMS}
+do      DB2PGM=`db2_name "${PGM}"`
+        PGMIFSNAME="${LIBIFSNAME}/${DB2PGM}.PGM"
+
+        #       Extract preprocessor symbol definitions from compilation
+        #               options for the program.
+
+        PGMCFLAGS="`eval echo \"\\${${PGM}_CFLAGS}\"`"
+        PGMDEFINES=
+
+        for FLAG in ${PGMCFLAGS}
+        do      case "${FLAG}" in
+                -D?*)   DEFINE="`echo \"${FLAG}\" | sed 's/^..//'`"
+                        PGMDEFINES="${PGMDEFINES} '${DEFINE}'"
+                        ;;
+                esac
+        done
+
+        #        Compile all C sources for the program into modules.
+
+        PGMSOURCES="`eval echo \"\\${${PGM}_SOURCES}\"`"
+        LINK=
+        MODULES=
+
+        for SOURCE in ${PGMSOURCES}
+        do      case "${SOURCE}" in
+                *.c)    #       Special processing for libxxx.c files: their
+                        #               module name is determined by the target
+                        #               PROGRAM name.
+
+                        case "${SOURCE}" in
+                        lib*.c) MODULE="${DB2PGM}"
+                                ;;
+                        *)      MODULE=`db2_name "${SOURCE}"`
+                                ;;
+                        esac
+
+                        make_module "${MODULE}" "${SOURCE}" "${PGMDEFINES}"
+                        if action_needed "${PGMIFSNAME}" "${MODIFSNAME}"
+                        then    LINK=yes
+                        fi
+                        ;;
+                esac
+        done
+
+        #       Link program if needed.
+
+        if [ "${LINK}" ]
+        then    PGMLDADD="`eval echo \"\\${${PGM}_LDADD}\"`"
+                for LDARG in ${PGMLDADD}
+                do      case "${LDARG}" in
+                        -*)     ;;              # Ignore non-module.
+                        *)      MODULES="${MODULES} "`db2_name "${LDARG}"`
+                                ;;
+                        esac
+                done
+                MODULES="`echo \"${MODULES}\" |
+                    sed \"s/[^ ][^ ]*/${TARGETLIB}\/&/g\"`"
+                CMD="CRTPGM PGM(${TARGETLIB}/${DB2PGM})"
+                CMD="${CMD} ENTMOD(QADRT/QADRTMAIN2)"
+                CMD="${CMD} MODULE(${MODULES})"
+                CMD="${CMD} BNDSRVPGM(${TARGETLIB}/${SRVPGM} QADRTTS)"
+                CMD="${CMD} TGTRLS(${TGTRLS})"
+                system "${CMD}"
+        fi
+done
diff --git a/packages/OS400/makefile.sh b/packages/OS400/makefile.sh
new file mode 100644
index 0000000..1e67290
--- /dev/null
+++ b/packages/OS400/makefile.sh
@@ -0,0 +1,52 @@
+#!/bin/sh
+#
+#       curl compilation script for the OS/400.
+#
+#
+#       This is a shell script since make is not a standard component of OS/400.
+
+SCRIPTDIR=`dirname "${0}"`
+. "${SCRIPTDIR}/initscript.sh"
+cd "${TOPDIR}"
+
+
+#       Create the OS/400 library if it does not exist.
+
+if action_needed "${LIBIFSNAME}"
+then    CMD="CRTLIB LIB(${TARGETLIB}) TEXT('curl: multiprotocol support API')"
+        system "${CMD}"
+fi
+
+
+#       Create the DOCS source file if it does not exist.
+
+if action_needed "${LIBIFSNAME}/DOCS.FILE"
+then    CMD="CRTSRCPF FILE(${TARGETLIB}/DOCS) RCDLEN(112)"
+        CMD="${CMD} CCSID(${TGTCCSID}) TEXT('Documentation texts')"
+        system "${CMD}"
+fi
+
+
+#       Copy some documentation files if needed.
+
+for TEXT in "${TOPDIR}/COPYING" "${SCRIPTDIR}/README.OS400"             \
+    "${TOPDIR}/CHANGES" "${TOPDIR}/docs/THANKS" "${TOPDIR}/docs/FAQ"    \
+    "${TOPDIR}/docs/FEATURES" "${TOPDIR}/docs/SSLCERTS"                 \
+    "${TOPDIR}/docs/RESOURCES" "${TOPDIR}/docs/VERSIONS"                \
+    "${TOPDIR}/docs/HISTORY"
+do      MEMBER="`basename \"${TEXT}\" .OS400`"
+        MEMBER="${LIBIFSNAME}/DOCS.FILE/`db2_name \"${MEMBER}\"`.MBR"
+
+        if action_needed "${MEMBER}" "${TEXT}"
+        then    CMD="CPY OBJ('${TEXT}') TOOBJ('${MEMBER}') TOCCSID(${TGTCCSID})"
+                CMD="${CMD} DTAFMT(*TEXT) REPLACE(*YES)"
+                system "${CMD}"
+        fi
+done
+
+
+#       Build in each directory.
+
+for SUBDIR in include lib src tests
+do      "${SCRIPTDIR}/make-${SUBDIR}.sh"
+done
diff --git a/packages/OS400/os400sys.c b/packages/OS400/os400sys.c
new file mode 100644
index 0000000..071fa48
--- /dev/null
+++ b/packages/OS400/os400sys.c
@@ -0,0 +1,1080 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel@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 additional support. */
+
+#include "curlbuild.h"
+#include "config-os400.h"       /* Not setup.h: we only need some defines. */
+
+#include <sys/types.h>
+#include <sys/socket.h>
+#include <sys/un.h>
+
+#include <stdlib.h>
+#include <stddef.h>
+#include <string.h>
+#include <pthread.h>
+#include <netdb.h>
+#include <qadrt.h>
+#include <errno.h>
+
+#ifdef USE_QSOSSL
+#include <qsossl.h>
+#endif
+
+#ifdef HAVE_GSSAPI
+#include <gssapi.h>
+#endif
+
+#ifndef CURL_DISABLE_LDAP
+#include <ldap.h>
+#endif
+
+#include <netinet/in.h>
+#include <arpa/inet.h>
+
+#include "os400sys.h"
+
+
+/**
+***     QADRT OS/400 ASCII runtime defines only the most used procedures, but
+***             but a lot of them are not supported. This module implements
+***             ASCII wrappers for those that are used by libcurl, but not
+***             defined by QADRT.
+**/
+
+#pragma convert(0)                              /* Restore EBCDIC. */
+
+
+#define MIN_BYTE_GAIN   1024    /* Minimum gain when shortening a buffer. */
+
+typedef struct {
+        unsigned long   size;                   /* Buffer size. */
+        char *          buf;                    /* Buffer address. */
+}               buffer_t;
+
+
+static char *   buffer_undef(localkey_t key, long size);
+static char *   buffer_threaded(localkey_t key, long size);
+static char *   buffer_unthreaded(localkey_t key, long size);
+
+static pthread_mutex_t  mutex = PTHREAD_MUTEX_INITIALIZER;
+static pthread_key_t    thdkey;
+static buffer_t *       locbufs;
+
+char *  (* Curl_thread_buffer)(localkey_t key, long size) = buffer_undef;
+
+
+static void
+thdbufdestroy(void * private)
+
+{
+  localkey_t i;
+  buffer_t * p;
+
+  if (private) {
+    p = (buffer_t *) private;
+
+    for (i = (localkey_t) 0; i < LK_LAST; i++) {
+      if (p->buf)
+        free(p->buf);
+
+      p++;
+      }
+
+    free(private);
+    }
+}
+
+
+static void
+terminate(void)
+
+{
+  if (Curl_thread_buffer == buffer_threaded) {
+    locbufs = pthread_getspecific(thdkey);
+    pthread_setspecific(thdkey, (void *) NULL);
+    pthread_key_delete(thdkey);
+    }
+
+  if (Curl_thread_buffer != buffer_undef) {
+    thdbufdestroy((void *) locbufs);
+    locbufs = (buffer_t *) NULL;
+    }
+
+  Curl_thread_buffer = buffer_undef;
+}
+
+
+static char *
+get_buffer(buffer_t * buf, long size)
+
+{
+  char * cp;
+
+  /* If `size' >= 0, make sure buffer at `buf' is at least `size'-byte long.
+     Return the buffer address. */
+
+  if (size < 0)
+    return buf->buf;
+
+  if (!buf->buf) {
+    if ((buf->buf = malloc(size)))
+      buf->size = size;
+
+    return buf->buf;
+    }
+
+  if ((unsigned long) size <= buf->size) {
+    /* Shorten the buffer only if it frees a significant byte count. This
+       avoids some realloc() overhead. */
+
+    if (buf->size - size < MIN_BYTE_GAIN)
+      return buf->buf;
+    }
+
+  /* Resize the buffer. */
+
+  if ((cp = realloc(buf->buf, size))) {
+    buf->buf = cp;
+    buf->size = size;
+    }
+  else if (size <= buf->size)
+    cp = buf->buf;
+
+  return cp;
+}
+
+
+static char *
+buffer_unthreaded(localkey_t key, long size)
+
+{
+  return get_buffer(locbufs + key, size);
+}
+
+
+static char *
+buffer_threaded(localkey_t key, long size)
+
+{
+  buffer_t * bufs;
+
+  /* Get the buffer for the given local key in the current thread, and
+     make sure it is at least `size'-byte long. Set `size' to < 0 to get
+     its address only. */
+
+  bufs = (buffer_t *) pthread_getspecific(thdkey);
+
+  if (!bufs) {
+    if (size < 0)
+      return (char *) NULL;             /* No buffer yet. */
+
+    /* Allocate buffer descriptors for the current thread. */
+
+    if (!(bufs = calloc((size_t) LK_LAST, sizeof *bufs)))
+      return (char *) NULL;
+
+    if (pthread_setspecific(thdkey, (void *) bufs)) {
+      free(bufs);
+      return (char *) NULL;
+      }
+    }
+
+  return get_buffer(bufs + key, size);
+}
+
+
+static char *
+buffer_undef(localkey_t key, long size)
+
+{
+  /* Define the buffer system, get the buffer for the given local key in
+     the current thread, and make sure it is at least `size'-byte long.
+     Set `size' to < 0 to get its address only. */
+
+  pthread_mutex_lock(&mutex);
+
+  /* Determine if we can use pthread-specific data. */
+
+  if (Curl_thread_buffer == buffer_undef) {     /* If unchanged during lock. */
+    if (!pthread_key_create(&thdkey, thdbufdestroy))
+      Curl_thread_buffer = buffer_threaded;
+    else if (!(locbufs = calloc((size_t) LK_LAST,
+                                             sizeof *locbufs))) {
+      pthread_mutex_unlock(&mutex);
+      return (char *) NULL;
+      }
+    else
+        Curl_thread_buffer = buffer_unthreaded;
+
+    atexit(terminate);
+    }
+
+  pthread_mutex_unlock(&mutex);
+  return Curl_thread_buffer(key, size);
+}
+
+
+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)
+
+{
+  char * enodename;
+  char * eservname;
+  int status;
+  int i;
+
+  enodename = (char *) NULL;
+  eservname = (char *) NULL;
+
+  if (nodename && nodenamelen)
+    if (!(enodename = malloc(nodenamelen)))
+      return EAI_MEMORY;
+
+  if (servname && servnamelen)
+    if (!(eservname = malloc(servnamelen))) {
+      if (enodename)
+        free(enodename);
+
+      return EAI_MEMORY;
+      }
+
+  status = getnameinfo(sa, salen, enodename, nodenamelen,
+                       eservname, servnamelen, flags);
+
+  if (!status) {
+    if (enodename) {
+      i = QadrtConvertE2A(nodename, enodename,
+        nodenamelen - 1, strlen(enodename));
+      nodename[i] = '\0';
+      }
+
+    if (eservname) {
+      i = QadrtConvertE2A(servname, eservname,
+        servnamelen - 1, strlen(eservname));
+      servname[i] = '\0';
+      }
+    }
+
+  if (enodename)
+    free(enodename);
+
+  if (eservname)
+    free(eservname);
+
+  return status;
+}
+
+
+int
+Curl_getaddrinfo_a(const char * nodename, const char * servname,
+            const struct addrinfo * hints,
+            struct addrinfo * * res)
+
+{
+  char * enodename;
+  char * eservname;
+  int status;
+  int i;
+
+  enodename = (char *) NULL;
+  eservname = (char *) NULL;
+
+  if (nodename) {
+    i = strlen(nodename);
+
+    if (!(enodename = malloc(i + 1)))
+      return EAI_MEMORY;
+
+    i = QadrtConvertA2E(enodename, nodename, i, i);
+    enodename[i] = '\0';
+    }
+
+  if (servname) {
+    i = strlen(servname);
+
+    if (!(eservname = malloc(i + 1))) {
+      if (enodename)
+        free(enodename);
+
+      return EAI_MEMORY;
+      }
+
+    QadrtConvertA2E(eservname, servname, i, i);
+    eservname[i] = '\0';
+    }
+
+  status = getaddrinfo(enodename, eservname, hints, res);
+
+  if (enodename)
+    free(enodename);
+
+  if (eservname)
+    free(eservname);
+
+  return status;
+}
+
+
+#ifdef USE_QSOSSL
+
+/* ASCII wrappers for the SSL procedures. */
+
+int
+Curl_SSL_Init_Application_a(SSLInitApp * init_app)
+
+{
+  int rc;
+  unsigned int i;
+  SSLInitApp ia;
+
+  if (!init_app || !init_app->applicationID || !init_app->applicationIDLen)
+    return SSL_Init_Application(init_app);
+
+  memcpy((char *) &ia, (char *) init_app, sizeof ia);
+  i = ia.applicationIDLen;
+
+  if (!(ia.applicationID = malloc(i + 1))) {
+    errno = ENOMEM;
+    return SSL_ERROR_IO;
+    }
+
+  QadrtConvertA2E(ia.applicationID, init_app->applicationID, i, i);
+  ia.applicationID[i] = '\0';
+  rc = SSL_Init_Application(&ia);
+  free(ia.applicationID);
+  init_app->localCertificateLen = ia.localCertificateLen;
+  init_app->sessionType = ia.sessionType;
+  return rc;
+}
+
+
+int
+Curl_SSL_Init_a(SSLInit * init)
+
+{
+  int rc;
+  unsigned int i;
+  SSLInit ia;
+
+  if (!init || (!init->keyringFileName && !init->keyringPassword))
+    return SSL_Init(init);
+
+  memcpy((char *) &ia, (char *) init, sizeof ia);
+
+  if (ia.keyringFileName) {
+    i = strlen(ia.keyringFileName);
+
+    if (!(ia.keyringFileName = malloc(i + 1))) {
+      errno = ENOMEM;
+      return SSL_ERROR_IO;
+      }
+
+    QadrtConvertA2E(ia.keyringFileName, init->keyringFileName, i, i);
+    ia.keyringFileName[i] = '\0';
+    }
+
+  if (ia.keyringPassword) {
+    i = strlen(ia.keyringPassword);
+
+    if (!(ia.keyringPassword = malloc(i + 1))) {
+      if (ia.keyringFileName)
+        free(ia.keyringFileName);
+
+      errno = ENOMEM;
+      return SSL_ERROR_IO;
+      }
+
+    QadrtConvertA2E(ia.keyringPassword, init->keyringPassword, i, i);
+    ia.keyringPassword[i] = '\0';
+    }
+
+  rc = SSL_Init(&ia);
+
+  if (ia.keyringFileName)
+    free(ia.keyringFileName);
+
+  if (ia.keyringPassword)
+    free(ia.keyringPassword);
+
+  return rc;
+}
+
+
+char *
+Curl_SSL_Strerror_a(int sslreturnvalue, SSLErrorMsg * serrmsgp)
+
+{
+  int i;
+  char * cp;
+  char * cp2;
+
+  cp = SSL_Strerror(sslreturnvalue, serrmsgp);
+
+  if (!cp)
+    return cp;
+
+  i = strlen(cp);
+
+  if (!(cp2 = Curl_thread_buffer(LK_SSL_ERROR, MAX_CONV_EXPANSION * i + 1)))
+    return cp2;
+
+  i = QadrtConvertE2A(cp2, cp, MAX_CONV_EXPANSION * i, i);
+  cp2[i] = '\0';
+  return cp2;
+}
+
+#endif /* USE_QSOSSL */
+
+
+#ifdef HAVE_GSSAPI
+
+/* ASCII wrappers for the GSSAPI procedures. */
+
+static int
+Curl_gss_convert_in_place(OM_uint32 * minor_status, gss_buffer_t buf)
+
+{
+  unsigned int i;
+  char * t;
+
+  /* Convert `buf' in place, from EBCDIC to ASCII.
+     If error, release the buffer and return -1. Else return 0. */
+
+  i = buf->length;
+
+  if (i) {
+    if (!(t = malloc(i))) {
+      gss_release_buffer(minor_status, buf);
+
+      if (minor_status)
+        *minor_status = ENOMEM;
+
+      return -1;
+      }
+
+    QadrtConvertE2A(t, buf->value, i, i);
+    memcpy(buf->value, t, i);
+    free(t);
+    }
+
+  return 0;
+}
+
+
+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)
+
+{
+  int rc;
+  unsigned int i;
+  gss_buffer_desc in;
+
+  if (!in_name || !in_name->value || !in_name->length)
+    return gss_import_name(minor_status, in_name, in_name_type, out_name);
+
+  memcpy((char *) &in, (char *) in_name, sizeof in);
+  i = in.length;
+
+  if (!(in.value = malloc(i + 1))) {
+    if (minor_status)
+      *minor_status = ENOMEM;
+
+    return GSS_S_FAILURE;
+    }
+
+  QadrtConvertA2E(in.value, in_name->value, i, i);
+  ((char *) in.value)[i] = '\0';
+  rc = gss_import_name(minor_status, &in, in_name_type, out_name);
+  free(in.value);
+  return rc;
+}
+
+
+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)
+
+{
+  int rc;
+
+  rc = gss_display_status(minor_status, status_value, status_type,
+                              mech_type, message_context, status_string);
+
+  if (rc != GSS_S_COMPLETE || !status_string ||
+      !status_string->length || !status_string->value)
+    return rc;
+
+  /* No way to allocate a buffer here, because it will be released by
+     gss_release_buffer(). The solution is to overwrite the EBCDIC buffer
+     with ASCII to return it. */
+
+  if (Curl_gss_convert_in_place(minor_status, status_string))
+    return GSS_S_FAILURE;
+
+  return rc;
+}
+
+
+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)
+
+{
+  int rc;
+  unsigned int i;
+  gss_buffer_desc in;
+  gss_buffer_t inp;
+
+  in.value = NULL;
+
+  if ((inp = input_token))
+    if (inp->length && inp->value) {
+      i = inp->length;
+
+      if (!(in.value = malloc(i + 1))) {
+        if (minor_status)
+          *minor_status = ENOMEM;
+
+        return GSS_S_FAILURE;
+        }
+
+      QadrtConvertA2E(in.value, input_token->value, i, i);
+      ((char *) in.value)[i] = '\0';
+      in.length = i;
+      inp = &in;
+      }
+
+  rc = gss_init_sec_context(minor_status, cred_handle, context_handle,
+                             target_name, mech_type, req_flags, time_req,
+                             input_chan_bindings, inp, actual_mech_type,
+                             output_token, ret_flags, time_rec);
+
+  if (in.value)
+    free(in.value);
+
+  if (rc != GSS_S_COMPLETE || !output_token ||
+      !output_token->length || !output_token->value)
+    return rc;
+
+  /* No way to allocate a buffer here, because it will be released by
+     gss_release_buffer(). The solution is to overwrite the EBCDIC buffer
+     with ASCII to return it. */
+
+  if (Curl_gss_convert_in_place(minor_status, output_token))
+    return GSS_S_FAILURE;
+
+  return rc;
+}
+
+
+OM_uint32
+Curl_gss_delete_sec_context_a(OM_uint32 * minor_status,
+                              gss_ctx_id_t * context_handle,
+                              gss_buffer_t output_token)
+
+{
+  int rc;
+
+  rc = gss_delete_sec_context(minor_status, context_handle, output_token);
+
+  if (rc != GSS_S_COMPLETE || !output_token ||
+      !output_token->length || !output_token->value)
+    return rc;
+
+  /* No way to allocate a buffer here, because it will be released by
+     gss_release_buffer(). The solution is to overwrite the EBCDIC buffer
+     with ASCII to return it. */
+
+  if (Curl_gss_convert_in_place(minor_status, output_token))
+    return GSS_S_FAILURE;
+
+  return rc;
+}
+
+#endif /* HAVE_GSSAPI */
+
+
+#ifndef CURL_DISABLE_LDAP
+
+/* ASCII wrappers for the LDAP procedures. */
+
+void *
+Curl_ldap_init_a(char * host, int port)
+
+{
+  unsigned int i;
+  char * ehost;
+  void * result;
+
+  if (!host)
+    return (void *) ldap_init(host, port);
+
+  i = strlen(host);
+
+  if (!(ehost = malloc(i + 1)))
+    return (void *) NULL;
+
+  QadrtConvertA2E(ehost, host, i, i);
+  ehost[i] = '\0';
+  result = (void *) ldap_init(ehost, port);
+  free(ehost);
+  return result;
+}
+
+
+int
+Curl_ldap_simple_bind_s_a(void * ld, char * dn, char * passwd)
+
+{
+  int i;
+  char * edn;
+  char * epasswd;
+
+  edn = (char *) NULL;
+  epasswd = (char *) NULL;
+
+  if (dn) {
+    i = strlen(dn);
+
+    if (!(edn = malloc(i + 1)))
+      return LDAP_NO_MEMORY;
+
+    QadrtConvertA2E(edn, dn, i, i);
+    edn[i] = '\0';
+    }
+
+  if (passwd) {
+    i = strlen(passwd);
+
+    if (!(epasswd = malloc(i + 1))) {
+      if (edn)
+        free(edn);
+
+      return LDAP_NO_MEMORY;
+      }
+
+    QadrtConvertA2E(epasswd, passwd, i, i);
+    epasswd[i] = '\0';
+    }
+
+  i = ldap_simple_bind_s(ld, edn, epasswd);
+
+  if (epasswd)
+    free(epasswd);
+
+  if (edn)
+    free(edn);
+
+  return i;
+}
+
+
+int
+Curl_ldap_search_s_a(void * ld, char * base, int scope, char * filter,
+                     char * * attrs, int attrsonly, LDAPMessage * * res)
+
+{
+  int i;
+  int j;
+  char * ebase;
+  char * efilter;
+  char * * eattrs;
+  int status;
+
+  ebase = (char *) NULL;
+  efilter = (char *) NULL;
+  eattrs = (char * *) NULL;
+  status = LDAP_SUCCESS;
+
+  if (base) {
+    i = strlen(base);
+
+    if (!(ebase = malloc(i + 1)))
+      status = LDAP_NO_MEMORY;
+    else {
+      QadrtConvertA2E(ebase, base, i, i);
+      ebase[i] = '\0';
+      }
+    }
+
+  if (filter && status == LDAP_SUCCESS) {
+    i = strlen(filter);
+
+    if (!(efilter = malloc(i + 1)))
+      status = LDAP_NO_MEMORY;
+    else {
+      QadrtConvertA2E(efilter, filter, i, i);
+      efilter[i] = '\0';
+      }
+    }
+
+  if (attrs && status == LDAP_SUCCESS) {
+    for (i = 0; attrs[i++];)
+      ;
+
+    if (!(eattrs = calloc(i, sizeof *eattrs)))
+      status = LDAP_NO_MEMORY;
+    else {
+      for (j = 0; attrs[j]; j++) {
+        i = strlen(attrs[j]);
+
+        if (!(eattrs[j] = malloc(i + 1))) {
+          status = LDAP_NO_MEMORY;
+          break;
+          }
+
+        QadrtConvertA2E(eattrs[j], attrs[j], i, i);
+        eattrs[j][i] = '\0';
+        }
+      }
+    }
+
+  if (status == LDAP_SUCCESS)
+    status = ldap_search_s(ld, ebase? ebase: "", scope,
+                           efilter? efilter: "(objectclass=*)",
+                           eattrs, attrsonly, res);
+
+  if (eattrs) {
+    for (j = 0; eattrs[j]; j++)
+      free(eattrs[j]);
+
+    free(eattrs);
+    }
+
+  if (efilter)
+    free(efilter);
+
+  if (ebase)
+    free(ebase);
+
+  return status;
+}
+
+
+struct berval * *
+Curl_ldap_get_values_len_a(void * ld, LDAPMessage * entry, const char * attr)
+
+{
+  int i;
+  char * cp;
+  struct berval * * result;
+
+  cp = (char *) NULL;
+
+  if (attr) {
+    i = strlen(attr);
+
+    if (!(cp = malloc(i + 1))) {
+      ldap_set_lderrno(ld, LDAP_NO_MEMORY, NULL,
+                       ldap_err2string(LDAP_NO_MEMORY));
+      return (struct berval * *) NULL;
+      }
+
+    QadrtConvertA2E(cp, attr, i, i);
+    cp[i] = '\0';
+    }
+
+  result = ldap_get_values_len(ld, entry, cp);
+
+  if (cp)
+    free(cp);
+
+  /* Result data are binary in nature, so they haven't been converted to EBCDIC.
+     Therefore do not convert. */
+
+  return result;
+}
+
+
+char *
+Curl_ldap_err2string_a(int error)
+
+{
+  int i;
+  char * cp;
+  char * cp2;
+
+  cp = ldap_err2string(error);
+
+  if (!cp)
+    return cp;
+
+  i = strlen(cp);
+
+  if (!(cp2 = Curl_thread_buffer(LK_LDAP_ERROR, MAX_CONV_EXPANSION * i + 1)))
+    return cp2;
+
+  i = QadrtConvertE2A(cp2, cp, MAX_CONV_EXPANSION * i, i);
+  cp2[i] = '\0';
+  return cp2;
+}
+
+
+char *
+Curl_ldap_get_dn_a(void * ld, LDAPMessage * entry)
+
+{
+  int i;
+  char * cp;
+  char * cp2;
+
+  cp = ldap_get_dn(ld, entry);
+
+  if (!cp)
+    return cp;
+
+  i = strlen(cp);
+
+  if (!(cp2 = malloc(i + 1)))
+    return cp2;
+
+  QadrtConvertE2A(cp2, cp, i, i);
+
+  /* No way to allocate a buffer here, because it will be released by
+     ldap_memfree() and ldap_memalloc() does not exist. The solution is to
+     overwrite the EBCDIC buffer with ASCII to return it. */
+
+  strcpy(cp, cp2);
+  free(cp2);
+  return cp;
+}
+
+
+char *
+Curl_ldap_first_attribute_a(void * ld,
+                            LDAPMessage * entry, BerElement * * berptr)
+
+{
+  int i;
+  char * cp;
+  char * cp2;
+
+  cp = ldap_first_attribute(ld, entry, berptr);
+
+  if (!cp)
+    return cp;
+
+  i = strlen(cp);
+
+  if (!(cp2 = malloc(i + 1)))
+    return cp2;
+
+  QadrtConvertE2A(cp2, cp, i, i);
+
+  /* No way to allocate a buffer here, because it will be released by
+     ldap_memfree() and ldap_memalloc() does not exist. The solution is to
+     overwrite the EBCDIC buffer with ASCII to return it. */
+
+  strcpy(cp, cp2);
+  free(cp2);
+  return cp;
+}
+
+
+char *
+Curl_ldap_next_attribute_a(void * ld,
+                           LDAPMessage * entry, BerElement * berptr)
+
+{
+  int i;
+  char * cp;
+  char * cp2;
+
+  cp = ldap_next_attribute(ld, entry, berptr);
+
+  if (!cp)
+    return cp;
+
+  i = strlen(cp);
+
+  if (!(cp2 = malloc(i + 1)))
+    return cp2;
+
+  QadrtConvertE2A(cp2, cp, i, i);
+
+  /* No way to allocate a buffer here, because it will be released by
+     ldap_memfree() and ldap_memalloc() does not exist. The solution is to
+     overwrite the EBCDIC buffer with ASCII to return it. */
+
+  strcpy(cp, cp2);
+  free(cp2);
+  return cp;
+}
+
+#endif /* CURL_DISABLE_LDAP */
+
+
+static int
+convert_sockaddr(struct sockaddr_storage * dstaddr,
+                                const struct sockaddr * srcaddr, int srclen)
+
+{
+  const struct sockaddr_un * srcu;
+  struct sockaddr_un * dstu;
+  unsigned int i;
+  unsigned int dstsize;
+
+  /* Convert a socket address into job CCSID, if needed. */
+
+  if (!srcaddr || srclen < offsetof(struct sockaddr, sa_family) +
+      sizeof srcaddr->sa_family || srclen > sizeof *dstaddr) {
+    errno = EINVAL;
+    return -1;
+    }
+
+  memcpy((char *) dstaddr, (char *) srcaddr, srclen);
+
+  switch (srcaddr->sa_family) {
+
+  case AF_UNIX:
+    srcu = (const struct sockaddr_un *) srcaddr;
+    dstu = (struct sockaddr_un *) dstaddr;
+    dstsize = sizeof *dstaddr - offsetof(struct sockaddr_un, sun_path);
+    srclen -= offsetof(struct sockaddr_un, sun_path);
+    i = QadrtConvertA2E(dstu->sun_path, srcu->sun_path, dstsize - 1, srclen);
+    dstu->sun_path[i] = '\0';
+    i += offsetof(struct sockaddr_un, sun_path);
+    srclen = i;
+    }
+
+  return srclen;
+}
+
+
+int
+Curl_os400_connect(int sd, struct sockaddr * destaddr, int addrlen)
+
+{
+  int i;
+  struct sockaddr_storage laddr;
+
+  i = convert_sockaddr(&laddr, destaddr, addrlen);
+
+  if (i < 0)
+    return -1;
+
+  return connect(sd, (struct sockaddr *) &laddr, i);
+}
+
+
+int
+Curl_os400_bind(int sd, struct sockaddr * localaddr, int addrlen)
+
+{
+  int i;
+  struct sockaddr_storage laddr;
+
+  i = convert_sockaddr(&laddr, localaddr, addrlen);
+
+  if (i < 0)
+    return -1;
+
+  return bind(sd, (struct sockaddr *) &laddr, i);
+}
+
+
+int
+Curl_os400_sendto(int sd, char * buffer, int buflen, int flags,
+                                struct sockaddr * dstaddr, int addrlen)
+
+{
+  int i;
+  struct sockaddr_storage laddr;
+
+  i = convert_sockaddr(&laddr, dstaddr, addrlen);
+
+  if (i < 0)
+    return -1;
+
+  return sendto(sd, buffer, buflen, flags, (struct sockaddr *) &laddr, i);
+}
+
+
+int
+Curl_os400_recvfrom(int sd, char * buffer, int buflen, int flags,
+                                struct sockaddr * fromaddr, int * addrlen)
+
+{
+  int i;
+  int rcvlen;
+  int laddrlen;
+  const struct sockaddr_un * srcu;
+  struct sockaddr_un * dstu;
+  struct sockaddr_storage laddr;
+
+  if (!fromaddr || !addrlen || *addrlen <= 0)
+    return recvfrom(sd, buffer, buflen, flags, fromaddr, addrlen);
+
+  laddrlen = sizeof laddr;
+  laddr.ss_family = AF_UNSPEC;          /* To detect if unused. */
+  rcvlen = recvfrom(sd, buffer, buflen, flags,
+                    (struct sockaddr *) &laddr, &laddrlen);
+
+  if (rcvlen < 0)
+    return rcvlen;
+
+  switch (laddr.ss_family) {
+
+  case AF_UNIX:
+    srcu = (const struct sockaddr_un *) &laddr;
+    dstu = (struct sockaddr_un *) fromaddr;
+    i = *addrlen - offsetof(struct sockaddr_un, sun_path);
+    laddrlen -= offsetof(struct sockaddr_un, sun_path);
+    i = QadrtConvertE2A(dstu->sun_path, srcu->sun_path, i, laddrlen);
+    laddrlen = i + offsetof(struct sockaddr_un, sun_path);
+
+    if (laddrlen < *addrlen)
+      dstu->sun_path[i] = '\0';
+
+    break;
+
+  case AF_UNSPEC:
+    break;
+
+  default:
+    if (laddrlen > *addrlen)
+      laddrlen = *addrlen;
+
+    if (laddrlen)
+      memcpy((char *) fromaddr, (char *) &laddr, laddrlen);
+
+    break;
+    }
+
+  *addrlen = laddrlen;
+  return rcvlen;
+}
diff --git a/packages/OS400/os400sys.h b/packages/OS400/os400sys.h
new file mode 100644
index 0000000..e708365
--- /dev/null
+++ b/packages/OS400/os400sys.h
@@ -0,0 +1,52 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2008, Daniel Stenberg, <daniel@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 additional definitions. */
+
+#ifndef __OS400_SYS_
+#define __OS400_SYS_
+
+
+/* Per-thread item identifiers. */
+
+typedef enum {
+        LK_SSL_ERROR,
+        LK_LDAP_ERROR,
+        LK_CURL_VERSION,
+        LK_VERSION_INFO,
+        LK_VERSION_INFO_DATA,
+        LK_EASY_STRERROR,
+        LK_SHARE_STRERROR,
+        LK_MULTI_STRERROR,
+        LK_LAST
+}               localkey_t;
+
+
+extern char *   (* Curl_thread_buffer)(localkey_t key, long size);
+
+
+/* Maximum string expansion factor due to character code conversion. */
+
+#define MAX_CONV_EXPANSION      4       /* Can deal with UTF-8. */
+
+#endif
diff --git a/packages/README b/packages/README
new file mode 100644
index 0000000..2487d95
--- /dev/null
+++ b/packages/README
@@ -0,0 +1,27 @@
+                                  _   _ ____  _
+                              ___| | | |  _ \| |
+                             / __| | | | |_) | |
+                            | (__| |_| |  _ <| |___
+                             \___|\___/|_| \_\_____|
+
+PACKAGES
+
+ This directory and all its subdirectories are for special package
+information, template, scripts and docs. The files herein should be of use for
+those of you who want to package curl in a binary or source format using one
+of those custom formats.
+
+ The hierarchy for these directories is something like this:
+
+   packages/[OS]/[FORMAT]/
+
+ Currently, we have Win32 and Linux for [OS]. There might be different formats
+for the same OS so for Linux we have RPM as format.
+
+ We might need to add some differentiation for CPU as well, as there is
+Linux-RPMs for several CPUs. However, it might not be necessary since the
+packaging should be pretty much the same no matter what CPU that is used.
+
+ For each unique OS-FORMAT pair, there's a directory to "fill"! I'd like to
+see a single README with as much details as possible, and then I'd like some
+template files for the package process.
diff --git a/packages/Solaris/Makefile.am b/packages/Solaris/Makefile.am
new file mode 100644
index 0000000..d012947
--- /dev/null
+++ b/packages/Solaris/Makefile.am
@@ -0,0 +1,38 @@
+#
+#
+
+PKGADD_PKG="@PKGADD_PKG@"
+PKGADD_NAME="@PACKAGE@-@VERSION@ - @PKGADD_NAME@"
+PKGADD_VENDOR="@PKGADD_VENDOR@"
+PKGADD_ARCH="@host_cpu@"
+PKGADD_DESC="@PACKAGE@-@VERSION@ - @PKGADD_NAME@"
+PKGADD_CLASSES=none
+PKGADD_BASEDIR=/
+
+PKGADD_FILE=${PKGADD_PKG}-@PACKAGE@-@VERSION@-@host@.pkg
+
+package:
+	if [ ! -f release ]; then echo 0 > release; fi
+	if [ `find root -newer release -print|wc -l` -gt 0 ]; then expr `cat release` + 1 > release; fi
+	echo PKG=${PKGADD_PKG} > pkginfo
+	echo NAME=${PKGADD_NAME} >> pkginfo
+	echo VENDOR=${PKGADD_VENDOR} >> pkginfo
+	echo ARCH=${PKGADD_ARCH} >> pkginfo
+	echo DESC=${PKGADD_DESC} >> pkginfo
+	echo CLASSES=${PKGADD_CLASSES} >> pkginfo
+	echo BASEDIR=${PKGADD_BASEDIR} >> pkginfo
+	echo CATEGORY=application >> pkginfo
+	echo VERSION=`cat ./release` >> pkginfo
+	echo > prototype
+	for subdir in opt var etc usr; \
+	do if [ -d root/$$subdir ]; then \
+		pkgproto root/$$subdir=$$subdir >> prototype;\
+	fi; done
+	for file in pkginfo preinstall postinstall copyright; \
+	do if [ -f $$file ]; then \
+		echo "i $$file=$$file" >> prototype; \
+	fi; done
+	rm -rf ./tmp
+	mkdir ./tmp
+	pkgmk -o -d ./tmp
+	pkgtrans -so ./tmp ${top_srcdir}/../${PKGADD_FILE} ${PKGADD_PKG}
diff --git a/packages/Solaris/Makefile.in b/packages/Solaris/Makefile.in
new file mode 100644
index 0000000..56809ca
--- /dev/null
+++ b/packages/Solaris/Makefile.in
@@ -0,0 +1,438 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+#
+#
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = packages/Solaris
+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 = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
+	$(top_builddir)/src/curl_config.h \
+	$(top_builddir)/include/curl/curlbuild.h
+CONFIG_CLEAN_FILES =
+SOURCES =
+DIST_SOURCES =
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILD_LIBHOSTNAME_FALSE = @BUILD_LIBHOSTNAME_FALSE@
+BUILD_LIBHOSTNAME_TRUE = @BUILD_LIBHOSTNAME_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CONFIGURE_OPTIONS = @CONFIGURE_OPTIONS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CROSSCOMPILING_FALSE = @CROSSCOMPILING_FALSE@
+CROSSCOMPILING_TRUE = @CROSSCOMPILING_TRUE@
+CURLDEBUG_FALSE = @CURLDEBUG_FALSE@
+CURLDEBUG_TRUE = @CURLDEBUG_TRUE@
+CURL_CA_BUNDLE = @CURL_CA_BUNDLE@
+CURL_CFLAG_EXTRAS = @CURL_CFLAG_EXTRAS@
+CURL_DISABLE_DICT = @CURL_DISABLE_DICT@
+CURL_DISABLE_FILE = @CURL_DISABLE_FILE@
+CURL_DISABLE_FTP = @CURL_DISABLE_FTP@
+CURL_DISABLE_GOPHER = @CURL_DISABLE_GOPHER@
+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@
+CURL_NETWORK_LIBS = @CURL_NETWORK_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@
+ENABLE_SHARED = @ENABLE_SHARED@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
+HAVE_LIBZ = @HAVE_LIBZ@
+HAVE_LIBZ_FALSE = @HAVE_LIBZ_FALSE@
+HAVE_LIBZ_TRUE = @HAVE_LIBZ_TRUE@
+HAVE_PK11_CREATEGENERICOBJECT = @HAVE_PK11_CREATEGENERICOBJECT@
+IDN_ENABLED = @IDN_ENABLED@
+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@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+MANOPT = @MANOPT@
+MIMPURE_FALSE = @MIMPURE_FALSE@
+MIMPURE_TRUE = @MIMPURE_TRUE@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NO_UNDEFINED_FALSE = @NO_UNDEFINED_FALSE@
+NO_UNDEFINED_TRUE = @NO_UNDEFINED_TRUE@
+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 = "@PACKAGE@-@VERSION@ - @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@
+SONAME_BUMP_FALSE = @SONAME_BUMP_FALSE@
+SONAME_BUMP_TRUE = @SONAME_BUMP_TRUE@
+SSL_ENABLED = @SSL_ENABLED@
+STATICLIB_FALSE = @STATICLIB_FALSE@
+STATICLIB_TRUE = @STATICLIB_TRUE@
+STRIP = @STRIP@
+SUPPORT_FEATURES = @SUPPORT_FEATURES@
+SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
+TEST_SERVER_LIBS = @TEST_SERVER_LIBS@
+USE_ARES = @USE_ARES@
+USE_EMBEDDED_ARES_FALSE = @USE_EMBEDDED_ARES_FALSE@
+USE_EMBEDDED_ARES_TRUE = @USE_EMBEDDED_ARES_TRUE@
+USE_GNUTLS = @USE_GNUTLS@
+USE_LIBRTMP = @USE_LIBRTMP@
+USE_LIBSSH2 = @USE_LIBSSH2@
+USE_MANUAL_FALSE = @USE_MANUAL_FALSE@
+USE_MANUAL_TRUE = @USE_MANUAL_TRUE@
+USE_NSS = @USE_NSS@
+USE_OPENLDAP = @USE_OPENLDAP@
+USE_POLARSSL = @USE_POLARSSL@
+USE_SSLEAY = @USE_SSLEAY@
+USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
+VERSION = @VERSION@
+VERSIONNUM = @VERSIONNUM@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+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@
+lt_ECHO = @lt_ECHO@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+PKGADD_ARCH = "@host_cpu@"
+PKGADD_DESC = "@PACKAGE@-@VERSION@ - @PKGADD_NAME@"
+PKGADD_CLASSES = none
+PKGADD_BASEDIR = /
+PKGADD_FILE = ${PKGADD_PKG}-@PACKAGE@-@VERSION@-@host@.pkg
+all: 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 \
+		&& exit 0; \
+	      exit 1;; \
+	  esac; \
+	done; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  packages/Solaris/Makefile'; \
+	cd $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign  packages/Solaris/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
+
+mostlyclean-libtool:
+	-rm -f *.lo
+
+clean-libtool:
+	-rm -rf .libs _libs
+
+distclean-libtool:
+	-rm -f libtool
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+distdir: $(DISTFILES)
+	@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+	list='$(DISTFILES)'; for file in $$list; do \
+	  case $$file in \
+	    $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+	    $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+	  esac; \
+	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+	  dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+	  if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+	    dir="/$$dir"; \
+	    $(mkdir_p) "$(distdir)$$dir"; \
+	  else \
+	    dir=''; \
+	  fi; \
+	  if test -d $$d/$$file; then \
+	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	    fi; \
+	    cp -pR $$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:
+
+distclean-generic:
+	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_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 distclean-libtool
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+	-rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.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-exec install-exec-am \
+	install-info install-info-am install-man install-strip \
+	installcheck installcheck-am installdirs maintainer-clean \
+	maintainer-clean-generic mostlyclean mostlyclean-generic \
+	mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \
+	uninstall-info-am
+
+
+package:
+	if [ ! -f release ]; then echo 0 > release; fi
+	if [ `find root -newer release -print|wc -l` -gt 0 ]; then expr `cat release` + 1 > release; fi
+	echo PKG=${PKGADD_PKG} > pkginfo
+	echo NAME=${PKGADD_NAME} >> pkginfo
+	echo VENDOR=${PKGADD_VENDOR} >> pkginfo
+	echo ARCH=${PKGADD_ARCH} >> pkginfo
+	echo DESC=${PKGADD_DESC} >> pkginfo
+	echo CLASSES=${PKGADD_CLASSES} >> pkginfo
+	echo BASEDIR=${PKGADD_BASEDIR} >> pkginfo
+	echo CATEGORY=application >> pkginfo
+	echo VERSION=`cat ./release` >> pkginfo
+	echo > prototype
+	for subdir in opt var etc usr; \
+	do if [ -d root/$$subdir ]; then \
+		pkgproto root/$$subdir=$$subdir >> prototype;\
+	fi; done
+	for file in pkginfo preinstall postinstall copyright; \
+	do if [ -f $$file ]; then \
+		echo "i $$file=$$file" >> prototype; \
+	fi; done
+	rm -rf ./tmp
+	mkdir ./tmp
+	pkgmk -o -d ./tmp
+	pkgtrans -so ./tmp ${top_srcdir}/../${PKGADD_FILE} ${PKGADD_PKG}
+# 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/packages/Symbian/bwins/libcurlu.def b/packages/Symbian/bwins/libcurlu.def
new file mode 100644
index 0000000..4d693a9
--- /dev/null
+++ b/packages/Symbian/bwins/libcurlu.def
@@ -0,0 +1,60 @@
+EXPORTS
+	curl_easy_cleanup @ 1 NONAME
+	curl_easy_duphandle @ 2 NONAME
+	curl_easy_escape @ 3 NONAME
+	curl_easy_getinfo @ 4 NONAME
+	curl_easy_init @ 5 NONAME
+	curl_easy_pause @ 6 NONAME
+	curl_easy_perform @ 7 NONAME
+	curl_easy_reset @ 8 NONAME
+	curl_easy_setopt @ 9 NONAME
+	curl_easy_strerror @ 10 NONAME
+	curl_easy_unescape @ 11 NONAME
+	curl_escape @ 12 NONAME
+	curl_formadd @ 13 NONAME
+	curl_formfree @ 14 NONAME
+	curl_formget @ 15 NONAME
+	curl_free @ 16 NONAME
+	curl_getdate @ 17 NONAME
+	curl_getenv @ 18 NONAME
+	curl_global_cleanup @ 19 NONAME
+	curl_global_init @ 20 NONAME
+	curl_global_init_mem @ 21 NONAME
+	curl_maprintf @ 22 NONAME
+	curl_mfprintf @ 23 NONAME
+	curl_mprintf @ 24 NONAME
+	curl_msnprintf @ 25 NONAME
+	curl_msprintf @ 26 NONAME
+	curl_multi_add_handle @ 27 NONAME
+	curl_multi_assign @ 28 NONAME
+	curl_multi_cleanup @ 29 NONAME
+	curl_multi_fdset @ 30 NONAME
+	curl_multi_info_read @ 31 NONAME
+	curl_multi_init @ 32 NONAME
+	curl_multi_perform @ 33 NONAME
+	curl_multi_remove_handle @ 34 NONAME
+	curl_multi_setopt @ 35 NONAME
+	curl_multi_socket @ 36 NONAME
+	curl_multi_socket_action @ 37 NONAME
+	curl_multi_socket_all @ 38 NONAME
+	curl_multi_strerror @ 39 NONAME
+	curl_multi_timeout @ 40 NONAME
+	curl_mvaprintf @ 41 NONAME
+	curl_mvfprintf @ 42 NONAME
+	curl_mvprintf @ 43 NONAME
+	curl_mvsnprintf @ 44 NONAME
+	curl_mvsprintf @ 45 NONAME
+	curl_share_cleanup @ 46 NONAME
+	curl_share_init @ 47 NONAME
+	curl_share_setopt @ 48 NONAME
+	curl_share_strerror @ 49 NONAME
+	curl_slist_append @ 50 NONAME
+	curl_slist_free_all @ 51 NONAME
+	curl_strequal @ 52 NONAME
+	curl_strnequal @ 53 NONAME
+	curl_unescape @ 54 NONAME
+	curl_version @ 55 NONAME
+	curl_version_info @ 56 NONAME
+	curl_easy_recv @ 57 NONAME
+	curl_easy_send @ 58 NONAME
+
diff --git a/packages/Symbian/eabi/libcurlu.def b/packages/Symbian/eabi/libcurlu.def
new file mode 100644
index 0000000..4d693a9
--- /dev/null
+++ b/packages/Symbian/eabi/libcurlu.def
@@ -0,0 +1,60 @@
+EXPORTS
+	curl_easy_cleanup @ 1 NONAME
+	curl_easy_duphandle @ 2 NONAME
+	curl_easy_escape @ 3 NONAME
+	curl_easy_getinfo @ 4 NONAME
+	curl_easy_init @ 5 NONAME
+	curl_easy_pause @ 6 NONAME
+	curl_easy_perform @ 7 NONAME
+	curl_easy_reset @ 8 NONAME
+	curl_easy_setopt @ 9 NONAME
+	curl_easy_strerror @ 10 NONAME
+	curl_easy_unescape @ 11 NONAME
+	curl_escape @ 12 NONAME
+	curl_formadd @ 13 NONAME
+	curl_formfree @ 14 NONAME
+	curl_formget @ 15 NONAME
+	curl_free @ 16 NONAME
+	curl_getdate @ 17 NONAME
+	curl_getenv @ 18 NONAME
+	curl_global_cleanup @ 19 NONAME
+	curl_global_init @ 20 NONAME
+	curl_global_init_mem @ 21 NONAME
+	curl_maprintf @ 22 NONAME
+	curl_mfprintf @ 23 NONAME
+	curl_mprintf @ 24 NONAME
+	curl_msnprintf @ 25 NONAME
+	curl_msprintf @ 26 NONAME
+	curl_multi_add_handle @ 27 NONAME
+	curl_multi_assign @ 28 NONAME
+	curl_multi_cleanup @ 29 NONAME
+	curl_multi_fdset @ 30 NONAME
+	curl_multi_info_read @ 31 NONAME
+	curl_multi_init @ 32 NONAME
+	curl_multi_perform @ 33 NONAME
+	curl_multi_remove_handle @ 34 NONAME
+	curl_multi_setopt @ 35 NONAME
+	curl_multi_socket @ 36 NONAME
+	curl_multi_socket_action @ 37 NONAME
+	curl_multi_socket_all @ 38 NONAME
+	curl_multi_strerror @ 39 NONAME
+	curl_multi_timeout @ 40 NONAME
+	curl_mvaprintf @ 41 NONAME
+	curl_mvfprintf @ 42 NONAME
+	curl_mvprintf @ 43 NONAME
+	curl_mvsnprintf @ 44 NONAME
+	curl_mvsprintf @ 45 NONAME
+	curl_share_cleanup @ 46 NONAME
+	curl_share_init @ 47 NONAME
+	curl_share_setopt @ 48 NONAME
+	curl_share_strerror @ 49 NONAME
+	curl_slist_append @ 50 NONAME
+	curl_slist_free_all @ 51 NONAME
+	curl_strequal @ 52 NONAME
+	curl_strnequal @ 53 NONAME
+	curl_unescape @ 54 NONAME
+	curl_version @ 55 NONAME
+	curl_version_info @ 56 NONAME
+	curl_easy_recv @ 57 NONAME
+	curl_easy_send @ 58 NONAME
+
diff --git a/packages/Symbian/group/bld.inf b/packages/Symbian/group/bld.inf
new file mode 100644
index 0000000..354a843
--- /dev/null
+++ b/packages/Symbian/group/bld.inf
@@ -0,0 +1,10 @@
+//
+// libcurl and curl bld.inf file for Symbian OS
+//
+PRJ_EXPORTS
+        libcurl.iby /epoc32/rom/include/libcurl.iby
+        curl.iby /epoc32/rom/include/curl.iby
+
+PRJ_MMPFILES
+        libcurl.mmp
+        curl.mmp
diff --git a/packages/Symbian/group/curl.iby b/packages/Symbian/group/curl.iby
new file mode 100644
index 0000000..7921aaa
--- /dev/null
+++ b/packages/Symbian/group/curl.iby
@@ -0,0 +1,15 @@
+//
+// curl file transfer utility command-line utility
+//
+// Use this file with buildrom to add curl to a device ROM
+//
+
+#ifndef CURL_IBY
+#define CURL_IBY
+
+#include <openenv.iby>
+#include <libcurl.iby>
+
+file=ABI_DIR\BUILD_DIR\curl.exe            \sys\bin\curl.exe
+
+#endif // CURL_IBY
diff --git a/packages/Symbian/group/curl.mmp b/packages/Symbian/group/curl.mmp
new file mode 100644
index 0000000..b25013c
--- /dev/null
+++ b/packages/Symbian/group/curl.mmp
@@ -0,0 +1,28 @@
+//
+// cURL network retrieval client
+//
+
+TARGET        curl.exe
+TARGETTYPE    exe
+UID           0x00000000 0xF0206442
+
+SOURCEPATH  ../../../src
+SOURCE \
+    main.c hugehelp.c urlglob.c writeout.c writeenv.c \
+    getpass.c homedir.c curlutil.c
+
+SOURCEPATH  ../../../lib
+SOURCE \
+    rawstr.c nonblock.c
+
+USERINCLUDE ../../../src ../../../lib ../../../include/curl
+
+SYSTEMINCLUDE ../../../include /epoc32/include /epoc32/include/stdapis
+
+LIBRARY       euser.lib libc.lib libcurl.lib
+STATICLIBRARY libcrt0.lib
+
+CAPABILITY NetworkServices
+
+EPOCSTACKSIZE 0x8000
+
diff --git a/packages/Symbian/group/curl.pkg b/packages/Symbian/group/curl.pkg
new file mode 100644
index 0000000..dfc994f
--- /dev/null
+++ b/packages/Symbian/group/curl.pkg
@@ -0,0 +1,26 @@
+; curl package defintion file
+; Use with makesis to create a Symbian .sis package
+
+;Language - standard language definitions
+&EN
+
+;Header - standard sis file header including version number
+;Version scheme: curl's major, curl's minor, curl's subminor*100 + build number
+; e.g. The third Symbian package of curl ver. 7.20.1 would have a SIS package
+; version of 7, 20, 103
+#{"curl"}, (0xF0206442), 7, 20, <please_update_version>, TYPE=SA
+
+; Vendor name
+%{"curl project"}
+:"curl project"
+
+; Embedded component
+@"libcurl.sis",(0xF0206D00)
+
+; A dependency on P.I.P.S. and the stdio server are probably good to have here
+;(0x20009A80), *, *, *, {"Open C Standard Libraries"}
+;(0x20009A81), *, *, *, {"P.I.P.S. for UIQ 3"}
+;(0x20009AA2), *, *, *, {"Symbian OS STDIOSERVER"}
+
+;Files - standard file specifications
+"\epoc32\release\armv5\urel\curl.exe" - "$:\sys\bin\curl.exe"
diff --git a/packages/Symbian/group/libcurl.iby b/packages/Symbian/group/libcurl.iby
new file mode 100644
index 0000000..373f5b3
--- /dev/null
+++ b/packages/Symbian/group/libcurl.iby
@@ -0,0 +1,14 @@
+//
+// libcurl file transfer DLL
+//
+// Use this file with buildrom to add libcurl to a device ROM
+//
+
+#ifndef LIBCURL_IBY
+#define LIBCURL_IBY
+
+#include <openenv.iby>
+
+file=ABI_DIR\BUILD_DIR\libcurl.dll        \sys\bin\libcurl.dll
+
+#endif // LIBCURL_IBY
diff --git a/packages/Symbian/group/libcurl.mmp b/packages/Symbian/group/libcurl.mmp
new file mode 100644
index 0000000..c060024
--- /dev/null
+++ b/packages/Symbian/group/libcurl.mmp
@@ -0,0 +1,59 @@
+//
+// libcurl.dll cURL network retrieval client library
+//
+
+// Build-time options (uncomment these to enable)
+#define ENABLE_ZLIB     // Enable gzip/deflate decompression
+//#define ENABLE_SSL      // Enable SSL for HTTPS/FTPS (requires S60 Open C SDK)
+
+TARGET        libcurl.dll
+TARGETTYPE    dll
+UID    0x1000008d 0xF0206D00
+
+MACRO       BUILDING_LIBCURL
+
+#ifdef ENABLE_ZLIB
+MACRO       HAVE_LIBZ
+#endif
+#ifdef ENABLE_SSL
+MACRO       USE_SSLEAY
+#endif
+
+SOURCEPATH  ../../../lib
+SOURCE \
+  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	\
+  curl_fnmatch.c fileinfo.c ftplistparser.c wildcard.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 md4.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 hmac.c polarssl.c curl_rtmp.c openldap.c curl_gethostname.c\
+  gopher.c
+
+USERINCLUDE   ../../../lib ../../../include/curl
+#ifdef ENABLE_SSL
+SYSTEMINCLUDE /epoc32/include/osextensions/stdapis
+// Older versions of the SDK need this instead:
+//USERINCLUDE /epoc32/include/stdapis/openssl
+#endif
+
+SYSTEMINCLUDE ../../../include /epoc32/include/stdapis /epoc32/include
+
+LIBRARY       euser.lib libc.lib
+#ifdef ENABLE_ZLIB
+LIBRARY       ezlib.lib
+#endif
+#ifdef ENABLE_SSL
+LIBRARY       libssl.lib libcrypto.lib
+#endif
+
+CAPABILITY NetworkServices
+
+EPOCALLOWDLLDATA
diff --git a/packages/Symbian/group/libcurl.pkg b/packages/Symbian/group/libcurl.pkg
new file mode 100644
index 0000000..1460a59
--- /dev/null
+++ b/packages/Symbian/group/libcurl.pkg
@@ -0,0 +1,22 @@
+; libcurl package defintion file
+; Use with makesis to create a Symbian .sis package
+
+;Language - standard language definitions
+&EN
+
+;Header - standard sis file header including version number
+;Version scheme: curl's major, curl's minor, curl's subminor*100 + build number
+; e.g. The third Symbian package of curl ver. 7.20.1 would have a SIS package
+; version of 7, 20, 103
+#{"libcurl"}, (0xF0206D00), 7, 20, <please_update_version>, TYPE=SA
+
+; Vendor name
+%{"curl project"}
+:"curl project"
+
+; A dependency on P.I.P.S. is probably a good idea to add here
+;(0x20009A80), *, *, *, {"Open C Standard Libraries"}
+;(0x20009A81), *, *, *, {"P.I.P.S. for UIQ 3"}
+
+;Files - standard file specifications
+"\epoc32\release\armv5\urel\libcurl.dll" - "$:\sys\bin\libcurl.dll"
diff --git a/packages/Symbian/readme.txt b/packages/Symbian/readme.txt
new file mode 100644
index 0000000..57b899f
--- /dev/null
+++ b/packages/Symbian/readme.txt
@@ -0,0 +1,93 @@
+Curl on Symbian OS
+==================
+This is a basic port of curl and libcurl to Symbian OS.  The port is
+a straightforward one using Symbian's P.I.P.S. POSIX compatibility
+layer, which was first available for OS version 9.1. A more complete
+port would involve writing a Symbian C++ binding, or wrapping libcurl
+as a Symbian application server with a C++ API to handle requests
+from client applications as well as creating a GUI application to allow
+file transfers.  The author has no current plans to do so.
+
+This means that integration with standard Symbian OS programs can be
+tricky, since libcurl isn't designed with Symbian's native asynchronous
+message passing idioms in mind. However, it may be possible to use libcurl
+in an active object-based application through libcurl's multi interface.
+The port is most easily used when porting POSIX applications to Symbian
+OS using P.I.P.S. (a.k.a. Open C).
+
+libcurl is built as a standard Symbian ordinal-linked DLL, and curl is
+built as a text mode EXE application.  They have not been Symbian
+Signed, which is required in order to install them on most phones.
+
+Following are some things to keep in mind when using this port.
+
+
+curl notes
+----------
+When starting curl in the Windows emulator from the Windows command-line,
+place a double-dash -- before the first curl command-line option.
+e.g. \epoc32\release\winscw\udeb\curl -- -v http://localhost/
+Failure to do so may mean that some of your options won't be correctly
+processed.
+
+Symbian's ESHELL allows for redirecting stdin and stdout to files, but
+stderr goes to the epocwind.out file (on the emulator).  The standard
+curl options -o, --stderr and --trace-ascii can be used to
+redirect output to a file (or stdout) instead.
+
+P.I.P.S. doesn't inherit the current working directory at startup from
+the shell, so relative path names are always relative to
+C:\Private\f0206442\.
+
+P.I.P.S. provides no way to disable echoing of characters as they are
+entered, so passwords typed in on the console will be visible.  It also
+line buffers keyboard input so interactive telnet sessions are not very
+feasible.
+
+All screen output disappears after curl exits, so after a command completes,
+curl waits by default for Enter to be pressed before exiting.  This behaviour
+is suppressed when the -s option is given.
+
+curl's "home directory" in Symbian is C:\Private\f0206442\. The .curlrc file
+is read from this directory on startup.
+
+
+libcurl notes
+-------------
+libcurl uses writable static data, so the EPOCALLOWDLLDATA option is
+used in its MMP file, with the corresponding additional memory usage
+and limitations on the Windows emulator.
+
+curl_global_init() *must* be called (either explicitly or implicitly through
+calling certain other libcurl functions) before any libcurl functions
+that could allocate memory (like curl_getenv()).
+
+P.I.P.S. doesn't support signals or the alarm() call, so some timeouts
+(such as the connect timeout) are not honoured. This should not be
+an issue once support for CURLRES_THREADED is added for Symbian.
+
+P.I.P.S. causes a USER:87 panic if certain timeouts much longer than
+half an hour are selected.
+
+LDAP, SCP or SFTP methods are not supported due to lack of support for
+the dependent libaries on Symbian.
+
+gzip and deflate decompression is supported when the appropriate macro
+is uncommented in the libcurl.mmp file.
+
+SSL/TLS encryption is not enabled by default, but it is possible to add
+when the OpenSSL libraries included in the S60 Open C SDK are available.
+The appropriate macro in the libcurl.mmp file must be uncommented to
+enable support.
+
+NTLM authentication may not work on some servers due to the lack of
+MD4 support in the OpenSSL libraries included with Open C.
+
+Debug builds are not supported (i.e. --enable-debug) because they cause
+additional symbol exports in the library which are not frozen in the .def
+files.
+
+
+Dan Fandrich
+dan@coneharvesters.com
+March 2010
diff --git a/packages/TPF/curl.mak b/packages/TPF/curl.mak
new file mode 100644
index 0000000..6e93404
--- /dev/null
+++ b/packages/TPF/curl.mak
@@ -0,0 +1,61 @@
+#######################################################################
+#                                                                     #
+#  MAKEFILE NAME.....  curl.mak                                       #
+#                                                                     #
+#  DESCRIPTION.....    This is the makefile for libcurl.              #
+#                                                                     #
+#######################################################################
+
+APP := CURL
+
+TPF_RUN_TPFSOCHK := NO
+
+#######################################################################
+# Define any additional libs needed to link
+#######################################################################
+
+LIBS := CRYP CSSL
+
+#######################################################################
+# Define the envs needed to build this module
+#######################################################################
+
+maketpf_env := curllib
+maketpf_env += openssl
+maketpf_env += base_rt
+maketpf_env += system
+
+#######################################################################
+# Segments to be compiled with gcc compiler
+#######################################################################
+#
+### lib directory:
+include $(word 1,$(wildcard $(foreach d,$(TPF_ROOT),$d/opensource/curl/lib/Makefile.inc)) Makefile.inc_not_found)
+C_SRC := $(CSOURCES)
+
+#######################################################################
+# Additions and overrides for gcc compiler flags
+#######################################################################
+
+# suppress expected warnings in the ported code:
+CFLAGS_CURL += -w
+
+# use SSL
+# (overrides Curl's lib/config-tpf.h file)
+CFLAGS_CURL += -DUSE_OPENSSL
+CFLAGS_CURL += -DUSE_SSLEAY
+
+# disable all protocols except FTP and HTTP
+# (overrides Curl's lib/config-tpf.h file)
+CFLAGS_CURL += -DCURL_DISABLE_DICT
+CFLAGS_CURL += -DCURL_DISABLE_FILE
+CFLAGS_CURL += -DCURL_DISABLE_LDAP
+CFLAGS_CURL += -DCURL_DISABLE_TELNET
+CFLAGS_CURL += -DCURL_DISABLE_TFTP
+
+#######################################################################
+# Include the maketpf.rules
+#######################################################################
+
+include maketpf.rules
+
diff --git a/packages/TPF/maketpf.env_curl b/packages/TPF/maketpf.env_curl
new file mode 100644
index 0000000..91a2573
--- /dev/null
+++ b/packages/TPF/maketpf.env_curl
@@ -0,0 +1,25 @@
+################################################################################
+################################################################################
+#env TPF CURL Includes
+################################################################################
+################################################################################
+
+################################################################################
+# Define the directories where the shared objects reside
+################################################################################
+
+ROOTLIBDIRS := $(foreach d,$(TPF_ROOT),$d/opensource/curl/output/lib)
+
+################################################################################
+# Set the include/header file directories
+################################################################################
+
+ROOTINCDIRS := $(foreach d,$(TPF_ROOT_LM),$d/opensource/curl/include)
+ROOTINCDIRS += $(foreach d,$(TPF_ROOT_LM),$d/opensource/curl/include/curl)
+
+################################################################################
+# Define "TPF" to enable TPF-specific code in Curl files.
+################################################################################
+
+CFLAGS_$(APP) += -D TPF
+
diff --git a/packages/TPF/maketpf.env_curllib b/packages/TPF/maketpf.env_curllib
new file mode 100644
index 0000000..f6ad5ba
--- /dev/null
+++ b/packages/TPF/maketpf.env_curllib
@@ -0,0 +1,57 @@
+################################################################################
+################################################################################
+#env TPF CURL Library Source and Output
+################################################################################
+################################################################################
+
+################################################################################
+# Define the directories where the shared objects reside
+################################################################################
+
+ROOTLIBDIRS := $(foreach d,$(TPF_ROOT),$d/opensource/curl/output/lib)
+
+################################################################################
+# Define the directories where the loadables (XXXXVV) are to be written
+################################################################################
+
+ROOTLOADDIRS := $(foreach d,$(TPF_ROOT),$d/opensource/curl/output/load)
+
+################################################################################
+# Define the location of the export files used by the LD postprocessor
+# - currently expected that .exp files will also live in lib dir
+################################################################################
+
+ROOTEXPDIRS := $(foreach d,$(TPF_ROOT_LM),$d/opensource/curl/output/exp)
+
+################################################################################
+# Define the object file directory name
+################################################################################
+
+ROOTOBJDIRS := $(foreach d,$(TPF_ROOT),$d/opensource/curl/output/obj)
+
+################################################################################
+# Define the listing files directory name
+################################################################################
+
+ROOTLSTDIRS := $(foreach d,$(TPF_ROOT),$d/opensource/curl/output/lst)
+
+################################################################################
+# Set the include/header file directories
+################################################################################
+
+ROOTINCDIRS := $(foreach d,$(TPF_ROOT_LM),$d/opensource/curl/lib)
+ROOTINCDIRS += $(foreach d,$(TPF_ROOT_LM),$d/opensource/curl/include)
+ROOTINCDIRS += $(foreach d,$(TPF_ROOT_LM),$d/opensource/curl/include/curl)
+
+################################################################################
+# Set the C file directories
+################################################################################
+
+ROOTCDIRS := $(foreach d,$(TPF_ROOT_LM),$d/opensource/curl/lib)
+
+################################################################################
+# Define "TPF" to enable TPF-specific code in Curl files.
+################################################################################
+
+CFLAGS_$(APP) += -D TPF
+
diff --git a/packages/Win32/Makefile.am b/packages/Win32/Makefile.am
new file mode 100644
index 0000000..93350ea
--- /dev/null
+++ b/packages/Win32/Makefile.am
@@ -0,0 +1,3 @@
+SUBDIRS = cygwin
+
+EXTRA_DIST = README
diff --git a/packages/Win32/Makefile.in b/packages/Win32/Makefile.in
new file mode 100644
index 0000000..eab258a
--- /dev/null
+++ b/packages/Win32/Makefile.in
@@ -0,0 +1,563 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = packages/Win32
+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 = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
+	$(top_builddir)/src/curl_config.h \
+	$(top_builddir)/include/curl/curlbuild.h
+CONFIG_CLEAN_FILES =
+SOURCES =
+DIST_SOURCES =
+RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
+	html-recursive info-recursive install-data-recursive \
+	install-exec-recursive install-info-recursive \
+	install-recursive installcheck-recursive installdirs-recursive \
+	pdf-recursive ps-recursive uninstall-info-recursive \
+	uninstall-recursive
+ETAGS = etags
+CTAGS = ctags
+DIST_SUBDIRS = $(SUBDIRS)
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILD_LIBHOSTNAME_FALSE = @BUILD_LIBHOSTNAME_FALSE@
+BUILD_LIBHOSTNAME_TRUE = @BUILD_LIBHOSTNAME_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CONFIGURE_OPTIONS = @CONFIGURE_OPTIONS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CROSSCOMPILING_FALSE = @CROSSCOMPILING_FALSE@
+CROSSCOMPILING_TRUE = @CROSSCOMPILING_TRUE@
+CURLDEBUG_FALSE = @CURLDEBUG_FALSE@
+CURLDEBUG_TRUE = @CURLDEBUG_TRUE@
+CURL_CA_BUNDLE = @CURL_CA_BUNDLE@
+CURL_CFLAG_EXTRAS = @CURL_CFLAG_EXTRAS@
+CURL_DISABLE_DICT = @CURL_DISABLE_DICT@
+CURL_DISABLE_FILE = @CURL_DISABLE_FILE@
+CURL_DISABLE_FTP = @CURL_DISABLE_FTP@
+CURL_DISABLE_GOPHER = @CURL_DISABLE_GOPHER@
+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@
+CURL_NETWORK_LIBS = @CURL_NETWORK_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@
+ENABLE_SHARED = @ENABLE_SHARED@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
+HAVE_LIBZ = @HAVE_LIBZ@
+HAVE_LIBZ_FALSE = @HAVE_LIBZ_FALSE@
+HAVE_LIBZ_TRUE = @HAVE_LIBZ_TRUE@
+HAVE_PK11_CREATEGENERICOBJECT = @HAVE_PK11_CREATEGENERICOBJECT@
+IDN_ENABLED = @IDN_ENABLED@
+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@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+MANOPT = @MANOPT@
+MIMPURE_FALSE = @MIMPURE_FALSE@
+MIMPURE_TRUE = @MIMPURE_TRUE@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NO_UNDEFINED_FALSE = @NO_UNDEFINED_FALSE@
+NO_UNDEFINED_TRUE = @NO_UNDEFINED_TRUE@
+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@
+SONAME_BUMP_FALSE = @SONAME_BUMP_FALSE@
+SONAME_BUMP_TRUE = @SONAME_BUMP_TRUE@
+SSL_ENABLED = @SSL_ENABLED@
+STATICLIB_FALSE = @STATICLIB_FALSE@
+STATICLIB_TRUE = @STATICLIB_TRUE@
+STRIP = @STRIP@
+SUPPORT_FEATURES = @SUPPORT_FEATURES@
+SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
+TEST_SERVER_LIBS = @TEST_SERVER_LIBS@
+USE_ARES = @USE_ARES@
+USE_EMBEDDED_ARES_FALSE = @USE_EMBEDDED_ARES_FALSE@
+USE_EMBEDDED_ARES_TRUE = @USE_EMBEDDED_ARES_TRUE@
+USE_GNUTLS = @USE_GNUTLS@
+USE_LIBRTMP = @USE_LIBRTMP@
+USE_LIBSSH2 = @USE_LIBSSH2@
+USE_MANUAL_FALSE = @USE_MANUAL_FALSE@
+USE_MANUAL_TRUE = @USE_MANUAL_TRUE@
+USE_NSS = @USE_NSS@
+USE_OPENLDAP = @USE_OPENLDAP@
+USE_POLARSSL = @USE_POLARSSL@
+USE_SSLEAY = @USE_SSLEAY@
+USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
+VERSION = @VERSION@
+VERSIONNUM = @VERSIONNUM@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+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@
+lt_ECHO = @lt_ECHO@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+SUBDIRS = cygwin
+EXTRA_DIST = README
+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 \
+		&& exit 0; \
+	      exit 1;; \
+	  esac; \
+	done; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  packages/Win32/Makefile'; \
+	cd $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign  packages/Win32/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
+
+mostlyclean-libtool:
+	-rm -f *.lo
+
+clean-libtool:
+	-rm -rf .libs _libs
+
+distclean-libtool:
+	-rm -f libtool
+uninstall-info-am:
+
+# 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):
+	@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; \
+	  (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"
+
+mostlyclean-recursive clean-recursive distclean-recursive \
+maintainer-clean-recursive:
+	@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; \
+	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+	  || eval $$failcom; \
+	done && test -z "$$fail"
+tags-recursive:
+	list='$(SUBDIRS)'; for subdir in $$list; do \
+	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+	done
+ctags-recursive:
+	list='$(SUBDIRS)'; for subdir in $$list; do \
+	  test "$$subdir" = . || (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; } \
+	       END { for (i in files) print i; }'`; \
+	mkid -fID $$unique
+tags: TAGS
+
+TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
+		$(TAGS_FILES) $(LISP)
+	tags=; \
+	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 || \
+	      tags="$$tags $$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; } \
+	       END { for (i in files) print i; }'`; \
+	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+	  test -n "$$unique" || unique=$$empty_fix; \
+	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	    $$tags $$unique; \
+	fi
+ctags: CTAGS
+CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
+		$(TAGS_FILES) $(LISP)
+	tags=; \
+	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; } \
+	       END { for (i in files) print i; }'`; \
+	test -z "$(CTAGS_ARGS)$$tags$$unique" \
+	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+	     $$tags $$unique
+
+GTAGS:
+	here=`$(am__cd) $(top_builddir) && pwd` \
+	  && 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)'; for file in $$list; do \
+	  case $$file in \
+	    $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+	    $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+	  esac; \
+	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+	  dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+	  if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+	    dir="/$$dir"; \
+	    $(mkdir_p) "$(distdir)$$dir"; \
+	  else \
+	    dir=''; \
+	  fi; \
+	  if test -d $$d/$$file; then \
+	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	    fi; \
+	    cp -pR $$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; \
+	    distdir=`$(am__cd) $(distdir) && pwd`; \
+	    top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
+	    (cd $$subdir && \
+	      $(MAKE) $(AM_MAKEFLAGS) \
+	        top_distdir="$$top_distdir" \
+	        distdir="$$distdir/$$subdir" \
+	        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)
+
+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-libtool \
+	distclean-tags
+
+dvi: dvi-recursive
+
+dvi-am:
+
+html: html-recursive
+
+info: info-recursive
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-recursive
+
+install-man:
+
+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: uninstall-info-am
+
+uninstall-info: uninstall-info-recursive
+
+.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am \
+	clean clean-generic clean-libtool clean-recursive ctags \
+	ctags-recursive distclean distclean-generic distclean-libtool \
+	distclean-recursive distclean-tags distdir dvi dvi-am html \
+	html-am info info-am install install-am install-data \
+	install-data-am install-exec install-exec-am install-info \
+	install-info-am install-man install-strip installcheck \
+	installcheck-am installdirs installdirs-am maintainer-clean \
+	maintainer-clean-generic maintainer-clean-recursive \
+	mostlyclean mostlyclean-generic mostlyclean-libtool \
+	mostlyclean-recursive pdf pdf-am ps ps-am tags tags-recursive \
+	uninstall uninstall-am uninstall-info-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/packages/Win32/README b/packages/Win32/README
new file mode 100644
index 0000000..266e4ea
--- /dev/null
+++ b/packages/Win32/README
@@ -0,0 +1,53 @@
+Author: Jörn Hartroth
+
+DESCRIPTION
+
+(If you're only looking for precompiled win32 binaries, go visit
+http://curl.haxx.se/download.html)
+
+Packaging of the curl binaries for Win32 should at this point in time be based
+on the InfoZip (zip/unzip) archiver family as the de-facto standard for
+Windows archives. A package should contain the main binary curl.exe along with
+the appropriate documentation and license information files. For development
+releases, you should also include the header directory and probably the
+compiled binaries of libcurl and the appropriate Makefiles/project definition
+files for the compiler used.
+
+A simple packaging mechanism can be based on a set of batch files which call
+zip.exe with the appropriate files from the curl distribution - see the
+samples included below (Long lines have been split with "\" as the split
+marker, you'll want to rejoin the pieces to be all on one line in the batch
+file). Call any of these batch files - after compiling the curl binaries -
+with a single parameter specifying the name of the archive file to be created.
+
+It is implicitely assumed that all of the binary files (curl.exe, libcurl.a,
+etc) have previously been copied to the main directory of the curl source
+package (the directory where the main README resides), because that is where
+they should end up in the zip archive. The archive should *not* be built with
+absolute path information because the user will want to locally extract the
+archive contents and shift the binaries to his executable directory.
+
+SCRIPT_TEMPLATES
+
+curlpkg.bat:
+	zip -9 %1 curl.exe CHANGES LEGAL MPL-1.0.txt README \
+	 docs/FAQ docs/FEATURES docs/README.curl docs/README.win32 docs/TODO
+
+curldevpkg.bat:
+	zip -9 %1 curl.exe include\README include\curl\*.h CHANGES docs\* \
+	  curl.spec curl-ssl.spec LEGAL lib/Makefile.m32 src/Makefile.m32 \
+	  libcurl.a libcurl.dll libcurldll.a MPL-1.0.txt README
+
+PROCEDURE_EXAMPLE
+
+A standard packaging routine (for MingW32) using the above batch files could
+go like this:
+(No SSL)					(With SSL)
+cd <curl-sourcedir>\lib			cd <curl-sourcedir>\lib
+make -f Makefile.m32			make -f Makefile.m32 SSL=1
+cd ..\src					cd ..\src
+make -f Makefile.m32			make -f Makefile.m32 SSL=1
+cd ..						cd ..
+copy lib\libcurl.a .			copy lib\libcurl.a .
+copy src\curl.exe .			copy src\curl.exe .
+curlpkg curl-win32-nossl.zip		curlpkg curl-win32-ssl.zip
diff --git a/packages/Win32/cygwin/Makefile.am b/packages/Win32/cygwin/Makefile.am
new file mode 100644
index 0000000..b56148d
--- /dev/null
+++ b/packages/Win32/cygwin/Makefile.am
@@ -0,0 +1,62 @@
+EXTRA_DIST = README
+
+#
+# Build a Cygwin binary tar ball
+#
+# Read the README file for details on using this Makefile
+#
+# NOTE: As I'm not particularly familiar with Makefiles, this was the
+#  best I could come up with. It should probably be enhanced someday
+#  to actually use the correct target and pre-requisite names, etc...
+#  If anyone else wants to volunteer, feel free ;-)
+#
+
+# Cygwin build number (default to "1")
+CYGBUILD = 1
+
+# Cygwin tarball build dir (fully-qualified name, gets deleted when done)
+cygwintmp = $(CURDIR)/tmp_binbuild
+
+cygwinbin:
+	rm -rf $(cygwintmp)
+	rm -rf $(cygwintmp)-dev
+	$(MAKE) -C $(top_builddir) DESTDIR=$(cygwintmp) install-strip
+# $(STRIP) $(cygwintmp)/usr/bin/cygcurl-?.dll
+	$(mkinstalldirs) \
+	  $(cygwintmp)$(datadir)/doc/Cygwin \
+	  $(cygwintmp)$(datadir)/doc/$(PACKAGE)-$(VERSION) \
+	  $(cygwintmp)-dev$(datadir)/doc/$(PACKAGE)-$(VERSION)/libcurl \
+	  $(cygwintmp)-dev$(datadir)/doc/$(PACKAGE)-$(VERSION)/examples \
+	  $(cygwintmp)-dev$(mandir)
+#
+# copy some files into the binary install dir
+	cp $(srcdir)/README \
+	  $(cygwintmp)$(datadir)/doc/Cygwin/$(PACKAGE)-$(VERSION)-$(CYGBUILD).README
+	cd $(top_srcdir) ; cp CHANGES COPYING README RELEASE-NOTES docs/* \
+	  $(cygwintmp)$(datadir)/doc/$(PACKAGE)-$(VERSION) ; pwd
+	cd $(cygwintmp)$(datadir)/doc/$(PACKAGE)-$(VERSION) ; rm *.1 Makefile*
+#
+# copy some files into the -dev install dir, remove some from binary
+	cp $(top_srcdir)/docs/libcurl/*.html \
+	  $(cygwintmp)-dev$(datadir)/doc/$(PACKAGE)-$(VERSION)/libcurl
+	cp $(top_srcdir)/docs/examples/* \
+	  $(cygwintmp)-dev$(datadir)/doc/$(PACKAGE)-$(VERSION)/examples
+	rm $(cygwintmp)-dev$(datadir)/doc/$(PACKAGE)-$(VERSION)/examples/Makefile*
+	cp $(top_srcdir)/docs/examples/Makefile.example \
+	  $(cygwintmp)-dev$(datadir)/doc/$(PACKAGE)-$(VERSION)/examples
+	mv $(cygwintmp)$(datadir)/doc/$(PACKAGE)-$(VERSION)/BINDINGS \
+	   $(cygwintmp)-dev$(datadir)/doc/$(PACKAGE)-$(VERSION)
+	mv $(cygwintmp)$(datadir)/doc/$(PACKAGE)-$(VERSION)/INTERNALS \
+	   $(cygwintmp)-dev$(datadir)/doc/$(PACKAGE)-$(VERSION)
+	mv $(cygwintmp)/usr/include $(cygwintmp)-dev/usr
+	mv $(cygwintmp)/usr/lib $(cygwintmp)-dev/usr
+	mv $(cygwintmp)$(mandir)/man3 $(cygwintmp)-dev$(mandir)
+#
+# create both tar files, and delete tmp folders
+	cd $(cygwintmp) ; tar cjf \
+	  $(PACKAGE)-$(VERSION)-$(CYGBUILD).tar.bz2 usr
+	mv $(cygwintmp)/*.tar.bz2 . && rm -rf $(cygwintmp)
+#
+	cd $(cygwintmp)-dev ; tar cjf \
+	  $(PACKAGE)-devel-$(VERSION)-$(CYGBUILD).tar.bz2 usr
+	mv $(cygwintmp)-dev/*.tar.bz2 . && rm -rf $(cygwintmp)-dev
diff --git a/packages/Win32/cygwin/Makefile.in b/packages/Win32/cygwin/Makefile.in
new file mode 100644
index 0000000..6a9f166
--- /dev/null
+++ b/packages/Win32/cygwin/Makefile.in
@@ -0,0 +1,466 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = packages/Win32/cygwin
+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 = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
+	$(top_builddir)/src/curl_config.h \
+	$(top_builddir)/include/curl/curlbuild.h
+CONFIG_CLEAN_FILES =
+SOURCES =
+DIST_SOURCES =
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILD_LIBHOSTNAME_FALSE = @BUILD_LIBHOSTNAME_FALSE@
+BUILD_LIBHOSTNAME_TRUE = @BUILD_LIBHOSTNAME_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CONFIGURE_OPTIONS = @CONFIGURE_OPTIONS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CROSSCOMPILING_FALSE = @CROSSCOMPILING_FALSE@
+CROSSCOMPILING_TRUE = @CROSSCOMPILING_TRUE@
+CURLDEBUG_FALSE = @CURLDEBUG_FALSE@
+CURLDEBUG_TRUE = @CURLDEBUG_TRUE@
+CURL_CA_BUNDLE = @CURL_CA_BUNDLE@
+CURL_CFLAG_EXTRAS = @CURL_CFLAG_EXTRAS@
+CURL_DISABLE_DICT = @CURL_DISABLE_DICT@
+CURL_DISABLE_FILE = @CURL_DISABLE_FILE@
+CURL_DISABLE_FTP = @CURL_DISABLE_FTP@
+CURL_DISABLE_GOPHER = @CURL_DISABLE_GOPHER@
+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@
+CURL_NETWORK_LIBS = @CURL_NETWORK_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@
+ENABLE_SHARED = @ENABLE_SHARED@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
+HAVE_LIBZ = @HAVE_LIBZ@
+HAVE_LIBZ_FALSE = @HAVE_LIBZ_FALSE@
+HAVE_LIBZ_TRUE = @HAVE_LIBZ_TRUE@
+HAVE_PK11_CREATEGENERICOBJECT = @HAVE_PK11_CREATEGENERICOBJECT@
+IDN_ENABLED = @IDN_ENABLED@
+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@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+MANOPT = @MANOPT@
+MIMPURE_FALSE = @MIMPURE_FALSE@
+MIMPURE_TRUE = @MIMPURE_TRUE@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NO_UNDEFINED_FALSE = @NO_UNDEFINED_FALSE@
+NO_UNDEFINED_TRUE = @NO_UNDEFINED_TRUE@
+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@
+SONAME_BUMP_FALSE = @SONAME_BUMP_FALSE@
+SONAME_BUMP_TRUE = @SONAME_BUMP_TRUE@
+SSL_ENABLED = @SSL_ENABLED@
+STATICLIB_FALSE = @STATICLIB_FALSE@
+STATICLIB_TRUE = @STATICLIB_TRUE@
+STRIP = @STRIP@
+SUPPORT_FEATURES = @SUPPORT_FEATURES@
+SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
+TEST_SERVER_LIBS = @TEST_SERVER_LIBS@
+USE_ARES = @USE_ARES@
+USE_EMBEDDED_ARES_FALSE = @USE_EMBEDDED_ARES_FALSE@
+USE_EMBEDDED_ARES_TRUE = @USE_EMBEDDED_ARES_TRUE@
+USE_GNUTLS = @USE_GNUTLS@
+USE_LIBRTMP = @USE_LIBRTMP@
+USE_LIBSSH2 = @USE_LIBSSH2@
+USE_MANUAL_FALSE = @USE_MANUAL_FALSE@
+USE_MANUAL_TRUE = @USE_MANUAL_TRUE@
+USE_NSS = @USE_NSS@
+USE_OPENLDAP = @USE_OPENLDAP@
+USE_POLARSSL = @USE_POLARSSL@
+USE_SSLEAY = @USE_SSLEAY@
+USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
+VERSION = @VERSION@
+VERSIONNUM = @VERSIONNUM@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+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@
+lt_ECHO = @lt_ECHO@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = README
+
+#
+# Build a Cygwin binary tar ball
+#
+# Read the README file for details on using this Makefile
+#
+# NOTE: As I'm not particularly familiar with Makefiles, this was the
+#  best I could come up with. It should probably be enhanced someday
+#  to actually use the correct target and pre-requisite names, etc...
+#  If anyone else wants to volunteer, feel free ;-)
+#
+
+# Cygwin build number (default to "1")
+CYGBUILD = 1
+
+# Cygwin tarball build dir (fully-qualified name, gets deleted when done)
+cygwintmp = $(CURDIR)/tmp_binbuild
+all: 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 \
+		&& exit 0; \
+	      exit 1;; \
+	  esac; \
+	done; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  packages/Win32/cygwin/Makefile'; \
+	cd $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign  packages/Win32/cygwin/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
+
+mostlyclean-libtool:
+	-rm -f *.lo
+
+clean-libtool:
+	-rm -rf .libs _libs
+
+distclean-libtool:
+	-rm -f libtool
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+distdir: $(DISTFILES)
+	@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+	list='$(DISTFILES)'; for file in $$list; do \
+	  case $$file in \
+	    $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+	    $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+	  esac; \
+	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+	  dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+	  if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+	    dir="/$$dir"; \
+	    $(mkdir_p) "$(distdir)$$dir"; \
+	  else \
+	    dir=''; \
+	  fi; \
+	  if test -d $$d/$$file; then \
+	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	    fi; \
+	    cp -pR $$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:
+
+distclean-generic:
+	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_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 distclean-libtool
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+	-rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.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-exec install-exec-am \
+	install-info install-info-am install-man install-strip \
+	installcheck installcheck-am installdirs maintainer-clean \
+	maintainer-clean-generic mostlyclean mostlyclean-generic \
+	mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \
+	uninstall-info-am
+
+
+cygwinbin:
+	rm -rf $(cygwintmp)
+	rm -rf $(cygwintmp)-dev
+	$(MAKE) -C $(top_builddir) DESTDIR=$(cygwintmp) install-strip
+# $(STRIP) $(cygwintmp)/usr/bin/cygcurl-?.dll
+	$(mkinstalldirs) \
+	  $(cygwintmp)$(datadir)/doc/Cygwin \
+	  $(cygwintmp)$(datadir)/doc/$(PACKAGE)-$(VERSION) \
+	  $(cygwintmp)-dev$(datadir)/doc/$(PACKAGE)-$(VERSION)/libcurl \
+	  $(cygwintmp)-dev$(datadir)/doc/$(PACKAGE)-$(VERSION)/examples \
+	  $(cygwintmp)-dev$(mandir)
+#
+# copy some files into the binary install dir
+	cp $(srcdir)/README \
+	  $(cygwintmp)$(datadir)/doc/Cygwin/$(PACKAGE)-$(VERSION)-$(CYGBUILD).README
+	cd $(top_srcdir) ; cp CHANGES COPYING README RELEASE-NOTES docs/* \
+	  $(cygwintmp)$(datadir)/doc/$(PACKAGE)-$(VERSION) ; pwd
+	cd $(cygwintmp)$(datadir)/doc/$(PACKAGE)-$(VERSION) ; rm *.1 Makefile*
+#
+# copy some files into the -dev install dir, remove some from binary
+	cp $(top_srcdir)/docs/libcurl/*.html \
+	  $(cygwintmp)-dev$(datadir)/doc/$(PACKAGE)-$(VERSION)/libcurl
+	cp $(top_srcdir)/docs/examples/* \
+	  $(cygwintmp)-dev$(datadir)/doc/$(PACKAGE)-$(VERSION)/examples
+	rm $(cygwintmp)-dev$(datadir)/doc/$(PACKAGE)-$(VERSION)/examples/Makefile*
+	cp $(top_srcdir)/docs/examples/Makefile.example \
+	  $(cygwintmp)-dev$(datadir)/doc/$(PACKAGE)-$(VERSION)/examples
+	mv $(cygwintmp)$(datadir)/doc/$(PACKAGE)-$(VERSION)/BINDINGS \
+	   $(cygwintmp)-dev$(datadir)/doc/$(PACKAGE)-$(VERSION)
+	mv $(cygwintmp)$(datadir)/doc/$(PACKAGE)-$(VERSION)/INTERNALS \
+	   $(cygwintmp)-dev$(datadir)/doc/$(PACKAGE)-$(VERSION)
+	mv $(cygwintmp)/usr/include $(cygwintmp)-dev/usr
+	mv $(cygwintmp)/usr/lib $(cygwintmp)-dev/usr
+	mv $(cygwintmp)$(mandir)/man3 $(cygwintmp)-dev$(mandir)
+#
+# create both tar files, and delete tmp folders
+	cd $(cygwintmp) ; tar cjf \
+	  $(PACKAGE)-$(VERSION)-$(CYGBUILD).tar.bz2 usr
+	mv $(cygwintmp)/*.tar.bz2 . && rm -rf $(cygwintmp)
+#
+	cd $(cygwintmp)-dev ; tar cjf \
+	  $(PACKAGE)-devel-$(VERSION)-$(CYGBUILD).tar.bz2 usr
+	mv $(cygwintmp)-dev/*.tar.bz2 . && rm -rf $(cygwintmp)-dev
+# 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/packages/Win32/cygwin/README b/packages/Win32/cygwin/README
new file mode 100644
index 0000000..7457f73
--- /dev/null
+++ b/packages/Win32/cygwin/README
@@ -0,0 +1,114 @@
+Curl is a tool for transferring files with URL syntax, supporting
+  FTP, FTPS, HTTP, HTTPS, TELNET, DICT, FILE and LDAP.
+  Curl 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 a busload of other useful tricks.
+
+See /usr/doc/curl-$(VERSION)/FEATURES for more info.
+
+
+Dependencies:
+  - Cygwin
+  - OpenSSL 0.9.6b-2+ (*)
+
+  (*) cURL can be built without SSL support, see below for details
+
+
+Canonical Homepage and Downloads:
+  http://curl.haxx.se/
+  http://curl.haxx.se/download.html
+
+
+Cygwin specific source files (a .README template and a Makefile
+  for building binary tarballs) are maintained in the upstream
+  CVS at: <srctop>/packages/Win32/cygwin/
+
+
+Build Instructions (to recompile from the cygwin source tarball):
+  ---STANDARD (with SSL) RELEASE---
+  Download the source (either the official release or the cygwin version),
+  unpack it (done for you if using setup.exe), then:
+
+  $ ./configure --prefix=/usr --mandir=/usr/share/man  # (*)
+  $ make
+  $ make test    # optional
+  $ make install # (**)
+
+  (*) The Cygwin project now (as of sometime in 2003) prefers man pages
+      within /usr/share/man, as opposed to the default /usr/man.
+
+  (**) LibTool 1.4.2 had a bug related to cygwin's use of ".exe" extensions,
+      such that "make install" blew up at curl.exe. See this URL for details:
+         http://mail.gnu.org/pipermail/libtool/2001-September/005549.html
+      The copy of ltmain.sh that is distributed with cURL includes this patch.
+
+  As of curl 7.9.1, the official source compiles (under Cygwin) and tests
+    100% cleanly OOTB (Out Of The Box)
+
+  ---NO SSL RELEASE---
+  Same as standard, except for the configure step, which changes to:
+
+  $ ./configure --prefix=/usr --mandir=/usr/share/man --without-ssl
+
+  NOTE: the standard release is what is available via Cygwin's setup.exe;
+    the no-ssl release is only available from the curl website
+
+
+Packaging Instructions:
+  ---BINARY---
+  Compile cleanly as described above, then:
+
+  $ make cygwinbin CYGBUILD=n
+
+  where n is the cygwin release number (e.g. the "1" in curl-7.9-1),
+  and "CYGBUILD=n" is optional (n defaults to 1 if not specified)
+
+  Assuming everything worked, you'll find your binary tarballs in
+   $(buildtop)/packages/Win32/cygwin/
+
+  ---SOURCE---
+  1. download & unpack the pristine source
+  2. rename the source dir to add the "-$(REL)" suffix, e.g.:
+     $ mv curl-7.9 curl-7.9-1
+  3. unpack the pristine source once more, so you'll end up
+     with 2 directories: "curl-7.9" and "curl-7.9-1" in this example
+  3. add a CYGWIN-PATCHES directory, and add this readme to it
+     $ cd curl-7.9-1; mkdir CYGWIN-PATCHES
+     $ cp packages/Win32/cygwin/README CYGWIN-PATCHES/curl-7.9-1.README
+  4. if applicable, document any changes in the README file
+  5. create a patch which, when applied
+     (using `patch -p1 < curl-7.9-$(REL).patch`)
+     will remove any changes you've made to the pristine source:
+     $ cd ..
+     $ diff -Nrup curl-7.9-1 curl-7.9 > curl-7.9-1.patch
+     and then move it into the CYGWIN-PATCHES directory
+     $ mv curl-7.9-1.patch curl-7.9-1/CYGWIN-PATCHES
+  6. pack the new source dir into a tar.bz2 file:
+     $ tar cfj curl-7.9-1-src.tar.bz2 curl-7.9-1
+
+  ---SETUP.HINT---
+  @ curl
+  sdesc: "a client that groks URLs"
+  ldesc: "Curl is a tool for transferring files with URL syntax,
+  supporting FTP, FTPS, HTTP, HTTPS, TELNET, DICT, FILE
+  and LDAP. Curl 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 a busload of other useful tricks."
+  category: Web Libs
+  requires: cygwin openssl
+
+  @ curl-devel
+  sdesc: "(lib)cURL headers, static libraries, developer docs and samples"
+  ldesc: "curl-devel is the developer-oriented (non-run-time) parts
+  of the cURL package. It includes header files, static libraries,
+  example source code snippets, and the libcurl man pages."
+  category: Web Libs Devel
+  requires: cygwin openssl curl
+
+
+Cygwin port maintained by:
+  Kevin Roth <kproth @ users . sourceforge . net>
+  Questions about cURL should be directed to curl-users@cool.haxx.se.
+  Questions about this cygwin package go to cygwin@cygwin.com.
diff --git a/packages/vms/Makefile.am b/packages/vms/Makefile.am
new file mode 100644
index 0000000..b6f0939
--- /dev/null
+++ b/packages/vms/Makefile.am
@@ -0,0 +1,17 @@
+EXTRA_DIST = build_vms.com \
+ config-vms.h \
+ curlmsg.h \
+ curlmsg.msg \
+ curlmsg.sdl \
+ curlmsg_vms.h \
+ hpssl_alpha.opt \
+ hpssl_ia64.opt \
+ hpssl_vax.opt \
+ ldap.opt \
+ openssl_alpha.opt \
+ openssl_ia64.opt \
+ openssl_vax.opt \
+ openssl_ssl_alpha.opt \
+ openssl_ssl_ia64.opt \
+ openssl_ssl_vax.opt \
+ readme
diff --git a/packages/vms/Makefile.in b/packages/vms/Makefile.in
new file mode 100644
index 0000000..3e83ae5
--- /dev/null
+++ b/packages/vms/Makefile.in
@@ -0,0 +1,422 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = packages/vms
+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 = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
+	$(top_builddir)/src/curl_config.h \
+	$(top_builddir)/include/curl/curlbuild.h
+CONFIG_CLEAN_FILES =
+SOURCES =
+DIST_SOURCES =
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILD_LIBHOSTNAME_FALSE = @BUILD_LIBHOSTNAME_FALSE@
+BUILD_LIBHOSTNAME_TRUE = @BUILD_LIBHOSTNAME_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CONFIGURE_OPTIONS = @CONFIGURE_OPTIONS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CROSSCOMPILING_FALSE = @CROSSCOMPILING_FALSE@
+CROSSCOMPILING_TRUE = @CROSSCOMPILING_TRUE@
+CURLDEBUG_FALSE = @CURLDEBUG_FALSE@
+CURLDEBUG_TRUE = @CURLDEBUG_TRUE@
+CURL_CA_BUNDLE = @CURL_CA_BUNDLE@
+CURL_CFLAG_EXTRAS = @CURL_CFLAG_EXTRAS@
+CURL_DISABLE_DICT = @CURL_DISABLE_DICT@
+CURL_DISABLE_FILE = @CURL_DISABLE_FILE@
+CURL_DISABLE_FTP = @CURL_DISABLE_FTP@
+CURL_DISABLE_GOPHER = @CURL_DISABLE_GOPHER@
+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@
+CURL_NETWORK_LIBS = @CURL_NETWORK_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@
+ENABLE_SHARED = @ENABLE_SHARED@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GREP = @GREP@
+HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
+HAVE_LIBZ = @HAVE_LIBZ@
+HAVE_LIBZ_FALSE = @HAVE_LIBZ_FALSE@
+HAVE_LIBZ_TRUE = @HAVE_LIBZ_TRUE@
+HAVE_PK11_CREATEGENERICOBJECT = @HAVE_PK11_CREATEGENERICOBJECT@
+IDN_ENABLED = @IDN_ENABLED@
+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@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+MANOPT = @MANOPT@
+MIMPURE_FALSE = @MIMPURE_FALSE@
+MIMPURE_TRUE = @MIMPURE_TRUE@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NO_UNDEFINED_FALSE = @NO_UNDEFINED_FALSE@
+NO_UNDEFINED_TRUE = @NO_UNDEFINED_TRUE@
+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@
+SONAME_BUMP_FALSE = @SONAME_BUMP_FALSE@
+SONAME_BUMP_TRUE = @SONAME_BUMP_TRUE@
+SSL_ENABLED = @SSL_ENABLED@
+STATICLIB_FALSE = @STATICLIB_FALSE@
+STATICLIB_TRUE = @STATICLIB_TRUE@
+STRIP = @STRIP@
+SUPPORT_FEATURES = @SUPPORT_FEATURES@
+SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
+TEST_SERVER_LIBS = @TEST_SERVER_LIBS@
+USE_ARES = @USE_ARES@
+USE_EMBEDDED_ARES_FALSE = @USE_EMBEDDED_ARES_FALSE@
+USE_EMBEDDED_ARES_TRUE = @USE_EMBEDDED_ARES_TRUE@
+USE_GNUTLS = @USE_GNUTLS@
+USE_LIBRTMP = @USE_LIBRTMP@
+USE_LIBSSH2 = @USE_LIBSSH2@
+USE_MANUAL_FALSE = @USE_MANUAL_FALSE@
+USE_MANUAL_TRUE = @USE_MANUAL_TRUE@
+USE_NSS = @USE_NSS@
+USE_OPENLDAP = @USE_OPENLDAP@
+USE_POLARSSL = @USE_POLARSSL@
+USE_SSLEAY = @USE_SSLEAY@
+USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
+VERSION = @VERSION@
+VERSIONNUM = @VERSIONNUM@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+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@
+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@
+lt_ECHO = @lt_ECHO@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+subdirs = @subdirs@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = build_vms.com \
+ config-vms.h \
+ curlmsg.h \
+ curlmsg.msg \
+ curlmsg.sdl \
+ curlmsg_vms.h \
+ hpssl_alpha.opt \
+ hpssl_ia64.opt \
+ hpssl_vax.opt \
+ ldap.opt \
+ openssl_alpha.opt \
+ openssl_ia64.opt \
+ openssl_vax.opt \
+ openssl_ssl_alpha.opt \
+ openssl_ssl_ia64.opt \
+ openssl_ssl_vax.opt \
+ readme
+
+all: 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 \
+		&& exit 0; \
+	      exit 1;; \
+	  esac; \
+	done; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  packages/vms/Makefile'; \
+	cd $(top_srcdir) && \
+	  $(AUTOMAKE) --foreign  packages/vms/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
+
+mostlyclean-libtool:
+	-rm -f *.lo
+
+clean-libtool:
+	-rm -rf .libs _libs
+
+distclean-libtool:
+	-rm -f libtool
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+distdir: $(DISTFILES)
+	@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+	list='$(DISTFILES)'; for file in $$list; do \
+	  case $$file in \
+	    $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+	    $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+	  esac; \
+	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+	  dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+	  if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+	    dir="/$$dir"; \
+	    $(mkdir_p) "$(distdir)$$dir"; \
+	  else \
+	    dir=''; \
+	  fi; \
+	  if test -d $$d/$$file; then \
+	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	    fi; \
+	    cp -pR $$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:
+
+distclean-generic:
+	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_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 distclean-libtool
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+	-rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.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-exec install-exec-am \
+	install-info install-info-am install-man install-strip \
+	installcheck installcheck-am installdirs maintainer-clean \
+	maintainer-clean-generic mostlyclean mostlyclean-generic \
+	mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \
+	uninstall-info-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/packages/vms/build_vms.com b/packages/vms/build_vms.com
new file mode 100644
index 0000000..68d9f00
--- /dev/null
+++ b/packages/vms/build_vms.com
@@ -0,0 +1,583 @@
+$! BUILD_VMS.COM
+$!
+$! I've taken the original build_vms.com, supplied by Nico Baggus, if
+$! memory serves me correctly, and made some modifications.
+$!
+$! SSL support is controlled by logical names.  If SSL$INCLUDE is
+$! defined, then it is assumed that HP's SSL product has been installed.
+$! If OPENSSL is defined, but SSL$INCLUDE is not, then OpenSSL will be
+$! used.  If neither logical name is defined, then SSL support will not
+$! be compiled/linked in.  Command-line options NOHPSSL and NOSSL can be
+$! specified to override the automatic SSL selection.
+$!
+$! Command-line Options:
+$!
+$!    CLEAN     Delete product files for this host architecture.  (No
+$!              build done.)
+$!    CLEAN_ALL Delete product files for all host architectures.  (No
+$!              build done.)
+$!
+$!    64        Compile with 64-bit pointers.
+$!    CCQUAL=x  Add "x" to the C compiler qualifiers.
+$!    DEBUG     Compile and link with debug.
+$!    IEEE      Use IEEE floating point.  (Alpha.)
+$!    LARGE     Enable large-file support.  (Non-VAX, VMS >= V7.2.)
+$!    LDAP      Enable LDAP support.
+$!    LIST      Create C compiler listings and linker maps.
+$!    NOHPSSL   Don't use HP SSL, even if available.
+$!    NOSSL     Don't use any SSL, even if available.
+$!    OSSLOLB   Use OpenSSL object libraries (.OLB), even if shared
+$!              images (.EXE) are available.
+$!
+$! DCL Symbols:
+$!
+$!    CURL_CCDEFS="c_macro_1=value1 [, c_macro_2=value2 [...]]"
+$!              Compile with these additional C macros defined.
+$!
+$! Revisions:
+$!
+$!  2-DEC-2003, MSK, the "original" version.
+$!                   It works for me.  Your mileage may vary.
+$! 13-JAN-2004, MSK, moved this procedure to the [.packages.vms] directory
+$!                   and updated it to do hardware dependent builds.
+$! 29-JAN-2004, MSK, moved logical defines into defines.com
+$!  6-FEB-2004, MSK, put in various SSL support bits
+$!  9-MAR-2004, MSK, the config-vms.h* files are now copied to the lib and
+$!                   src directories as curl_config.h.
+$! 15-MAR-2004, MSK, All of the curlmsg*.* files have also been moved to
+$!                   this build directory.  They will be copied to the src
+$!                   directory before build.  The .msg file will be compiled
+$!                   to get the .obj for messages, but the .h and .sdl files
+$!                   are not automatically created since they partly rely on
+$!                   the freeware SDL tool.
+$!  8-FEB-2005, MSK, merged the two config-vms.h* files into one that uses
+$!                   USE_SSLEAY to define if the target has SSL support built
+$!                   in.  Changed the cc/define parameter accordingly.
+$! 11-FEB-2005, MSK, If [--.LIB]AMIGAOS.C and NWLIB.C are there, rename them
+$! 23-MAR-2005, MSK, relocated cc_qual define so that DEBUG option would work
+$! 25-APR-2007, STL, allow compilation in 64-bit mode.
+$! 13-DEC-2009. SMS, Changed to skip unwanted source files without
+$!                   renaming the original files.
+$!                   Eliminated needless, persistent logical names.
+$!                   Added CURL_CCDEFS DCL symbol for user-specified C
+$!                   macro definitions.
+$!                   Added CLEAN and CLEAN_ALL options.
+$!                   Added CCQUAL option for user-specified C compiler
+$!                   qualifiers.
+$!                   Added IEEE option for IEEE floating point (Alpha).
+$!                   Added LARGE option for large-file support.
+$!                   Added OSSLOLB option, and support for OpenSSL
+$!                   shared images.
+$!                   Changed to put listing and map files into lisdir:.
+$!                   Changed to avoid case confusion on ODS5 disks.
+$!                   Added more default dev:[dir] save+restore.
+$!                   Moved remaining "defines.com" code (back) into
+$!                   here, eliminating the hard-coded OpenSSL nonsense.
+$!                   Changed to use F$GETSYI( "ARCH_NAME") (or
+$!                   equivalent) to name architecture-specific product
+$!                   file destination directory, and to create the
+$!                   directory if needed (obviating inclusion of these
+$!                   directories and dummy files in the distribution
+$!                   kit).
+$!                   Changed the "compile" subroutine to break the CC
+$!                   command across multiple lines to avoid DCL
+$!                   line-too-long problems.
+$!                   Changed "vo_c" messages to show the CC qualifiers
+$!                   once, not with every compile command.
+$!
+$!
+$! Save the original default dev:[dir], and arrange for its restoration
+$! at exit.
+$!
+$ curl = ""
+$ orig_def = f$environment( "DEFAULT")
+$ on error then goto Common_Exit
+$ on control_y then goto Common_Exit
+$!
+$ ctrl_y  = 1556
+$ proc = f$environment( "PROCEDURE")
+$ proc_dev_dir = -
+   f$parse( proc, , , "DEVICE")+ f$parse( proc, , , "DIRECTORY")
+$!
+$! Verbose output message stuff.  Define symbol to "write sys$output" or "!".
+$! vo_c - verbose output for compile
+$! vo_l - link
+$! vo_o - object check
+$!
+$ vo_c = "write sys$output"
+$ vo_l = "write sys$output"
+$ vo_o = "!"
+$!
+$! Determine the main distribution directory ("[--]") in an
+$! ODS5-tolerant (case-insensitive) way.  (We do assume that the only
+$! "]" is the one at the end.)
+$!
+$ set default 'proc_dev_dir'
+$ set default [--]
+$ top_dev_dir = f$environment( "DEFAULT")- "]"
+$!
+$! Define the architecture-specific product file destination directory
+$! name(s).
+$!
+$ if (f$getsyi( "HW_MODEL") .lt. 1024)
+$ then
+$    arch_name = "VAX"
+$ else
+$    arch_name = ""
+$    arch_name = arch_name+ f$edit( f$getsyi( "ARCH_NAME"), "UPCASE")
+$    if (arch_name .eqs. "") then arch_name = "UNK"
+$ endif
+$!
+$ exedir = proc_dev_dir- "]"+ ".''arch_name']"
+$ lisdir = exedir
+$ objdir = exedir
+$!
+$! Interpret command-line options.
+$!
+$ hpssl = 0
+$ ldap = 0
+$ list = 0
+$ nohpssl = 0
+$ nossl = 0
+$ openssl = 0
+$ osslolb = 0
+$ cc_qual1 = ""
+$ cc_qual2 = ""
+$ cc_defs = "HAVE_CONFIG_H=1"
+$ if (f$type( CURL_CCDEFS) .nes. "")
+$ then
+$    CURL_CCDEFS = f$edit( CURL_CCDEFS, "TRIM")
+$    cc_defs = cc_defs+ ", "+ CURL_CCDEFS
+$ endif
+$ link_qual = ""
+$ msg_qual = "/object = ''objdir'"
+$ ssl_opt = ""
+$!
+$ arg = 1
+$arg_loop:
+$    p = "p''arg'"
+$    arg_val = 'p'
+$    if (arg_val .eqs. "") then goto arg_loop_out
+$    arg_val = f$edit( arg_val, "upcase")
+$!
+$    if (arg_val .eqs. "CLEAN")
+$    then
+$       prods = "''exedir'*.*;*"
+$       if (f$search( prods) .nes. "") then delete /log 'prods'
+$       prods = proc_dev_dir+ arch_name+ ".DIR;1"
+$       if (f$search( prods) .nes. "") then delete /log 'prods'
+$       goto Common_Exit
+$    endif
+$!
+$    if (arg_val .eqs. "CLEAN_ALL")
+$    then
+$       prods = proc_dev_dir- "]"+ ".ALPHA]*.*;*"
+$       if (f$search( prods) .nes. "") then delete /log 'prods'
+$       prods = proc_dev_dir+ "ALPHA"+ ".DIR;1"
+$       if (f$search( prods) .nes. "") then delete /log 'prods'
+$       prods = proc_dev_dir- "]"+ ".IA64]*.*;*"
+$       if (f$search( prods) .nes. "") then delete /log 'prods'
+$       prods = proc_dev_dir+ "IA64"+ ".DIR;1"
+$       if (f$search( prods) .nes. "") then delete /log 'prods'
+$       prods = proc_dev_dir- "]"+ ".VAX]*.*;*"
+$       if (f$search( prods) .nes. "") then delete /log 'prods'
+$       prods = proc_dev_dir+ "VAX"+ ".DIR;1"
+$       if (f$search( prods) .nes. "") then delete /log 'prods'
+$       goto Common_Exit
+$    endif
+$!
+$    if (arg_val .eqs. "64")
+$    then
+$       cc_qual1 = cc_qual1+ " /POINTER = 64"
+$       goto arg_loop_end
+$    endif
+$!
+$    if (f$extract( 0, 6, arg_val) .eqs. "CCQUAL")
+$    then
+$       opts = f$edit( arg_val, "COLLAPSE")
+$       eq = f$locate( "=", opts)
+$       cc_qual2 = f$extract( (eq+ 1), 1000, opts)
+$       goto arg_loop_end
+$    endif
+$!
+$    if (arg_val .eqs. "DEBUG")
+$    then
+$       cc_qual1 = cc_qual1+ " /debug /nooptimize"
+$       link_qual = link_qual+ " /debug"
+$       goto arg_loop_end
+$    endif
+$!
+$    if (arg_val .eqs. "IEEE")
+$    then
+$       cc_qual1 = cc_qual1+ " /FLOAT = IEEE_FLOAT"
+$       goto arg_loop_end
+$    endif
+$!
+$    if (arg_val .eqs. "LARGE")
+$    then
+$       if (arch_name .eqs. "VAX")
+$       then
+$          write sys$output """LARGE"" is ignored on VAX."
+$       else
+$          cc_defs = cc_defs+ ", _LARGEFILE=1"
+$       endif
+$       goto arg_loop_end
+$    endif
+$!
+$    if (arg_val .eqs. "LDAP")
+$    then
+$       ldap = 1
+$       goto arg_loop_end
+$    endif
+$!
+$    if (f$extract( 0, 4, arg_val) .eqs. "LIST")
+$    then
+$       list = 1
+$       cc_qual1 = cc_qual1+ " /list = ''lisdir' /show = (all, nomessages)"
+$       link_qual = link_qual+ " /map = ''lisdir'"
+$       msg_qual = msg_qual+ " /list = ''lisdir'"
+$       goto arg_loop_end
+$    endif
+$!
+$    if (arg_val .eqs. "NOHPSSL")
+$    then
+$       nohpssl = 1
+$       goto arg_loop_end
+$    endif
+$!
+$    if (arg_val .eqs. "NOSSL")
+$    then
+$       nossl = 1
+$       goto arg_loop_end
+$    endif
+$!
+$    if (arg_val .eqs. "OSSLOLB")
+$    then
+$       osslolb = 1
+$       goto arg_loop_end
+$    endif
+$!
+$    write sys$output "Unrecognized command-line option: ''arg_val'"
+$    goto Common_Exit
+$!
+$arg_loop_end:
+$ arg = arg+ 1
+$ goto arg_loop
+$arg_loop_out:
+$!
+$! CC /LIST, LINK /MAP, and MESSAGE /LIST are defaults in batch mode,
+$! so be explicit when they're not desired.
+$!
+$ if (list .eq. 0)
+$ then
+$    cc_qual1 = cc_qual1+ " /nolist"
+$    link_qual = link_qual+ " /nomap"
+$    msg_qual = msg_qual+ " /nolist"
+$ endif
+$!
+$! Create product directory, if needed.
+$!
+$ if (f$search( proc_dev_dir+ arch_name+ ".DIR;1") .eqs. "")
+$ then
+$    create /directory 'exedir'
+$ endif
+$!
+$! Detect available (but not prohibited) SSL software.
+$!
+$ if (.not. nossl)
+$ then
+$    if (f$trnlnm( "OPENSSL") .nes. "")
+$    then
+$       cc_defs = cc_defs+ ", USE_SSLEAY=1"
+$       if ((f$trnlnm( "SSL$INCLUDE") .nes. "") .and. (.not. nohpssl))
+$       then
+$!         Use HP SSL.
+$          hpssl = 1
+$          ssl_opt = ", ''proc_dev_dir'hpssl_"+ -
+            f$getsyi("ARCH_NAME")+ ".opt /options"
+$       else
+$!         Use OpenSSL.  Assume object libraries, unless shared images
+$!         are found (and not prohibited).
+$          openssl = 1
+$          ssl_opt = ", ssllib:libssl.olb /library"+ -
+            ", ssllib:libcrypto.olb /library"
+$          if (osslolb .eq. 0)
+$          then
+              if ((f$search( "ssllib:ssl_libcrypto.exe") .nes. "") .and. -
+               (f$search( "ssllib:ssl_libssl.exe") .nes. ""))
+$             then
+$!               OpenSSL shared images with "SSL_xxx.EXE names.
+$                openssl = 2
+$                ssl_opt = ", ''proc_dev_dir'openssl_ssl_"+ -
+                  f$getsyi("ARCH_NAME")+ ".opt /options"
+$             else
+$                if ((f$search( "ssllib:libcrypto.exe") .nes. "") .and. -
+                  (f$search( "ssllib:libssl.exe") .nes. ""))
+$                then
+$!                  OpenSSL shared images with "xxx.EXE names.
+$                   openssl = 3
+$                   ssl_opt = ", ''proc_dev_dir'openssl_"+ -
+                     f$getsyi("ARCH_NAME")+ ".opt /options"
+$                endif
+$             endif
+$          endif
+$       endif
+$    endif
+$ endif
+$!
+$! LDAP.
+$!
+$ if (ldap .eq. 0)
+$ then
+$    cc_defs = cc_defs+ ", CURL_DISABLE_LDAP=1"
+$ endif
+$!
+$! Form CC qualifiers.
+$!
+$ cc_defs = "/define = (''cc_defs')"
+$ cc_qual2 = cc_qual2+ " /object = ''objdir'"+ -
+   " /include = ([-.lib], [-.src],"+ -
+   " [-.packages.vms], [-.packages.vms.''arch_name'])"
+$!
+$ 'vo_c' "CC opts:", -
+  " ''cc_defs'", -
+  " ''cc_qual1'", -
+  " ''cc_qual2'"
+$!
+$! Inform the victim of our plans.
+$!
+$ if (hpssl)
+$ then
+$    'vo_c' "%CURL-I-BLDHPSSL, building with HP SSL support"
+$ else
+$    if (openssl .ne. 0)
+$    then
+$       if (openssl .eq. 1)
+$       then
+$          'vo_c' -
+ "%CURL-I-BLDOSSL_OLB, building with OpenSSL (object library) support"
+$       else
+$          'vo_c' -
+ "%CURL-I-BLDOSSL_EXE, building with OpenSSL (shared image) support"
+$       endif
+$    else
+$       'vo_c' "%CURL-I-BLDNOSSL, building with NO SSL support"
+$    endif
+$ endif
+$!
+$! Announce destination and SSL directories.
+$!
+$ 'vo_c' "   OBJDIR = ''objdir'"
+$ 'vo_c' "   EXEDIR = ''exedir'"
+$!
+$ if (openssl .ne. 0)
+$ then
+$    ssllib = f$trnlnm( "ssllib")
+$    if (ssllib .eqs. "")
+$    then
+$        ssllib = "(undefined)"
+$    endif
+$    'vo_c' "   SSLLIB = ''ssllib'"
+$!
+$    if (openssl .eq. 1)
+$    then
+$       ossl_lib1 = f$trnlnm( "ssllib")+ "LIBSSL.OLB"
+$       ossl_lib2 = f$trnlnm( "ssllib")+ "LIBCRYPTO.OLB"
+$       msg = "object libraries"
+$    else
+$       if (openssl .eq. 2)
+$       then
+$          ossl_lib1 = f$trnlnm( "ssllib")+ "SSL_LIBSSL.EXE"
+$          ossl_lib2 = f$trnlnm( "ssllib")+ "SSL_LIBCRYPTO.EXE"
+$       else
+$          ossl_lib1 = f$trnlnm( "ssllib")+ "LIBSSL.EXE"
+$          ossl_lib2 = f$trnlnm( "ssllib")+ "LIBCRYPTO.EXE"
+$       endif
+$       msg = "shared images"
+$    endif
+$    if ((f$search( ossl_lib1) .eqs. "") .or. -
+      (f$search( ossl_lib2) .eqs. ""))
+$    then
+$       write sys$output "Can't find OpenSSL ''msg':"
+$       write sys$output "   ''ossl_lib1'"
+$       write sys$output "   ''ossl_lib2'"
+$       goto Common_Exit
+$    endif
+$ endif
+$!
+$! Define the "curl" (process) logical name for "#include <curl/xxx.h>".
+$!
+$ curl = f$trnlnm( "curl", "LNM$PROCESS")
+$ if (curl .nes. "")
+$ then
+$    write sys$output ""
+$    write sys$output -
+ "Process logical name ""curl"" is already defined, but this procedure"
+$    write sys$output -
+ "would override that definition.  Use a command like"
+$    write sys$output -
+ "      deassign /process curl"
+$    write sys$output -
+ "to cancel that logical name definition, and then and re-run this procedure."
+$    write sys$output ""
+$    goto Common_Exit
+$ endif
+$ define curl 'top_dev_dir'.include.curl]
+$!
+$! Copy the VMS-specific config file into the product directory.
+$!
+$ call MoveIfDiff 'proc_dev_dir'config-vms.h 'objdir'curl_config.h
+$!
+$ on control_y then goto Common_Exit
+$!
+$ set default 'proc_dev_dir'
+$ call build "[--.lib]" "*.c" "''objdir'CURLLIB.OLB" "amigaos, nwlib, nwos"
+$ if ($status .eq. ctrl_y) then goto Common_Exit
+$ call build "[--.src]" "*.c" "''objdir'CURLSRC.OLB"
+$ if ($status .eq. ctrl_y) then goto Common_Exit
+$ call build "[]" "*.msg" "''objdir'CURLSRC.OLB"
+$ if ($status .eq. ctrl_y) then goto Common_Exit
+$!
+$ ldap_opt = ""
+$ if (ldap .ne. 0) then ldap_opt = ", ''proc_dev_dir'ldap.opt /options"
+$!
+$ if (openssl .ne. 0)
+$ then
+$    if (openssl .eq. 1)
+$    then
+$       'vo_l' "%CURL-I-LINK_OSSL, linking with OpenSSL (object library)"
+$    else
+$       'vo_l' "%CURL-I-LINK_HPSSL, linking with OpenSSL (shared image)"
+$    endif
+$ else
+$    if (hpssl)
+$    then
+$       'vo_l' "%CURL-I-LINK_HPSSL, linking with HP SSL"
+$    else
+$       'vo_l' "%CURL-I-LINK_NOSSL, linking with NO SSL support"
+$    endif
+$ endif
+$!
+$ link 'link_qual' /executable = 'exedir'CURL.EXE -
+   'objdir'curlsrc.olb /library /include = (main, curlmsg), -
+   'objdir'curllib.olb /library -
+   'ssl_opt' -
+   'ldap_opt'
+$!
+$ goto Common_Exit
+$!
+$! Subroutine to build everything with a filetype passed in via P2 in
+$! the directory passed in via P1 and put it in the object library named
+$! via P3.  Exclude items in P4.
+$!
+$build:   subroutine
+$    build_def = f$environment( "default")
+$    on control_y then goto EndLoop ! SS$_CONTROLY
+$    sts = 1 ! SS$_NORMAL.
+$!    set noon
+$    set default 'p1'
+$    search = p2
+$    reset = f$search("reset")
+$    if f$search( p3) .eqs. ""
+$    then
+$       librarian /create /object 'p3'
+$    endif
+$    reject_list__ = ","+ f$edit( p4, "COLLAPSE, UPCASE")+ ","
+$    reject_list___len = f$length( reject_list__)
+$    reset = f$search( "reset", 1)
+$Loop:
+$    file = f$search( search, 1)
+$    if file .eqs. "" then goto EndLoop
+$!      Skip a name if it's in the P4 exclusion list.
+$       if (p4 .nes. "")
+$       then
+$          name__ = ","+ -
+            f$edit( f$parse( file, , , "NAME", "SYNTAX_ONLY"), "UPCASE")+ -
+            ","
+$          if (f$locate( name__, reject_list__) .lt. reject_list___len)
+$          then
+$             goto Loop
+$          endif
+$       endif
+$       objfile = f$parse( "''objdir'.OBJ;", file)
+$       obj = f$search( objfile, 2)
+$       if (obj .nes. "")
+$       then
+$          if (f$cvtime(f$file(file,"rdt")) .gts. f$cvtime(f$file(obj,"rdt")))
+$          then
+$             call compile 'file'
+$             sts = $status
+$             if .not. sts
+$             then
+$                goto EndLoop
+$             endif
+$             librarian /object 'p3' 'objfile'
+$          else
+$             'vo_o' "%CURL-I-OBJUTD, ", objfile, " is up to date"
+$          endif
+$       else
+$          'vo_o' "%CURL-I-OBJDNE, ", file, " does not exist"
+$          call compile 'file'
+$          sts = $status
+$          if .not. sts
+$          then
+$             goto EndLoop
+$          endif
+$          librarian /object 'p3' 'objfile'
+$       endif
+$    goto Loop
+$EndLoop:
+$!!!    purge
+$    set default 'build_def'
+$    exit 'sts'
+$ endsubroutine   ! Build
+$!
+$! Based on the file TYPE, do the right compile command.
+$! Only C and MSG supported.
+$!
+$compile:   subroutine
+$    on control_y then return ctrl_y ! SS$_CONTROLY
+$!    set noon
+$    file = p1
+$    qual = p2+ p3+ p4+ p5+ p6+ p7+ p8
+$    typ = f$edit( f$parse( file, , , "TYPE"), "UPCASE") - "."
+$    if (typ .eqs. "C")
+$    then
+$       'vo_c' "CC (opts) ", file
+$       CC 'cc_defs' -
+         'cc_qual1' -
+         'cc_qual2' -
+         'file'
+$    else
+$       cmd_msg = "MESSAGE "+ msg_qual
+$       x = cmd_'typ'
+$       'vo_c' x," ",file
+$       'x' 'file'
+$    endif
+$ ENDSUBROUTINE   ! Compile
+$!
+$! Do a diff of the file specified in P1 with that in P2.  If different
+$! copy P1 to P2.  This also covers if P2 doesn't exist, but not if P2
+$! is an invalid filespec.
+$!
+$MoveIfDiff:  subroutine
+$    set NoOn
+$    define /user_mode sys$error nl:
+$    define /user_mode sys$output nl:
+$    differences 'p1' 'p2'
+$    status = $status
+$    if ( status .ne. %X006C8009) ! if status is not "no diff"
+$    then
+$       copy 'p1' 'p2'
+$       purge /nolog 'p2'
+$    endif
+$    on control_y then return ctrl_y ! SS$_CONTROLY
+$ ENDSUBROUTINE   ! MoveIfDiff
+$!
+$Common_Exit:
+$ set default 'orig_def'
+$ if ((curl .eqs. "") .and. (f$trnlnm( "curl", "LNM$PROCESS") .nes. ""))
+$ then
+$    deassign curl
+$ endif
+$ exit
diff --git a/packages/vms/config-vms.h b/packages/vms/config-vms.h
new file mode 100644
index 0000000..461001c
--- /dev/null
+++ b/packages/vms/config-vms.h
@@ -0,0 +1,371 @@
+#ifndef HEADER_CONFIG_VMS_H
+#define HEADER_CONFIG_VMS_H
+
+/*                                                                         */
+/* MSK, 02/05/04, Hand edited for trail build on Alpha V7.3, DEC C 6.5-003 */
+/* MSK, 03/09/04, Seems to work for all platforms I've built on so far.    */
+/*      Added HAVE_SYS_IOCTL_H define                                      */
+/* TES, 10/06/04, Added MAX_INITIAL_POST_SIZE, HAVE_BASENAME               */
+/* MSK, 02/02/05, Changed HAVE_TERMIOS_H to an undef since the change in   */
+/*                getpass.c no longer undef'd it during compile.           */
+/* MSK, 02/08/05, turned two config-vms files into one by using USE_SSLEAY */
+/* MPZ, 12/28/05, changed HAVE_STRTOK_R define to use CRTL_VER             */
+/* MSK, 01/27/07, needed to add HAVE_STRUCT_TIMEVAL define                 */
+
+/* Define cpu-machine-OS */
+#if defined(__alpha)
+#  define OS "ALPHA-HP-VMS"
+#elif defined(__vax)
+#  define OS "VAX-HP-VMS"
+#elif defined(__ia64)
+#  define OS "IA64-HP-VMS"
+#else
+#  define OS "UNKNOWN-HP-VMS"
+#endif
+
+/* 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
+
+/* 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 8
+
+/* 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
+
+/* Define if you have the alarm function.  */
+#define HAVE_ALARM 1
+
+/* Define if you have the geteuid function.  */
+#define HAVE_GETEUID 1
+
+/* Define if you have the basename function. */
+#define HAVE_BASENAME 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 getpwuid function.  */
+#define HAVE_GETPWUID 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 ioctl function. */
+#define HAVE_IOCTL 1
+
+/* Define if you have a working ioctl FIONBIO function. */
+#define HAVE_IOCTL_FIONBIO 1
+
+/* Define if you have a working ioctl SIOCGIFADDR function. */
+#define HAVE_IOCTL_SIOCGIFADDR 1
+
+/* Define if you have the perror function.  */
+#define HAVE_PERROR 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 sigaction function.  */
+#define HAVE_SIGACTION 1
+
+/* Define if you have the signal function.  */
+#define HAVE_SIGNAL 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 strcmpi function.  */
+/* #define HAVE_STRCMPI 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 strstr function.  */
+#define HAVE_STRSTR 1
+
+/* Define if you have the ftruncate function. */
+#define HAVE_FTRUNCATE 1
+
+/* Define if you have the uname function.  */
+#define HAVE_UNAME 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 <malloc.h> header file.  */
+#define HAVE_MALLOC_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 <net/if.h> header file.  */
+#define HAVE_NET_IF_H 1
+
+/* Define if you have the <netdb.h> header file.  */
+#define HAVE_NETDB_H 1
+
+/* Define if you have the <netinet/if_ether.h> header file.  */
+#define HAVE_NETINET_IF_ETHER_H 1
+
+/* Define if you have the <netinet/in.h> header file.  */
+#define HAVE_NETINET_IN_H 1
+
+/* OpenSSL section starts here */
+
+/* Define if you have a working OpenSSL installation */
+#ifdef USE_SSLEAY
+
+/* if OpenSSL is in use */
+#define USE_OPENSSL 1
+
+/* Define if you have the crypto library (-lcrypto).  */
+#define HAVE_LIBCRYPTO 1
+
+/* Define if you have the ssl library (-lssl).  */
+#define HAVE_LIBSSL 1
+
+/* Define if you have the <openssl/crypto.h> header file.  */
+#define HAVE_OPENSSL_CRYPTO_H 1
+
+/* Define if you have the <openssl/err.h> header file.  */
+#define HAVE_OPENSSL_ERR_H 1
+
+/* Define if you have the <openssl/pem.h> header file.  */
+#define HAVE_OPENSSL_PEM_H 1
+
+/* Define if you have the <openssl/rsa.h> header file.  */
+#define HAVE_OPENSSL_RSA_H 1
+
+/* Define if you have the <openssl/ssl.h> header file.  */
+#define HAVE_OPENSSL_SSL_H 1
+
+/* Define if you have the <openssl/x509.h> header file.  */
+#define HAVE_OPENSSL_X509_H 1
+
+/*
+ * This needs to be defined for OpenSSL 0.9.7 and other versions that have the
+ * ENGINE stuff supported. If an include of "openssl/engine.h" fails, then
+ * undefine the define below.
+*/
+#define HAVE_OPENSSL_ENGINE_H 1
+
+#endif /* USE_SSLEAY */
+/* OpenSSL section ends here */
+
+/* Define if you have the <pwd.h> header file.  */
+#define HAVE_PWD_H 1
+
+/* Define if you have the <sgtty.h> header file.  */
+#define HAVE_SGTTY_H 1
+
+/* Define if you have the <stdlib.h> header file.  */
+#define HAVE_STDLIB_H 1
+
+/* Define if you have the <sys/socket.h> header file.  */
+#define HAVE_SYS_SOCKET_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 <termios.h> header file.  */
+#undef HAVE_TERMIOS_H
+
+/* Define if you have the <time.h> header file.  */
+#define HAVE_TIME_H 1
+
+/* Define if you have the <unistd.h> header file.  */
+#define HAVE_UNISTD_H 1
+
+/* Define if you have the resolv library (-lresolv).  */
+#define HAVE_LIBRESOLV 1
+
+/* Define if you have the socket library (-lsocket).  */
+#define HAVE_LIBSOCKET 1
+
+/* Define if getaddrinfo exists and works */
+#define HAVE_GETADDRINFO 1
+
+/* Define if you have the <timeval.h> header file.  */
+#define HAVE_TIMEVAL_H 1
+
+/* Define if you have the timeval struct.  */
+#define HAVE_STRUCT_TIMEVAL 1
+
+/* Name of this package! */
+#define PACKAGE "not-used"
+
+/* Version number of this archive. */
+#define VERSION "not-used"
+
+/* Define if you have the getpass function.  */
+#undef HAVE_GETPASS
+
+/* Define if you have the <inttypes.h> header file. */
+#undef HAVE_INTTYPES_H
+
+/* Define if you have the <strings.h> header file. */
+#define HAVE_STRINGS_H 1
+
+/* Define if you have the <string.h> header file. */
+#define HAVE_STRING_H 1
+
+/* Define if you have the `strtok_r' function.  */
+/* Condition lifted from <string.h>             */
+#if __CRTL_VER >= 70301000
+#  define HAVE_STRTOK_R 1
+#endif
+
+/* Define if you have the `strtoll' function. */
+#define HAVE_STRTOLL 1
+
+/* Define if you have the <memory.h> header file. */
+#define HAVE_MEMORY_H 1
+
+/* Define to 1 if you need the memory.h header file even with stdlib.h */
+#define NEED_MEMORY_H 1
+
+/* Define if you have the `sigsetjmp' function. */
+#define HAVE_SIGSETJMP 1
+
+/* Define to 1 if you have the <setjmp.h> header file. */
+#define HAVE_SETJMP_H 1
+
+/* Define to 1 if you have the <limits.h> header file. */
+#define HAVE_LIMITS_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 <stropts.h> header file. */
+#define HAVE_STROPTS_H 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 size_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 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 int
+
+/* Define to the type pointed by arg 2 for recvfrom. */
+#define RECVFROM_TYPE_ARG2 void
+
+/* Define 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 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 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 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 hide dollar sign from compilers in strict ansi mode. */
+#define decc_translate_vms(__s) decc$translate_vms(__s)
+
+#endif /* HEADER_CONFIG_VMS_H */
diff --git a/packages/vms/curlmsg.h b/packages/vms/curlmsg.h
new file mode 100644
index 0000000..32f335f
--- /dev/null
+++ b/packages/vms/curlmsg.h
@@ -0,0 +1,119 @@
+#ifndef HEADER_CURLMSG_H
+#define HEADER_CURLMSG_H
+
+#pragma __member_alignment __save
+#pragma __nomember_alignment
+
+/*                                                                          */
+/* CURLMSG.H                                                                */
+/*                                                                          */
+/* SDL File Generated by VAX-11 Message V04-00 on 3-SEP-2008 13:33:54.09    */
+/*                                                                          */
+/* THESE VMS ERROR CODES ARE GENERATED BY TAKING APART THE CURL.H           */
+/* FILE AND PUTTING ALL THE CURLE_* ENUM STUFF INTO THIS FILE,              */
+/* CURLMSG.MSG.  AN .SDL FILE IS CREATED FROM THIS FILE WITH                */
+/* MESSAGE/SDL.  THE .H FILE IS CREATED USING THE FREEWARE SDL TOOL         */
+/* AGAINST THE .SDL FILE WITH SDL/ALPHA/LANG=CC COMMAND.                    */
+/*                                                                          */
+/* WITH THE EXCEPTION OF CURLE_OK, ALL OF THE MESSAGES ARE AT               */
+/* THE ERROR SEVERITY LEVEL.  WITH THE EXCEPTION OF                         */
+/* PEER_FAILED_VERIF, WHICH IS A SHORTENED FORM OF                          */
+/* PEER_FAILED_VERIFICATION, THESE ARE THE SAME NAMES AS THE                */
+/* CURLE_ ONES IN INCLUDE/CURL.H.  THE MESSAGE UTILITY MANUAL STATES        */
+/* "THE COMBINED LENGTH OF THE PREFIX AND THE MESSAGE SYMBOL NAME CANNOT    */
+/* EXCEED 31 CHARACTERS."  WITH A PREFIX OF FIVE THAT LEAVES US WITH 26     */
+/* FOR THE MESSAGE NAME.                                                    */
+/*                                                                          */
+/* IF YOU UPDATE THIS FILE, UPDATE CURLMSG_VMS.H SO THAT THEY ARE IN SYNC   */
+/*                                                                          */
+
+#define CURL_FACILITY 3841
+#define CURL_OK 251756553
+#define CURL_UNSUPPORTED_PROTOCOL 251756562
+#define CURL_FAILED_INIT 251756570
+#define CURL_URL_MALFORMAT 251756578
+#define CURL_OBSOLETE4 251756586
+#define CURL_COULDNT_RESOLVE_PROXY 251756594
+#define CURL_COULDNT_RESOLVE_HOST 251756602
+#define CURL_COULDNT_CONNECT 251756610
+#define CURL_FTP_WEIRD_SERVER_REPLY 251756618
+#define CURL_FTP_ACCESS_DENIED 251756626
+#define CURL_OBSOLETE10 251756634
+#define CURL_FTP_WEIRD_PASS_REPLY 251756642
+#define CURL_OBSOLETE12 251756650
+#define CURL_FTP_WEIRD_PASV_REPLY 251756658
+#define CURL_FTP_WEIRD_227_FORMAT 251756666
+#define CURL_FTP_CANT_GET_HOST 251756674
+#define CURL_OBSOLETE16 251756682
+#define CURL_FTP_COULDNT_SET_TYPE 251756690
+#define CURL_PARTIAL_FILE 251756698
+#define CURL_FTP_COULDNT_RETR_FILE 251756706
+#define CURL_OBSOLETE20 251756714
+#define CURL_QUOTE_ERROR 251756722
+#define CURL_HTTP_RETURNED_ERROR 251756730
+#define CURL_WRITE_ERROR 251756738
+#define CURL_OBSOLETE24 251756746
+#define CURL_UPLOAD_FAILED 251756754
+#define CURL_READ_ERROR 251756762
+#define CURL_OUT_OF_MEMORY 251756770
+#define CURL_OPERATION_TIMEOUTED 251756778
+#define CURL_OBSOLETE29 251756786
+#define CURL_FTP_PORT_FAILED 251756794
+#define CURL_FTP_COULDNT_USE_REST 251756802
+#define CURL_OBSOLETE32 251756810
+#define CURL_RANGE_ERROR 251756818
+#define CURL_HTTP_POST_ERROR 251756826
+#define CURL_SSL_CONNECT_ERROR 251756834
+#define CURL_BAD_DOWNLOAD_RESUME 251756842
+#define CURL_FILE_COULDNT_READ_FILE 251756850
+#define CURL_LDAP_CANNOT_BIND 251756858
+#define CURL_LDAP_SEARCH_FAILED 251756866
+#define CURL_OBSOLETE40 251756874
+#define CURL_FUNCTION_NOT_FOUND 251756882
+#define CURL_ABORTED_BY_CALLBACK 251756890
+#define CURL_BAD_FUNCTION_ARGUMENT 251756898
+#define CURL_OBSOLETE44 251756906
+#define CURL_INTERFACE_FAILED 251756914
+#define CURL_OBSOLETE46 251756922
+#define CURL_TOO_MANY_REDIRECTS 251756930
+#define CURL_UNKNOWN_TELNET_OPTION 251756938
+#define CURL_TELNET_OPTION_SYNTAX 251756946
+#define CURL_OBSOLETE50 251756954
+#define CURL_PEER_FAILED_VERIF 251756962
+#define CURL_GOT_NOTHING 251756970
+#define CURL_SSL_ENGINE_NOTFOUND 251756978
+#define CURL_SSL_ENGINE_SETFAILED 251756986
+#define CURL_SEND_ERROR 251756994
+#define CURL_RECV_ERROR 251757002
+#define CURL_OBSOLETE57 251757010
+#define CURL_SSL_CERTPROBLEM 251757018
+#define CURL_SSL_CIPHER 251757026
+#define CURL_SSL_CACERT 251757034
+#define CURL_BAD_CONTENT_ENCODING 251757042
+#define CURL_LDAP_INVALID_URL 251757050
+#define CURL_FILESIZE_EXCEEDED 251757058
+#define CURL_USE_SSL_FAILED 251757066
+#define CURL_SEND_FAIL_REWIND 251757074
+#define CURL_SSL_ENGINE_INITFAILED 251757082
+#define CURL_LOGIN_DENIED 251757090
+#define CURL_TFTP_NOTFOUND 251757098
+#define CURL_TFTP_PERM 251757106
+#define CURL_REMOTE_DISK_FULL 251757114
+#define CURL_TFTP_ILLEGAL 251757122
+#define CURL_TFTP_UNKNOWNID 251757130
+#define CURL_REMOTE_FILE_EXISTS 251757138
+#define CURL_TFTP_NOSUCHUSER 251757146
+#define CURL_CONV_FAILED 251757154
+#define CURL_CONV_REQD 251757162
+#define CURL_SSL_CACERT_BADFILE 251757170
+#define CURL_REMOTE_FILE_NOT_FOUND 251757178
+#define CURL_SSH 251757186
+#define CURL_SSL_SHUTDOWN_FAILED 251757194
+#define CURL_AGAIN 251757202
+#define CURL_SSL_CRL_BADFILE 251757210
+#define CURL_SSL_ISSUER_ERROR 251757218
+#define CURL_CURL_LAST 251757226
+
+#pragma __member_alignment __restore
+
+#endif /* HEADER_CURLMSG_H */
diff --git a/packages/vms/curlmsg.msg b/packages/vms/curlmsg.msg
new file mode 100644
index 0000000..7fd4483
--- /dev/null
+++ b/packages/vms/curlmsg.msg
@@ -0,0 +1,111 @@
+!
+! These VMS error codes are generated by taking apart the curl.h
+! file and putting all the CURLE_* enum stuff into this file,
+! CURLMSG.MSG.  An .SDL file is created from this file with
+! MESSAGE/SDL.  The .H file is created using the freeware SDL tool
+! against the .SDL file with SDL/ALPHA/LANG=CC command.
+!
+! With the exception of CURLE_OK, all of the messages are at
+! the error severity level.  With the exception of
+! PEER_FAILED_VERIF, which is a shortened form of
+! PEER_FAILED_VERIFICATION, these are the same names as the
+! CURLE_ ones in include/curl.h.  The Message Utility manual states
+! "The combined length of the prefix and the message symbol name cannot
+! exceed 31 characters."  With a prefix of five that leaves us with 26
+! for the message name.
+!
+! If you update this file also update curlmsg_vms.h so that they are in sync
+!
+.TITLE		CURLMSG Message files
+.FACILITY	CURL,1793	/PREFIX=CURL_
+.BASE		1
+.SEVERITY	SUCCESS
+OK		<normal successful completion>
+
+.SEVERITY	ERROR
+UNSUPPORTED_PROTOCOL	<unsupported protocol>
+FAILED_INIT		<failed init>
+URL_MALFORMAT		<URL malformat>
+OBSOLETE4		<obsolete error code>
+COULDNT_RESOLVE_PROXY	<could not resolve proxy>
+COULDNT_RESOLVE_HOST	<could not resolve host>
+COULDNT_CONNECT		<could not connect>
+FTP_WEIRD_SERVER_REPLY	<FTP weird server reply>
+FTP_ACCESS_DENIED	<FTP access denied>
+OBSOLETE10		<obsolete error code>
+FTP_WEIRD_PASS_REPLY	<FTP weird PASS reply>
+OBSOLETE12		<obsolete error code>
+FTP_WEIRD_PASV_REPLY	<FTP weird PASV reply>
+FTP_WEIRD_227_FORMAT	<FTP weird 227 format>
+FTP_CANT_GET_HOST	<FTP can not get host>
+OBSOLETE16		<obsolete error code>
+FTP_COULDNT_SET_TYPE	<FTP could not set type>
+PARTIAL_FILE		<partial file>
+FTP_COULDNT_RETR_FILE	<FTP could not RETR file>
+OBSOLETE20		<obsolete error code>
+QUOTE_ERROR		<quote command error>
+HTTP_RETURNED_ERROR	<HTTP returned error>
+WRITE_ERROR		<write error>
+OBSOLETE24    		<obsolete error code>
+UPLOAD_FAILED		<failed upload command>
+READ_ERROR		<read error, could not open/read file>
+OUT_OF_MEMORY		<out of memory>
+OPERATION_TIMEOUTED	<operation timed out, timeout time was reached>
+OBSOLETE29		<obsolete error code>
+FTP_PORT_FAILED		<FTP PORT operation failed>
+FTP_COULDNT_USE_REST	<FTP REST command failed>
+OBSOLETE32		<obsolete error code>
+RANGE_ERROR		<RANGE command error>
+HTTP_POST_ERROR		<HTTP POST error>
+SSL_CONNECT_ERROR	<SSL connect error>
+BAD_DOWNLOAD_RESUME	<bad download resume>
+FILE_COULDNT_READ_FILE	<FILE could not read file>
+LDAP_CANNOT_BIND	<LDAP cannot bind>
+LDAP_SEARCH_FAILED	<LDAP search failed>
+OBSOLETE40		<obsolete error code>
+FUNCTION_NOT_FOUND	<function not found>
+ABORTED_BY_CALLBACK	<aborted by callback>
+BAD_FUNCTION_ARGUMENT	<bad function argument>
+OBSOLETE44		<obsolete error code>
+INTERFACE_FAILED	<CURLOPT_INTERFACE failed>
+OBSOLETE46		<obsolete error code>
+TOO_MANY_REDIRECTS	<too many redirects>
+UNKNOWN_TELNET_OPTION	<unknown TELNET option>
+TELNET_OPTION_SYNTAX	<malformed TELNET option syntax>
+OBSOLETE50		<obsolete error code>
+PEER_FAILED_VERIF	<peer certificate or fingerprint failed>
+GOT_NOTHING		<got nothing>
+SSL_ENGINE_NOTFOUND	<SSL crypto engine not found>
+SSL_ENGINE_SETFAILED	<SSL can not set SSL crypto engine as default>
+SEND_ERROR		<SEND error, failure sending network data>
+RECV_ERROR		<RECV error, failure receiving network data>
+OBSOLETE57  		<obsolete error code>
+SSL_CERTPROBLEM		<SSL problem with the local certificate>
+SSL_CIPHER              <SSL CIPHER, could not use specified cipher>
+SSL_CACERT		<SSL CACERT, problem with the CA cert (path?)>
+BAD_CONTENT_ENCODING	<unrecognized transfer encoding>
+LDAP_INVALID_URL	<LDAP invalid url>
+FILESIZE_EXCEEDED	<maximum file size exceeded>
+USE_SSL_FAILED		<requested FTP SSL level failed>
+SEND_FAIL_REWIND	<sending data requires a rewind that failed>
+SSL_ENGINE_INITFAILED	<failed to initialise ENGINE>
+LOGIN_DENIED		<user or password not accepted. failed to login>
+TFTP_NOTFOUND		<file not found on server>
+TFTP_PERM		<permission problem on server>
+REMOTE_DISK_FULL	<out of disk space on server>
+TFTP_ILLEGAL		<illegal TFTP operation>
+TFTP_UNKNOWNID		<unknown transfer ID>
+REMOTE_FILE_EXISTS	<file already exists>
+TFTP_NOSUCHUSER		<no such user>
+CONV_FAILED		<conversion failed>
+CONV_REQD		<caller must register conversion callbacks>
+SSL_CACERT_BADFILE	<could not load CACERT file>
+REMOTE_FILE_NOT_FOUND	<remote file not found>
+SSH			<unspecified error from the SSH layer>
+SSL_SHUTDOWN_FAILED	<failed to shut down the SSL connection>
+AGAIN			<socket not ready, wait and try again>
+SSL_CRL_BADFILE		<could not load CRL file, missing or wrong format>
+SSL_ISSUER_ERROR	<issuer check failed>
+CURL_LAST		<CURLMSG.MSG is out of sync with the source code>
+
+.END
diff --git a/packages/vms/curlmsg.sdl b/packages/vms/curlmsg.sdl
new file mode 100644
index 0000000..e192c07
--- /dev/null
+++ b/packages/vms/curlmsg.sdl
@@ -0,0 +1,115 @@
+
+
+ MODULE $CURDEF;
+
+/*
+/* This SDL File Generated by VAX-11 Message V04-00 on  3-SEP-2008 13:33:54.09
+/*
+/* $ID: CURLMSG.MSG,V 1.7 2008-05-30 23:51:09 CURLVMS EXP $
+/*
+/* THESE VMS ERROR CODES ARE GENERATED BY TAKING APART THE CURL.H
+/* FILE AND PUTTING ALL THE CURLE_* ENUM STUFF INTO THIS FILE,
+/* CURLMSG.MSG.  AN .SDL FILE IS CREATED FROM THIS FILE WITH
+/* MESSAGE/SDL.  THE .H FILE IS CREATED USING THE FREEWARE SDL TOOL
+/* AGAINST THE .SDL FILE WITH SDL/ALPHA/LANG=CC COMMAND.
+/*
+/* WITH THE EXCEPTION OF CURLE_OK, ALL OF THE MESSAGES ARE AT
+/* THE ERROR SEVERITY LEVEL.  WITH THE EXCEPTION OF
+/* PEER_FAILED_VERIF, WHICH IS A SHORTENED FORM OF
+/* PEER_FAILED_VERIFICATION, THESE ARE THE SAME NAMES AS THE
+/* CURLE_ ONES IN INCLUDE/CURL.H.  THE MESSAGE UTILITY MANUAL STATES
+/* "THE COMBINED LENGTH OF THE PREFIX AND THE MESSAGE SYMBOL NAME CANNOT
+/* EXCEED 31 CHARACTERS."  WITH A PREFIX OF FIVE THAT LEAVES US WITH 26
+/* FOR THE MESSAGE NAME.
+/*
+/* IF YOU UPDATE THIS FILE ALSO UPDATE CURLMSG_VMS.H SO THAT THEY ARE IN SYNC
+/*
+    CONSTANT
+        "FACILITY"     EQUALS 3841       PREFIX "CURL" TAG ""
+       ,"OK"           EQUALS %X0F018009     PREFIX "CURL" TAG ""
+       ,"UNSUPPORTED_PROTOCOL" EQUALS %X0F018012 PREFIX "CURL" TAG ""
+       ,"FAILED_INIT"  EQUALS %X0F01801A     PREFIX "CURL" TAG ""
+       ,"URL_MALFORMAT" EQUALS %X0F018022    PREFIX "CURL" TAG ""
+       ,"OBSOLETE4"    EQUALS %X0F01802A     PREFIX "CURL" TAG ""
+       ,"COULDNT_RESOLVE_PROXY" EQUALS %X0F018032 PREFIX "CURL" TAG ""
+       ,"COULDNT_RESOLVE_HOST" EQUALS %X0F01803A PREFIX "CURL" TAG ""
+       ,"COULDNT_CONNECT" EQUALS %X0F018042  PREFIX "CURL" TAG ""
+       ,"FTP_WEIRD_SERVER_REPLY" EQUALS %X0F01804A PREFIX "CURL" TAG ""
+       ,"FTP_ACCESS_DENIED" EQUALS %X0F018052 PREFIX "CURL" TAG ""
+       ,"OBSOLETE10"   EQUALS %X0F01805A     PREFIX "CURL" TAG ""
+       ,"FTP_WEIRD_PASS_REPLY" EQUALS %X0F018062 PREFIX "CURL" TAG ""
+       ,"OBSOLETE12"   EQUALS %X0F01806A     PREFIX "CURL" TAG ""
+       ,"FTP_WEIRD_PASV_REPLY" EQUALS %X0F018072 PREFIX "CURL" TAG ""
+       ,"FTP_WEIRD_227_FORMAT" EQUALS %X0F01807A PREFIX "CURL" TAG ""
+       ,"FTP_CANT_GET_HOST" EQUALS %X0F018082 PREFIX "CURL" TAG ""
+       ,"OBSOLETE16"   EQUALS %X0F01808A     PREFIX "CURL" TAG ""
+       ,"FTP_COULDNT_SET_TYPE" EQUALS %X0F018092 PREFIX "CURL" TAG ""
+       ,"PARTIAL_FILE" EQUALS %X0F01809A     PREFIX "CURL" TAG ""
+       ,"FTP_COULDNT_RETR_FILE" EQUALS %X0F0180A2 PREFIX "CURL" TAG ""
+       ,"OBSOLETE20"   EQUALS %X0F0180AA     PREFIX "CURL" TAG ""
+       ,"QUOTE_ERROR"  EQUALS %X0F0180B2     PREFIX "CURL" TAG ""
+       ,"HTTP_RETURNED_ERROR" EQUALS %X0F0180BA PREFIX "CURL" TAG ""
+       ,"WRITE_ERROR"  EQUALS %X0F0180C2     PREFIX "CURL" TAG ""
+       ,"OBSOLETE24"   EQUALS %X0F0180CA     PREFIX "CURL" TAG ""
+       ,"UPLOAD_FAILED" EQUALS %X0F0180D2    PREFIX "CURL" TAG ""
+       ,"READ_ERROR"   EQUALS %X0F0180DA     PREFIX "CURL" TAG ""
+       ,"OUT_OF_MEMORY" EQUALS %X0F0180E2    PREFIX "CURL" TAG ""
+       ,"OPERATION_TIMEOUTED" EQUALS %X0F0180EA PREFIX "CURL" TAG ""
+       ,"OBSOLETE29"   EQUALS %X0F0180F2     PREFIX "CURL" TAG ""
+       ,"FTP_PORT_FAILED" EQUALS %X0F0180FA  PREFIX "CURL" TAG ""
+       ,"FTP_COULDNT_USE_REST" EQUALS %X0F018102 PREFIX "CURL" TAG ""
+       ,"OBSOLETE32"   EQUALS %X0F01810A     PREFIX "CURL" TAG ""
+       ,"RANGE_ERROR"  EQUALS %X0F018112     PREFIX "CURL" TAG ""
+       ,"HTTP_POST_ERROR" EQUALS %X0F01811A  PREFIX "CURL" TAG ""
+       ,"SSL_CONNECT_ERROR" EQUALS %X0F018122 PREFIX "CURL" TAG ""
+       ,"BAD_DOWNLOAD_RESUME" EQUALS %X0F01812A PREFIX "CURL" TAG ""
+       ,"FILE_COULDNT_READ_FILE" EQUALS %X0F018132 PREFIX "CURL" TAG ""
+       ,"LDAP_CANNOT_BIND" EQUALS %X0F01813A PREFIX "CURL" TAG ""
+       ,"LDAP_SEARCH_FAILED" EQUALS %X0F018142 PREFIX "CURL" TAG ""
+       ,"OBSOLETE40"   EQUALS %X0F01814A     PREFIX "CURL" TAG ""
+       ,"FUNCTION_NOT_FOUND" EQUALS %X0F018152 PREFIX "CURL" TAG ""
+       ,"ABORTED_BY_CALLBACK" EQUALS %X0F01815A PREFIX "CURL" TAG ""
+       ,"BAD_FUNCTION_ARGUMENT" EQUALS %X0F018162 PREFIX "CURL" TAG ""
+       ,"OBSOLETE44"   EQUALS %X0F01816A     PREFIX "CURL" TAG ""
+       ,"INTERFACE_FAILED" EQUALS %X0F018172 PREFIX "CURL" TAG ""
+       ,"OBSOLETE46"   EQUALS %X0F01817A     PREFIX "CURL" TAG ""
+       ,"TOO_MANY_REDIRECTS" EQUALS %X0F018182 PREFIX "CURL" TAG ""
+       ,"UNKNOWN_TELNET_OPTION" EQUALS %X0F01818A PREFIX "CURL" TAG ""
+       ,"TELNET_OPTION_SYNTAX" EQUALS %X0F018192 PREFIX "CURL" TAG ""
+       ,"OBSOLETE50"   EQUALS %X0F01819A     PREFIX "CURL" TAG ""
+       ,"PEER_FAILED_VERIF" EQUALS %X0F0181A2 PREFIX "CURL" TAG ""
+       ,"GOT_NOTHING"  EQUALS %X0F0181AA     PREFIX "CURL" TAG ""
+       ,"SSL_ENGINE_NOTFOUND" EQUALS %X0F0181B2 PREFIX "CURL" TAG ""
+       ,"SSL_ENGINE_SETFAILED" EQUALS %X0F0181BA PREFIX "CURL" TAG ""
+       ,"SEND_ERROR"   EQUALS %X0F0181C2     PREFIX "CURL" TAG ""
+       ,"RECV_ERROR"   EQUALS %X0F0181CA     PREFIX "CURL" TAG ""
+       ,"OBSOLETE57"   EQUALS %X0F0181D2     PREFIX "CURL" TAG ""
+       ,"SSL_CERTPROBLEM" EQUALS %X0F0181DA  PREFIX "CURL" TAG ""
+       ,"SSL_CIPHER"   EQUALS %X0F0181E2     PREFIX "CURL" TAG ""
+       ,"SSL_CACERT"   EQUALS %X0F0181EA     PREFIX "CURL" TAG ""
+       ,"BAD_CONTENT_ENCODING" EQUALS %X0F0181F2 PREFIX "CURL" TAG ""
+       ,"LDAP_INVALID_URL" EQUALS %X0F0181FA PREFIX "CURL" TAG ""
+       ,"FILESIZE_EXCEEDED" EQUALS %X0F018202 PREFIX "CURL" TAG ""
+       ,"USE_SSL_FAILED" EQUALS %X0F01820A   PREFIX "CURL" TAG ""
+       ,"SEND_FAIL_REWIND" EQUALS %X0F018212 PREFIX "CURL" TAG ""
+       ,"SSL_ENGINE_INITFAILED" EQUALS %X0F01821A PREFIX "CURL" TAG ""
+       ,"LOGIN_DENIED" EQUALS %X0F018222     PREFIX "CURL" TAG ""
+       ,"TFTP_NOTFOUND" EQUALS %X0F01822A    PREFIX "CURL" TAG ""
+       ,"TFTP_PERM"    EQUALS %X0F018232     PREFIX "CURL" TAG ""
+       ,"REMOTE_DISK_FULL" EQUALS %X0F01823A PREFIX "CURL" TAG ""
+       ,"TFTP_ILLEGAL" EQUALS %X0F018242     PREFIX "CURL" TAG ""
+       ,"TFTP_UNKNOWNID" EQUALS %X0F01824A   PREFIX "CURL" TAG ""
+       ,"REMOTE_FILE_EXISTS" EQUALS %X0F018252 PREFIX "CURL" TAG ""
+       ,"TFTP_NOSUCHUSER" EQUALS %X0F01825A  PREFIX "CURL" TAG ""
+       ,"CONV_FAILED"  EQUALS %X0F018262     PREFIX "CURL" TAG ""
+       ,"CONV_REQD"    EQUALS %X0F01826A     PREFIX "CURL" TAG ""
+       ,"SSL_CACERT_BADFILE" EQUALS %X0F018272 PREFIX "CURL" TAG ""
+       ,"REMOTE_FILE_NOT_FOUND" EQUALS %X0F01827A PREFIX "CURL" TAG ""
+       ,"SSH"          EQUALS %X0F018282     PREFIX "CURL" TAG ""
+       ,"SSL_SHUTDOWN_FAILED" EQUALS %X0F01828A PREFIX "CURL" TAG ""
+       ,"AGAIN"        EQUALS %X0F018292     PREFIX "CURL" TAG ""
+       ,"SSL_CRL_BADFILE" EQUALS %X0F01829A  PREFIX "CURL" TAG ""
+       ,"SSL_ISSUER_ERROR" EQUALS %X0F0182A2 PREFIX "CURL" TAG ""
+       ,"CURL_LAST"    EQUALS %X0F0182AA     PREFIX "CURL" TAG ""
+       ;
+ END_MODULE;
diff --git a/packages/vms/curlmsg_vms.h b/packages/vms/curlmsg_vms.h
new file mode 100644
index 0000000..e99e88c
--- /dev/null
+++ b/packages/vms/curlmsg_vms.h
@@ -0,0 +1,120 @@
+#ifndef HEADER_CURLMSG_VMS_H
+#define HEADER_CURLMSG_VMS_H
+
+/*                                                                          */
+/* CURLMSG_VMS.H                                                            */
+/*                                                                          */
+/* This defines the necessary bits to change CURLE_* error codes to VMS     */
+/* style error codes.  CURLMSG.H is built from CURLMSG.SDL which is built   */
+/* from CURLMSG.MSG.  The vms_cond array is used to return VMS errors by    */
+/* putting the VMS error codes into the array offset based on CURLE_* code. */
+/*                                                                          */
+/* If you update CURLMSG.MSG make sure to update this file to match.        */
+/*                                                                          */
+
+#include "curlmsg.h"
+
+/*
+#define   FAC_CURL      0xC01
+#define   FAC_SYSTEM    0
+#define   MSG_NORMAL    0
+*/
+
+/*
+#define   SEV_WARNING   0
+#define   SEV_SUCCESS   1
+#define   SEV_ERROR     2
+#define   SEV_INFO      3
+#define   SEV_FATAL     4
+*/
+
+static const long vms_cond[] =
+        {
+        CURL_OK,
+	CURL_UNSUPPORTED_PROTOCOL,
+	CURL_FAILED_INIT,
+	CURL_URL_MALFORMAT,
+	CURL_OBSOLETE4,
+	CURL_COULDNT_RESOLVE_PROXY,
+	CURL_COULDNT_RESOLVE_HOST,
+	CURL_COULDNT_CONNECT,
+	CURL_FTP_WEIRD_SERVER_REPLY,
+	CURL_FTP_ACCESS_DENIED,
+	CURL_OBSOLETE10,
+	CURL_FTP_WEIRD_PASS_REPLY,
+	CURL_OBSOLETE12,
+	CURL_FTP_WEIRD_PASV_REPLY,
+	CURL_FTP_WEIRD_227_FORMAT,
+	CURL_FTP_CANT_GET_HOST,
+	CURL_OBSOLETE16,
+	CURL_FTP_COULDNT_SET_TYPE,
+	CURL_PARTIAL_FILE,
+	CURL_FTP_COULDNT_RETR_FILE,
+	CURL_OBSOLETE20,
+	CURL_QUOTE_ERROR,
+	CURL_HTTP_RETURNED_ERROR,
+	CURL_WRITE_ERROR,
+	CURL_OBSOLETE24,
+	CURL_UPLOAD_FAILED,
+	CURL_READ_ERROR,
+	CURL_OUT_OF_MEMORY,
+	CURL_OPERATION_TIMEOUTED,
+	CURL_OBSOLETE29,
+	CURL_FTP_PORT_FAILED,
+	CURL_FTP_COULDNT_USE_REST,
+	CURL_OBSOLETE32,
+	CURL_RANGE_ERROR,
+	CURL_HTTP_POST_ERROR,
+	CURL_SSL_CONNECT_ERROR,
+	CURL_BAD_DOWNLOAD_RESUME,
+	CURL_FILE_COULDNT_READ_FILE,
+	CURL_LDAP_CANNOT_BIND,
+	CURL_LDAP_SEARCH_FAILED,
+	CURL_OBSOLETE40,
+	CURL_FUNCTION_NOT_FOUND,
+	CURL_ABORTED_BY_CALLBACK,
+	CURL_BAD_FUNCTION_ARGUMENT,
+	CURL_OBSOLETE44,
+	CURL_INTERFACE_FAILED,
+	CURL_OBSOLETE46,
+	CURL_TOO_MANY_REDIRECTS,
+	CURL_UNKNOWN_TELNET_OPTION,
+	CURL_TELNET_OPTION_SYNTAX,
+	CURL_OBSOLETE50,
+	CURL_PEER_FAILED_VERIF,
+	CURL_GOT_NOTHING,
+	CURL_SSL_ENGINE_NOTFOUND,
+	CURL_SSL_ENGINE_SETFAILED,
+	CURL_SEND_ERROR,
+	CURL_RECV_ERROR,
+	CURL_OBSOLETE57,
+	CURL_SSL_CERTPROBLEM,
+	CURL_SSL_CIPHER,
+	CURL_SSL_CACERT,
+	CURL_BAD_CONTENT_ENCODING,
+	CURL_LDAP_INVALID_URL,
+	CURL_FILESIZE_EXCEEDED,
+	CURL_USE_SSL_FAILED,
+	CURL_SEND_FAIL_REWIND,
+	CURL_SSL_ENGINE_INITFAILED,
+	CURL_LOGIN_DENIED,
+	CURL_TFTP_NOTFOUND,
+	CURL_TFTP_PERM,
+	CURL_REMOTE_DISK_FULL,
+	CURL_TFTP_ILLEGAL,
+	CURL_TFTP_UNKNOWNID,
+	CURL_REMOTE_FILE_EXISTS,
+	CURL_TFTP_NOSUCHUSER,
+	CURL_CONV_FAILED,
+	CURL_CONV_REQD,
+	CURL_SSL_CACERT_BADFILE,
+	CURL_REMOTE_FILE_NOT_FOUND,
+	CURL_SSH,
+	CURL_SSL_SHUTDOWN_FAILED,
+	CURL_AGAIN,
+	CURLE_SSL_CRL_BADFILE,
+	CURLE_SSL_ISSUER_ERROR,
+        CURL_CURL_LAST
+        };
+
+#endif /* HEADER_CURLMSG_VMS_H */
diff --git a/packages/vms/hpssl_alpha.opt b/packages/vms/hpssl_alpha.opt
new file mode 100644
index 0000000..3ad9fbd
--- /dev/null
+++ b/packages/vms/hpssl_alpha.opt
@@ -0,0 +1,2 @@
+SYS$LIBRARY:SSL$LIBCRYPTO_SHR32.EXE/SHARE
+SYS$LIBRARY:SSL$LIBSSL_SHR32.EXE/SHARE
diff --git a/packages/vms/hpssl_ia64.opt b/packages/vms/hpssl_ia64.opt
new file mode 100644
index 0000000..9b22014
--- /dev/null
+++ b/packages/vms/hpssl_ia64.opt
@@ -0,0 +1,2 @@
+SYS$LIBRARY:SSL$LIBCRYPTO_SHR.EXE/SHARE
+SYS$LIBRARY:SSL$LIBSSL_SHR.EXE/SHARE
diff --git a/packages/vms/hpssl_vax.opt b/packages/vms/hpssl_vax.opt
new file mode 100644
index 0000000..3ad9fbd
--- /dev/null
+++ b/packages/vms/hpssl_vax.opt
@@ -0,0 +1,2 @@
+SYS$LIBRARY:SSL$LIBCRYPTO_SHR32.EXE/SHARE
+SYS$LIBRARY:SSL$LIBSSL_SHR32.EXE/SHARE
diff --git a/packages/vms/ldap.opt b/packages/vms/ldap.opt
new file mode 100644
index 0000000..23f1ee4
--- /dev/null
+++ b/packages/vms/ldap.opt
@@ -0,0 +1 @@
+SYS$SHARE:LDAP$SHR.EXE /SHARE
diff --git a/packages/vms/openssl_alpha.opt b/packages/vms/openssl_alpha.opt
new file mode 100644
index 0000000..b445119
--- /dev/null
+++ b/packages/vms/openssl_alpha.opt
@@ -0,0 +1,2 @@
+SSLLIB:LIBCRYPTO.EXE /SHARE
+SSLLIB:LIBSSL.EXE /SHARE
diff --git a/packages/vms/openssl_ia64.opt b/packages/vms/openssl_ia64.opt
new file mode 100644
index 0000000..b445119
--- /dev/null
+++ b/packages/vms/openssl_ia64.opt
@@ -0,0 +1,2 @@
+SSLLIB:LIBCRYPTO.EXE /SHARE
+SSLLIB:LIBSSL.EXE /SHARE
diff --git a/packages/vms/openssl_ssl_alpha.opt b/packages/vms/openssl_ssl_alpha.opt
new file mode 100644
index 0000000..c726c2f
--- /dev/null
+++ b/packages/vms/openssl_ssl_alpha.opt
@@ -0,0 +1,2 @@
+SSLLIB:SSL_LIBCRYPTO.EXE /SHARE
+SSLLIB:SSL_LIBSSL.EXE /SHARE
diff --git a/packages/vms/openssl_ssl_ia64.opt b/packages/vms/openssl_ssl_ia64.opt
new file mode 100644
index 0000000..c726c2f
--- /dev/null
+++ b/packages/vms/openssl_ssl_ia64.opt
@@ -0,0 +1,2 @@
+SSLLIB:SSL_LIBCRYPTO.EXE /SHARE
+SSLLIB:SSL_LIBSSL.EXE /SHARE
diff --git a/packages/vms/openssl_ssl_vax.opt b/packages/vms/openssl_ssl_vax.opt
new file mode 100644
index 0000000..c726c2f
--- /dev/null
+++ b/packages/vms/openssl_ssl_vax.opt
@@ -0,0 +1,2 @@
+SSLLIB:SSL_LIBCRYPTO.EXE /SHARE
+SSLLIB:SSL_LIBSSL.EXE /SHARE
diff --git a/packages/vms/openssl_vax.opt b/packages/vms/openssl_vax.opt
new file mode 100644
index 0000000..b445119
--- /dev/null
+++ b/packages/vms/openssl_vax.opt
@@ -0,0 +1,2 @@
+SSLLIB:LIBCRYPTO.EXE /SHARE
+SSLLIB:LIBSSL.EXE /SHARE
diff --git a/packages/vms/readme b/packages/vms/readme
new file mode 100644
index 0000000..22fde88
--- /dev/null
+++ b/packages/vms/readme
@@ -0,0 +1,70 @@
+                             _   _ ____  _
+                         ___| | | |  _ \| |
+                        / __| | | | |_) | |
+                       ( (__| |_| |  _ <| |___
+                        \___|\___/|_| \_\_____|
+                             for OpenVMS
+
+History:
+
+ 9-MAR-2004, Created this readme. file.  Marty Kuhrt (MSK).
+15-MAR-2004, MSK, Updated to reflect the new files in this directory.
+14-FEB-2005, MSK, removed config-vms.h_with* file comments
+10-FEB-2010, SMS. General update.
+
+Prerequisites:
+
+OpenVMS V7.0 or later (any platform)
+DECC V6.5 or later
+OpenSSL or hp SSL, if you want SSL support
+
+What is Here:
+
+This directory contains the following files:
+
+build_vms.com           Build procedure.
+config-vms.h            VMS-specific config.h.
+curlmsg.h               C header defining cURL status code macros.
+curlmsg.msg             Error message source for curlmsg.h and curlmsg.sdl.
+curlmsg.sdl             SDL source defining cURL status code constants.
+curlmsg_vms.h           Mapping of cURL status codes to VMS-form codes.
+hpssl_alpha.opt         LINK options file for HP SSL on Alpha.
+hpssl_ia64.opt          LINK options file for HP SSL on IA64.
+hpssl_vax.opt           LINK options file for HP SSL on VAX.
+ldap.opt                LINK options file for LDAP.
+Makefile.am             cURL kit file list for this directory.
+Makefile.in             cURL kit makefile source for this directory.
+openssl_alpha.opt       LINK options file for OpenSSL on Alpha.
+openssl_ia64.opt        LINK options file for OpenSSL on IA64.
+openssl_ssl_alpha.opt   LINK options file for OpenSSL (SSL_ prefix) on Alpha.
+openssl_ssl_ia64.opt    LINK options file for OpenSSL (SSL_ prefix) on IA64.
+openssl_ssl_vax.opt     LINK options file for OpenSSL (SSL_ prefix) on VAX.
+openssl_vax.opt         LINK options file for OpenSSL on VAX.
+readme.                 This file.
+
+
+How to Build:
+
+The (brute-force) builder is [.packages.vms]build_vms.com.  Comments in
+this procedure describe various optional parameters which enable or
+disable optional program features, or which control the build in other
+ways.  Product files (.EXE, .H, .LIS, .MAP, .OBJ, .OLB, ...) should be
+produced in an architecture-specific subdirectory under this directory
+([.ALPHA], [.IA64], [.VAX]).
+
+   Example build commands:
+
+      @ [.packages.vms]build_vms.com CLEAN
+      @ [.packages.vms]build_vms.com LARGE LDAP
+      submit /noprint [.packages.vms]build_vms.com /param = (LARGE, LDAP)
+
+
+Other Notes:
+
+The test suites are not supported as of 7.11.0.
+
+The curlmsg.sdl and curlmsg.h files are generated from curlmsg.msg.
+This is not done automatically, since the .MSG file is a hand edit
+of the relevant stuff from the curl.h file.  If you want to do this
+yourself you'll need the SDL package from the freeware collection.
+