Commits

camlspotter committed 3a8269d

cleanup

Comments (0)

Files changed (180)

findlib/findlib-1.3.3.tar.gz

Binary file removed.

findlib/findlib-1.3.3/INSTALL

-The installation procedure consists of the steps:
-
-1) configure the "findlib" library
-2) compile "findlib" and the "ocamlfind" frontend of "findlib"
-3) install "findlib" and the core library configuration
-
-Optionally, you can run ./itest after step 2 to check the
-configuration. Problems with the configuration are unlikely, however.
-
-At the end of this file you find notes about MacOS and Windows.
-
-
-----------------------------------------------------------------------
-
-STEP 1: DEFAULT CONFIGURATION
-
-The findlib module and its ocamlfind frontend come with a "configure"
-script that should almost always be able to figure out a good
-configuration.
-
-Just type:
-
-	./configure
-
-First the linker options for the various core libraries are figured
-out, then reasonable installation paths are checked.
-
-If the results are not ok, you can modify them using the following
-options:
-
-	-bindir <path>
-
-		set the location where the ocamlfind command should be
-		installed.
-		Default: same location as "ocamlc"
-
-	-mandir <path>
-
-		set the location where the man page should be installed.
-		Default: a heuristics, and "/usr/local/man" as fallback.
-
-	-sitelib <path>
-
-		set the default "site-lib" directory.
-		Default: For installations in the /usr hierarchy,
-		"$stdlib/site-lib", where $stdlib is the location of
-		Ocaml's  standard library.
-
-		For installations in the /opt hierarchy,
-		"$stdlib/../site-lib", i.e. parallel to $stdlib.
-
-	-config <file>
-
-		set the location of the configuration file.
-		Default: <bindir>/../etc/findlib.conf
-
-	-no-topfind
-
-		the "topfind" script is not installed in the standard
-		library directory. (This is not a good idea in general,
-		because #use "topfind" will not work when this option
-		is enabled.)
-
-	-with-toolbox
-		also compile and install the "toolbox". This requires
-		that labltk is available. The toolbox contains the
-		"make_wizard" to easily create findlib-enabled Makefiles.
-
-	-cygpath
-		Cygwin environment only: If "ocamlc -where" does not
-		output a Unix-style path, this option can be used
-		to apply the "cygpath" command to it. Use this option
-		if you see backslashes or drive letters in Makefile.config.
-
-ALTERNATIVES:
-
-If the "configure" script does not work properly (very unlikely), do
-
-	cp Makefile.config.pattern Makefile.config
-
-and edit Makefile.config by hand.
-
-If the generated META files do not work, edit them (this is very very unlikely).
-
-Note: The META files are generated from the META.in files in the same
-directories by m4:
-
-	m4 -Dos=<os> <more parameters...> site-lib/<name>/META.in
-		>site-lib/<name>/META
-
-You may invoke m4 manually to create different META files, but this
-is currently not documented.
-
-
-
-----------------------------------------------------------------------
-
-STEP 2: COMPILATION
-
-After configuration has been done, compile with
-
-	make all
-
-This creates findlib.cma, findlib_mt.cma (the thread-safe version),
-and ocamlfind.
-
-If you have ocamlopt, do also
-
-	make opt
-
-This creates findlib.cmxa, findlib_mt.cmxa, and ocamlfind_opt.
-
-----------------------------------------------------------------------
-
-STEP 3: INSTALLATION
-
-Install the findlib library, the ocamlfind frontend, and the core library
-configurations with:
-
-	make install
-
-(A "make uninstall" removes them.)
-
-With
-	make clean
-
-the build directory is cleaned up.
-
-
-OPTIONAL (BUT RECOMMENDED):
-
-If you want a separate directory for DLLs, create this directory
-now: 
-
-mkdir `ocamlfind printconf destdir`/stublibs
-
-If you do this, you must also tell O'Caml that DLLs can be found in
-this directory: Add the absolute path of this directory to
-the ld.conf file (type "ocamlfind printconf ldconf" to get the
-location of the ld.conf file). Every line of this text file lists
-one possible directory for DLLs.
-
-----------------------------------------------------------------------
-
-MACOS X:
-
-Findlib can be installed as described. There is even a script to
-create a MacOS X package, use "make package-macosx" to invoke it. As I
-do not have access to a Mac box, I cannot test this script, but I
-fully trust the author that it works.
-
-----------------------------------------------------------------------
-
-WINDOWS:
-
-Ocaml for Windows exists in three flavours:
-
-(1) Ocaml as Cygwin program
-(2) Ocaml as Mingw program (i.e. the gcc toolchain is used but
-    Ocaml is a native Windows program)
-(3) Ocaml as VC program
-
-In all three cases you need Cygwin to build and install findlib,
-because "configure" and the Makefile are both Cygwin scripts. The
-golden rule to make everything work is this:
-
-PASS CYGWIN-STYLE PATHS TO CONFIGURE!
-
-Even in cases (2) and (3)! That means use something like
-/cygdrive/c/path and not c:\path when you specify where -bindir,
--config etc. are. The point is that "configure" itself is a Cygwin
-script, and therefore expects Cygwin input. At the right moment, the
-paths are back-translated to their Windows counterparts.
-
-Until O'Caml 3.08 you must specify whether you have (2) or (3) by
-the configure switches
-
-- "-system mingw" for (2)
-- "-system win32" for (3)
-- nothing for (1)
-
-Since O'Caml 3.09 this is no longer necessary because "ocamlc -config"
-outputs the required information.
-
-In previous versions of Findlib there was a single switch -cygpath 
-for both (2) and (3). It is now interpreted as -system mingw (as
-it was meant as that).

findlib/findlib-1.3.3/LICENSE

-Copyright 1999 by Gerd Stolpmann
-
-The package "findlib" is copyright by Gerd Stolpmann. 
-
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of this document and the "findlib" software (the
-"Software"), to deal in the Software without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Software, and to
-permit persons to whom the Software is furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice shall be included
-in all copies or substantial portions of the Software.
-
-The Software is provided ``as is'', without warranty of any kind, express
-or implied, including but not limited to the warranties of
-merchantability, fitness for a particular purpose and noninfringement.
-In no event shall Gerd Stolpmann be liable for any claim, damages or
-other liability, whether in an action of contract, tort or otherwise,
-arising from, out of or in connection with the Software or the use or
-other dealings in the software.

findlib/findlib-1.3.3/Makefile

-# make all: compile to bytecode
-# make opt: compile to native code
-# make install: install bytecode and/or native code
-#----------------------------------------------------------------------
-
-include Makefile.config
-
-TOP=.
-
-.PHONY: all opt install uninstall clean
-
-all:
-	for p in $(PARTS); do ( cd src/$$p; $(MAKE) all ); done
-	$(MAKE) all-config
-
-opt:
-	for p in $(PARTS); do ( cd src/$$p; $(MAKE) opt ); done
-
-install:
-	mkdir -p "$(prefix)$(OCAMLFIND_BIN)"
-	mkdir -p "$(prefix)$(OCAMLFIND_MAN)"
-	for p in $(PARTS); do ( cd src/$$p; $(MAKE) install ); done
-	$(MAKE) install-meta
-	cd src/findlib; $(MAKE) install-num-top
-	$(MAKE) install-config
-	cp tools/safe_camlp4 "$(prefix)$(OCAMLFIND_BIN)"
-	$(MAKE) install-doc
-
-uninstall:
-	$(MAKE) uninstall-doc
-	$(MAKE) uninstall-meta
-	for p in `cd src; echo *`; do ( cd src/$$p; $(MAKE) uninstall ); done
-	$(MAKE) uninstall-config
-
-clean:
-	for p in `cd src; echo *`; do ( cd src/$$p; $(MAKE) clean ); done
-	(cd itest-aux; $(MAKE) clean)
-	(cd tools/extract_args; $(MAKE) clean)
-	rm -f findlib.conf
-
-.PHONY: release
-release: README
-	./release
-
-README: doc/README
-	ln -s doc/README .
-
-
-.PHONY: all-config
-all-config: findlib.conf
-
-findlib.conf: findlib.conf.in 
-	USE_CYGPATH="$(USE_CYGPATH)"; \
-	export USE_CYGPATH; \
-	cat findlib.conf.in | \
-		tools/patch '@SITELIB@' '$(OCAML_SITELIB)' >findlib.conf
-	if ocamlc.opt >/dev/null 2>&1; then \
-		echo 'ocamlc="ocamlc.opt"' >>findlib.conf; \
-	fi
-	if ocamlopt.opt >/dev/null 2>&1; then \
-		echo 'ocamlopt="ocamlopt.opt"' >>findlib.conf; \
-	fi
-	if ocamldep.opt >/dev/null 2>&1; then \
-		echo 'ocamldep="ocamldep.opt"' >>findlib.conf; \
-	fi
-
-.PHONY: install-doc
-install-doc:
-	mkdir -p $(prefix)$(OCAMLFIND_MAN)/man1 $(prefix)$(OCAMLFIND_MAN)/man3 $(prefix)$(OCAMLFIND_MAN)/man5
-	-cp doc/ref-man/ocamlfind.1 $(prefix)$(OCAMLFIND_MAN)/man1
-	-cp doc/ref-man/META.5 doc/ref-man/site-lib.5 doc/ref-man/findlib.conf.5 $(prefix)$(OCAMLFIND_MAN)/man5
-
-.PHONY: uninstall-doc
-uninstall-doc:
-	rm -f $(prefix)$(OCAMLFIND_MAN)/man1/ocamlfind.1
-	rm -f $(prefix)$(OCAMLFIND_MAN)/man3/Findlib.3
-	rm -f $(prefix)$(OCAMLFIND_MAN)/man3/Topfind.3
-	rm -f $(prefix)$(OCAMLFIND_MAN)/man5/META.5
-	rm -f $(prefix)$(OCAMLFIND_MAN)/man5/site-lib.5
-
-
-.PHONY: install-meta
-install-meta:
-	for x in `ls site-lib-src`; do if [ "$$x" != "CVS" -a -f "site-lib-src/$$x/META" ]; then mkdir -p "$(prefix)$(OCAML_SITELIB)/$$x"; cp site-lib-src/$$x/META "$(prefix)$(OCAML_SITELIB)/$$x"; fi; done
-
-.PHONY: uninstall-meta
-uninstall-meta:
-	for x in `ls site-lib-src`; do if [ "$$x" != "CVS" ]; then rm -rf "$(prefix)$(OCAML_SITELIB)/$$x"; fi; done
-
-.PHONY: install-config
-install-config:
-	mkdir -p "`dirname \"$(prefix)$(OCAMLFIND_CONF)\"`"
-	@if [ -f "$(prefix)$(OCAMLFIND_CONF)" ]; then echo "!!! Keeping old $(prefix)$(OCAMLFIND_CONF) !!!"; fi
-	test -f "$(prefix)$(OCAMLFIND_CONF)" || cp findlib.conf "$(prefix)$(OCAMLFIND_CONF)"
-
-.PHONY: uninstall-config
-uninstall-config:
-	@echo Leaving "$(OCAMLFIND_CONF)" installed, consider manual removal
-
-.PHONY: interface-lists
-interface-lists:
-	d=`ocamlc -where`;                              \
-	for x in `ls site-lib-src`; do                  \
-	    iflist="";                                  \
-            if [ ! -f "site-lib-src/$$x/interfaces.in" ]; then continue; fi; \
-	    cma_spec=`cat site-lib-src/$$x/interfaces.in`;  \
-	    for cma in $$d/$$cma_spec; do               \
-		intf=`ocamlobjinfo $$cma |                   \
-		      grep 'Unit name:' |               \
-		      sed -e 's/^  Unit name: //' |     \
-		      sort |                            \
-		      tr '\n' ' '`;                     \
-		iflist="$$iflist $$intf";               \
-	    done;                                       \
-	    echo "$$iflist" >"site-lib-src/$$x/interfaces.out"; \
-	done
-
-######################################################################
-# The following is from Pietro Abata <pietro.abate@anu.edu.au>
-# to create MacOS X packages. I did not test it, just include it.
-
-.PHONY: package-macosx
-
-package-macosx: all opt
-	mkdir -p package-macosx/root
-	export prefix=`pwd`/package-macosx/root && make install 
-	export VERSION=1.1.2 && tools/make-package-macosx
-
-clean-macosx:
-	sudo rm -rf package-macosx

findlib/findlib-1.3.3/Makefile.config.pattern

-# You can manually set up your configuration using this
-# pattern. The final name of the file must be "Makefile.config".
-# Note that there are other files containing parts of the 
-# configuration, especially the site-lib/*/META files.
-# 
-#----------------------------------------------------------------------
-# Where the OCAML core is installed:
-#----------------------------------------------------------------------
-OCAML_CORE_STDLIB=/usr/local/lib/ocaml
-OCAML_CORE_BIN=/usr/local/bin
-OCAML_CORE_MAN=/usr/local/man
-
-#----------------------------------------------------------------------
-# Type of multi-threading support: either vm or posix
-# (Note: Since O'Caml 3.07, "posix" includes "vm", because a build
-# supporting posix also supports vm.)
-#----------------------------------------------------------------------
-OCAML_THREADS=vm
-#OCAML_THREADS=posix
-
-#----------------------------------------------------------------------
-# Where the site-lib directory will be
-#----------------------------------------------------------------------
-OCAML_SITELIB=/usr/local/lib/ocaml/site-lib
-
-#----------------------------------------------------------------------
-# Where binaries and manual pages will be installed
-#----------------------------------------------------------------------
-OCAMLFIND_BIN=/usr/local/bin
-OCAMLFIND_MAN=/usr/local/man
-
-#----------------------------------------------------------------------
-# The absolute location of the configuration file
-#----------------------------------------------------------------------
-OCAMLFIND_CONF=/usr/local/etc/ocamlfind.conf
-
-#----------------------------------------------------------------------
-# Autolinking is usually on
-#----------------------------------------------------------------------
-OCAML_AUTOLINK=true
-
-#----------------------------------------------------------------------
-# Windows only: set this to .exe
-#----------------------------------------------------------------------
-EXEC_SUFFIX=
-
-#----------------------------------------------------------------------
-# Which parts are to be built: findlib, findlib-toolbox (space-separated
-# list)
-#----------------------------------------------------------------------
-PARTS=findlib findlib-toolbox
-
-#----------------------------------------------------------------------
-# Whether the "topfind" script is installed in $(OCAML_CORE_STDLIB):
-#----------------------------------------------------------------------
-INSTALL_TOPFIND=1

findlib/findlib-1.3.3/configure

-#! /bin/sh
-# $Id: configure 179 2012-07-09 09:23:20Z gerd $
-# ----------------------------------------------------------------------
-#
-
-# Some functions
-
-#set -x
-
-version="1.3.3"
-
-# Remember the old IFS value:
-oldifs="$IFS"
-
-
-in_path () {
-    # Does $1 exist in $PATH?
-    IFS=":"
-    for d in $PATH; do
-	if test -x "$d/$1"; then
-	    IFS="$oldifs"
-	    return 0
-	fi
-    done
-    IFS="$oldifs"
-    return 1
-#--- The following is not portable enough:
-#    if test -x `type -p ls`; then
-#	# type -p works!
-#        type -p $1 >/dev/null
-#    else
-#        # use 'which' instead
-#        p=`which $1`
-#	test -x "$p"
-#    fi
-}
-
-
-get_path () {
-    IFS=":"
-    for d in $PATH; do
-	if test -x "$d/$1"; then
-	    IFS="$oldifs"
-	    echo "$d/$1"
-	    return
-	fi
-    done
-    IFS="$oldifs"
-#--- The following is not portable enough:
-#    if test -x `type -p ls`; then
-#	# type -p works!
-#        type -p $1
-#    else
-#        # use 'which' instead
-#        p=`which $1`
-#	test -x "$p" && echo $p
-#    fi
-}
-
-
-get_stdlib () {
-    # Older versions of ocamlc do not accept -where, so there is a fallback
-    # method:
-    ocamlc -where 2>/dev/null | tr -d '\015' || {
-	ocamlc -v | sed -n -e "/Standard library directory/s/.*: \(.*\)/\1/p"; }
-}
-
-
-get_lib () {
-    # $1: name of a library to search for
-    # $2...: places to test
-    libname="$1"
-    while [ "$#" != "0" ]; do
-	if [ -f "$1/lib${libname}.so" -o -f "$1/lib${libname}.a" ]; then
-	    echo "$1"
-	    return 0
-	fi
-	shift
-    done
-    return 1
-}
-
-
-get_lib_file () {
-    # $1: name of library without "lib" and suffix
-    # $2: directory
-    # returns full path of library
-    if [ -f "$2/lib$1.so" ]; then
-	echo "$2/lib$1.so"
-    elif [ -f "$2/lib$1.a" ]; then
-	echo "$2/lib$1.a"
-    else
-	echo ""
-    fi
-}
-
-
-cygpath_to_unix () {
-    v=$1
-    eval "p=\"\$$v\""
-    p="`cygpath -w -s \"$p\"`"
-    p="`cygpath -u \"$p\"`"
-    eval "$v=\"$p\""
-}
-
-
-######################################################################
-# Here the main program begins:
-
-######################################################################
-# Interpret the command line
-
-ocamlfind_bin=""
-ocamlfind_man=""
-ocaml_sitelib=""
-ocamlfind_config=""
-with_toolbox=0
-with_topfind=1
-system=""
-
-while [ "$#" != "0" ]; do
-    case "$1" in
-        -bindir) ocamlfind_bin=$2
-	         shift 2
-		 ;;
-        -mandir) ocamlfind_man=$2
-	         shift 2
-		 ;;
-        -sitelib) ocaml_sitelib=$2
-	          shift 2
-		  ;;
-        -config) ocamlfind_config=$2
-	         shift 2
-		 ;;
-	-cygpath) system=mingw
-	         shift
-		 ;;
-	-system) system=$2
-	         shift 2
-		 ;;
-	-with-toolbox) with_toolbox=1
-	         shift
-		 ;;
-	-no-topfind) with_topfind=0
-	         shift
-		 ;;
-	-version)
-	         echo "$version"
-		 exit 0
-		 ;;
-        -h|-help|--help) echo "usage: configure [options]" 1>&2
-		  echo "  -bindir path         where binaries are installed" 1>&2
-		  echo "  -mandir path         where manual pages are installed" 1>&2
-		  echo "  -sitelib path        set the location of the site-specific packages" 1>&2
-                  echo "  -config path         set the location of the configuration file" 1>&2
-		  echo "  -system <systype>    override system type (esp. mingw and win32)" 1>&2
-		  echo "  -with-toolbox        also build the toolbox" 1>&2
-		  echo "  -no-topfind          don't install topfind script into stdlib directory" 1>&2
-		  exit
-		  ;;
-         *)       echo "configure: run 'configure -h' to get help" 1>&2
-		  exit 1
-		  ;;
-    esac
-done
-
-echo "Welcome to findlib version $version"
-echo "Configuring core..."
-
-
-#######################################################################
-# inspect the system
-
-# Some standard Unix tools must be available:
-
-for tool in sed awk ocaml ocamlc uname rm make cat m4 dirname basename; do
-    if in_path $tool; then true; else
-	echo "configure: $tool not in PATH; this is required" 1>&2
-	exit 1
-    fi
-done
-
-# Check for Cygwin:
-
-exec_suffix=
-pure_mingw="no"
-mingw_lib=
-case `uname` in
-  CYGWIN*)
-    exec_suffix=.exe
-    echo "Cygwin build environment found; using .exe as suffix for binaries"
-    ;;
-  MINGW*)
-    exec_suffix=.exe
-    pure_mingw="yes"
-    echo "MinGW build environment found; using .exe as suffix for binaries"
-    mingw_lib=`get_path gcc`
-    mingw_lib=`dirname "$mingw_lib"`/../lib
-    ;;
-  *)
-    true ;;
-esac
-
-######################################################################
-# Is the target Win32?
-
-use_cygpath=0
-# Whether we have to translate Unix paths to/from Windows paths.
-
-if [ -z "$system" ]; then
-    system=`ocamlc -config 2>/dev/null|grep system|sed 's/system: //'`
-    # This may be
-    # - mingw or mingw64
-    # - win32
-    # - win64
-    # - cygwin
-    # - some other string means Unix
-    # - empty means ocamlc does not support -config
-fi
-
-case "$system" in
-    mingw|mingw64)
-	if [ "$pure_mingw" = "no" ];  then
-	    # CYGWIN
-	    use_cygpath=1
-	fi
-	;;
-    win32) use_cygpath=1;;
-    win64) use_cygpath=1;;
-esac
-
-######################################################################
-# Find out standard library location
-
-ocaml_core_stdlib=`get_stdlib`
-if [ ! -d "$ocaml_core_stdlib" ]; then
-   echo "configure: cannot determine ocaml's standard library directory" 1>&2
-    exit 1
-fi
-
-if [ ${use_cygpath} -gt 0 ]; then
-    cygpath_to_unix ocaml_core_stdlib
-    # This makes ocaml_core_stdlib a Unix-type path
-fi
-
-# Set site-lib directory:
-
-if [ -z "$ocaml_sitelib" ]; then
-    case "$ocaml_core_stdlib" in
-	/opt/*)		ocaml_sitelib=`dirname "${ocaml_core_stdlib}"`/site-lib
-			;;
-	*)		ocaml_sitelib="${ocaml_core_stdlib}/site-lib"
-			;;
-    esac
-fi
-
-# Find out the directory where ocamlc is:
-
-ocamlc=`get_path ocamlc`
-ocaml_core_bin=`dirname "${ocamlc}"`
-
-# Set the directory of ocamlfind:
-
-test -n "$ocamlfind_bin" || ocamlfind_bin="$ocaml_core_bin"
-
-# Find the directory for the manual:
-
-# Fallback:
-ocaml_core_man=/usr/local/man
-
-d="$ocaml_core_bin"
-while [ "$d" != '/' ]; do
-    f=0
-    if [ -d "$d/man/man1" ]; then
-	if [ -f "$d/man/man1/ocamlc.1" -o \
-	     -f "$d/man/man1/ocamlc.1.gz" -o \
-	     -f "$d/man/man1/ocamlc.1.Z" ]; then
-	     f=1
-	fi
-    else
-	if [ -d "$d/man/mann" ]; then
-	    if [ -f "$d/man/mann/ocamlc.n" -o \
-		 -f "$d/man/mann/ocamlc.n.gz" -o \
-		 -f "$d/man/mann/ocamlc.n.Z" ]; then
-		f=1
-	    fi
-	fi
-    fi
-    if [ "$f" = "1" ]; then
-	ocaml_core_man="$d/man"
-	d="/"
-    else
-	d=`dirname "$d"`
-    fi
-done
-
-# Set the directory for ocamlfind's manuals:
-
-test -n "$ocamlfind_man" || ocamlfind_man="$ocaml_core_man"
-
-# Guess the right directory for the configuration file:
-
-if [ -z "${ocamlfind_config}" ]; then
-    d="$ocaml_core_bin"
-    case "$d" in
-        */bin)
-	    ocamlfind_config=`dirname "$d"`/etc/findlib.conf
-	    ;;
-	*)
-	    ocamlfind_config=/usr/local/etc/findlib.conf
-	    # Fallback value
-	    ;;
-    esac
-fi
-
-######################################################################
-# do we have #remove_directory?
-
-echo "Checking for #remove_directory..."
-have_remdir=1
-ocaml itest-aux/remdir.ml >/dev/null 2>/dev/null || have_remdir=0
-
-######################################################################
-# Test the threading model
-
-echo "Testing threading model..."
-
-if ocamlc -vmthread >/dev/null 2>/dev/null; then
-    :
-else
-    echo "The -vmthread switch is not supported: Your ocaml version is too old!"
-    exit 1
-fi
-
-if ocamlc -config >/dev/null 2>/dev/null; then
-    # Good. ocamlc tells us the threading model.
-    if ocamlc -config | grep 'systhread_supported: true'; then
-	ocaml_threads="posix"
-    else
-	ocaml_threads="vm"
-    fi
-else
-    # Old ocamlc do not have -config. 
-    rm -f itest-aux/simple
-    ocamlc -w a -custom -thread -o itest-aux/simple unix.cma threads.cma itest-aux/simple_threads.ml \
-	>itest-aux/err.out 2>&1
-    output=`cat itest-aux/err.out`
-
-    if [ -z "$output" ]; then
-	ocaml_threads="posix"
-    else
-	ocaml_threads="vm"
-    fi
-fi
-
-######################################################################
-# Does this version of OCaml support autolinking?
-
-# Works for O'Caml >= 3.00 on. Because findlib can only be compiled
-# with these O'Caml versions, we can safely assume that autolinking
-# is enabled.
-
-ocaml_autolink="true"
-
-######################################################################
-# Does this version of OCaml support DLLs?
-
-echo "Testing DLLs..."
-
-have_dlls="yes"
-
-ocaml unix.cma itest-aux/simple.ml >/dev/null || have_dlls="no"
-
-######################################################################
-# Configure libraries
-
-echo "Configuring libraries..."
-
-# Check whether Bigarray is present.
-
-lbigarray=bigarray
-# always
-
-# Dynlink check.
-
-have_natdynlink=0
-natdynlink=""
-camlp4_dynlink=""
-if [ -f "${ocaml_core_stdlib}/dynlink.cmxa" ]; then
-    have_natdynlink=1
-    natdynlink="archive(native) = \"dynlink.cmxa\""
-    camlp4_dynlink="dynlink"
-    echo "native dynlink: found"
-else
-    natdynlink="archive(native) = \"\""
-    echo "native dynlink: not found"
-fi
-
-# Check whether labltk is present.
-
-if [ -f "${ocaml_core_stdlib}/labltk/labltk.cma" ]; then
-    llabltk=labltk
-    echo "labltk: found"
-else
-    llabltk=''
-    echo "labltk: not present"
-    if [ $with_toolbox -gt 0 ]; then
-	echo "Sorry, toolbox requires labltk - omitting toolbox."
-    fi
-    with_toolbox=0
-fi
-
-# Check whether ocamlbuild is present
-
-if [ -f "${ocaml_core_stdlib}/ocamlbuild/ocamlbuildlib.cma" ]; then
-    lobuild=ocamlbuild
-    echo "ocamlbuild: found"
-else
-    lobuild=""
-    echo "ocamlbuild: not present"
-fi
-
-# Check on camlp4:
-
-if in_path camlp4; then
-    camlp4_dir=`camlp4 -where | tr -d '\015'`
-    if [ ${use_cygpath} -gt 0 ]; then
-	camlp4_dir=`echo x | env USE_CYGPATH=1 tools/patch x "$camlp4_dir"`
-        # This makes camlp4_dir a windows path
-    elif [ "${pure_mingw}" = "yes" ]; then
-	# Must double the backslahes
-	camlp4_dir="$(echo "${camlp4_dir}" | sed -e 's;\\;\\\\;g')"
-    fi
-    camlp4_version=`camlp4 -v 2>&1`
-    if [ "$have_dlls" = "yes" ]; then
-	camlp4_cmd="camlp4"
-    else
-	camlp4_cmd="safe_camlp4"
-    fi
-    # Check whether 3.09 or 3.10 style:
-    if camlp4 -loaded-modules >/dev/null 2>/dev/null; then
-	camlp4style=310
-    else
-	camlp4style=309
-    fi
-    lcamlp4="camlp4"
-    rm -rf "site-lib-src/camlp4"
-    mkdir "site-lib-src/camlp4"
-    cp "site-lib-src/camlp4.$camlp4style/META.in" "site-lib-src/camlp4/"
-    echo "camlp4: using $camlp4_cmd, style $camlp4style"
-else
-    lcamlp4=''
-    echo "camlp4: not present"
-fi
-
-# compiler-libs?
-if [ -d "${ocaml_core_stdlib}/compiler-libs" ]; then
-    echo "compiler-libs: found"
-    lcomplibs="compiler-libs"
-else
-    echo "compiler-libs: not present"
-    lcomplibs=""
-fi
-
-
-# Generate the META files now.
-
-l="dbm dynlink graphics num num-top str threads unix stdlib bigarray $llabltk $lcamlp4 $lobuild $lcomplibs"
-
-for dir in site-lib-src/*; do
-    # We do not really know if $dir is a directory.
-    rm -f $dir/META
-done
-
-for lib in $l; do
-    if=""
-    if [ -f site-lib-src/$lib/interfaces.out ]; then
-	if=`cat site-lib-src/$lib/interfaces.out`
-    fi
-    m4 -Dos=$os \
-	"-Dtype_of_threads=${ocaml_threads}" \
-	"-Dcamlp4_dir=${camlp4_dir}" \
-	"-Dcamlp4_version=${camlp4_version}" \
-	"-Dcamlp4_cmd=${camlp4_cmd}" \
-	"-Dcamlp4_dynlink=${camlp4_dynlink}" \
-	"-Dinterfaces=${if}" \
-	"-Dfindlib_version=${version}" \
-	"-Dnatdynlink=${natdynlink}" \
-	site-lib-src/$lib/META.in >site-lib-src/$lib/META
-    echo "Configuration for $lib written to site-lib-src/$lib/META"
-done
-
-for part in `cd src; echo *`; do
-    if [ -f "src/$part/META.in" ]; then
-	sed -e "s/@VERSION@/$version/g" src/$part/META.in >src/$part/META
-    fi
-done
-
-######################################################################
-
-printf "Detecting compiler arguments: "
-
-( cd tools/extract_args && make ) >ocargs.log 2>&1
-if [ "$?" -eq 0 ]; then
-    printf "(extractor built) "
-    tools/extract_args/extract_args -o src/findlib/ocaml_args.ml ocamlc ocamlcp ocamlmklib ocamlmktop ocamlopt ocamldep ocamldoc >>ocargs.log 2>&1
-    # ocamlbrowser does not work!
-    if [ $? -eq 0 ]; then
-	echo "ok"
-    else
-	echo "FAILED (see the file ocargs.log for details)"
-	exit 1
-    fi
-else
-    echo "FAILED (see the file ocargs.log for details)"
-    exit 1
-fi
-
-######################################################################
-# Write Makefile.config
-
-parts="findlib"
-if [ $with_toolbox -gt 0 ]; then
-    parts="$parts findlib-toolbox"
-fi
-
-echo "# Makefile.config written by configure" >Makefile.config
-echo "OCAML_CORE_STDLIB=${ocaml_core_stdlib}" >>Makefile.config
-echo "OCAML_CORE_BIN=${ocaml_core_bin}" >>Makefile.config
-echo "OCAML_CORE_MAN=${ocaml_core_man}" >>Makefile.config
-echo "OCAML_SITELIB=${ocaml_sitelib}" >>Makefile.config
-echo "OCAML_THREADS=${ocaml_threads}" >>Makefile.config
-echo "OCAMLFIND_BIN=${ocamlfind_bin}" >>Makefile.config
-echo "OCAMLFIND_MAN=${ocamlfind_man}" >>Makefile.config
-echo "OCAMLFIND_CONF=${ocamlfind_config}" >>Makefile.config
-echo "OCAML_AUTOLINK=${ocaml_autolink}" >>Makefile.config
-echo "OCAML_REMOVE_DIRECTORY=${have_remdir}" >>Makefile.config
-echo "EXEC_SUFFIX=${exec_suffix}" >>Makefile.config
-echo "PARTS=${parts}" >>Makefile.config
-echo "INSTALL_TOPFIND=${with_topfind}" >>Makefile.config
-echo "USE_CYGPATH=${use_cygpath}" >>Makefile.config
-echo "VERSION=${version}" >>Makefile.config
-echo "SYSTEM=${system}" >>Makefile.config
-if [ "$mingw_lib" != "" ]; then
-    echo "OCAMLC_FLAGS=-I \"${mingw_lib}\"" >>Makefile.config
-    echo "OCAMLOPT_FLAGS=-I \"${mingw_lib}\"" >>Makefile.config
-fi
-
-# All OK
-
-echo
-echo "About the OCAML core installation:"
-echo "    Standard library:      ${ocaml_core_stdlib}"
-echo "    Binaries:              ${ocaml_core_bin}"
-echo "    Manual pages:          ${ocaml_core_man}"
-echo "    Multi-threading type:  ${ocaml_threads}"
-echo "The directory of site-specific packages will be"
-echo "    site-lib:              ${ocaml_sitelib}"
-echo "The configuration file is written to:"
-echo "    findlib config file:   ${ocamlfind_config}"
-echo "Software will be installed:"
-echo "    Libraries:             in <site-lib>/findlib"
-echo "    Binaries:              ${ocamlfind_bin}"
-echo "    Manual pages:          ${ocamlfind_man}"
-if [ $with_topfind -gt 0 ]; then
-    echo "    topfind script:        ${ocaml_core_stdlib}"
-else
-    echo "    topfind script:        omitted"
-fi
-
-if [ $with_toolbox -gt 0 ]; then
-    echo "Toolbox:                   yes"
-else
-    echo "Toolbox:                   no"
-fi
-
-echo
-echo "Configuration has been written to Makefile.config"
-echo
-echo "You can now do 'make all', and optionally 'make opt', to build ocamlfind."

findlib/findlib-1.3.3/doc/DOCINFO

-To build the html and manual pages from the SGML sources, you need the 
-following tools:
-
-- The DocBook DTD
-  (http://www.davenport.com)
-- James Clark's SGML tools (jade, sx suffice)
-  (http://www.jclark.com)
-- Normal Walsh's DSSSL stylesheets to make the HTML pages
-  (http://nwalsh.com/docbook/dsssl)
-- My db2man tool to make the manual pages
-  (http://www.ocaml-programming.de/packages)
-
-The latter also requires Christian Lindig's XML parser
-(//http://www.cs.tu-bs.de/softech/people/lindig/software/tony.html).
-

findlib/findlib-1.3.3/doc/Makefile

-DOCBOOK_HTML  = /usr/share/sgml/docbook/stylesheet/dsssl/modular/html
-DOCBOOK_PRINT = /usr/share/sgml/docbook/stylesheet/dsssl/modular/print
-SRC = $(PWD)/src
-
-EXPORTED = findlib.mli fl_package_base.mli fl_metascanner.mli topfind.mli
-
-.PHONY: guide-html ref-html ref-man
-
-default: guide-html ref-html ref-man README QUICKSTART
-
-guide-html: guide-html/TIMESTAMP
-ref-html: ref-html/TIMESTAMP
-ref-man: ref-man/TIMESTAMP
-
-guide-html/TIMESTAMP: src/*.sgml src/*.mod QUICKSTART.xml common.xml config.xml
-	mkdir -p guide-html
-	cd guide-html; \
-	rm -f *.htm*; \
-	jade -t sgml -D$(DOCBOOK_HTML) -D$(SRC) findlib.sgml; \
-	true
-	readme -html QUICKSTART.xml >guide-html/quickstart.html
-	touch guide-html/TIMESTAMP
-
-ref-html/TIMESTAMP: src/*.sgml src/*.mod common.xml config.xml $(EXPORTED:%=../src/findlib/%)
-	mkdir -p ref-html
-	cd ref-html; \
-	rm -f *.htm*; \
-	jade -t sgml -D$(DOCBOOK_HTML) -D$(SRC) findlib_ref.sgml; \
-	true
-	mkdir -p ref-html/lib
-	cd ../src/findlib && \
-	ocamldoc -html -d $(PWD)/ref-html/lib -stars -t "The Findlib Library" $(EXPORTED)
-	touch ref-html/TIMESTAMP
-
-src/findlib_reference.xml: src/*.sgml src/*.mod
-	sgml2xml -D$(DOCBOOK_HTML) -D$(SRC) \
-		findlib_reference.sgml >src/findlib_reference.xml ; \
-	true
-
-ref-man/TIMESTAMP: src/findlib_reference.xml
-	mkdir -p ref-man
-	cd ref-man; \
-	rm -f *.[0-9] TIMESTAMP; \
-	db2man <../src/findlib_reference.xml
-	touch ref-man/TIMESTAMP
-
-# Unfortunately, output of ocamldoc -man is too bad to be useful.
-#	cd ../src/findlib && \
-#	ocamldoc -man -man-mini -d $(PWD)/ref-man -man-suffix 3 -stars -t "The Findlib Library" $(EXPORTED)
-
-.SUFFIXES: .xml .sgml
-
-.sgml.xml: 
-	sx -xndata $< >$@; true
-
-
-
-clean:
-	rm -rf guide-html guide-man
-	rm -f src/*.xml
-
-distclean:
-	rm -f src/*.xml
-	rm -f src/*~
-	rm -f *~
-
-QUICKSTART: QUICKSTART.xml
-	readme -text QUICKSTART.xml >QUICKSTART
-
-README: README.xml
-	readme -text README.xml >README
-

findlib/findlib-1.3.3/doc/QUICKSTART

-******************************************************************************
-QUICKSTART - The most important ways to use findlib
-******************************************************************************
-
-
-==============================================================================
-Intro
-==============================================================================
-
-See the file INSTALL for instructions how to build and install findlib.
-
-==============================================================================
-Findlib and the toploop
-==============================================================================
-
-For a number of platforms, O'Caml can load bytecode-compiled libraries 
-dynamically. For these platforms, findlib is very simple to use as explained in 
-the following. For other platforms, see the paragraph below about "custom 
-toploops".
-
-After the toploop has been started, it is possible to load the special findlib 
-support: [1] 
-
-$ ocaml
-        Objective Caml version 3.07
-
-# #use "topfind";;
-Findlib has been successfully loaded. Additional directives:
-  #require "package";;      to load a package
-  #list;;                   to list the available packages
-  #camlp4o;;                to load camlp4 (standard syntax)
-  #camlp4r;;                to load camlp4 (revised syntax)
-  #predicates "p,q,...";;   to set these predicates
-  Topfind.reset();;         to force that packages will be reloaded
-  #thread;;                 to enable threads
-
-- : unit = ()
-
-You can now list the available packages: 
-
-# #list;;
-bigarray            (version: [distributed with Ocaml])
-camlp4              (version: Camlp4 version 3.03 ALPHA)
-dbm                 (version: [distributed with Ocaml])
-dynlink             (version: [distributed with Ocaml])
-findlib             (version: 0.6)
-graphics            (version: [distributed with Ocaml])
-labltk              (version: [distributed with Ocaml])
-netstring           (version: 0.10)
-num                 (version: [distributed with Ocaml])
-stdlib              (version: [distributed with Ocaml])
-str                 (version: [distributed with Ocaml])
-threads             (version: [distributed with Ocaml])
-unix                (version: [distributed with Ocaml])
-xstrp4              (version: 1.1)
-
-and load packages by simply typing: 
-
-# #require "netstring";;
-Loading /opt/ocaml/lib/unix.cma
-Loading /opt/ocaml/lib/str.cma
-Loading /opt/ocaml/site-lib/netstring/netstring.cma
-Loading /opt/ocaml/site-lib/netstring/netstring_top.cmo
-
-Findlib takes care to load packages that are required by loaded packages first. 
-For example, "netstring" uses "unix" and "str" internally, but you do not need 
-to load them because findlib does it for you. In this example you can also see 
-that findlib loads netstring_top.cmo containing printers for the toploop.
-
-You can also enable the Camlp4 parsers by simply typing 
-
-# #camlp4o;;
-Loading /opt/ocaml-3.03a/lib/camlp4/camlp4o.cma
-        Camlp4 Parsing version 3.03 ALPHA
-
-for the standard syntax or 
-
-# #camlp4r;;
-Loading /opt/ocaml-3.03a/lib/camlp4/camlp4r.cma
-        Camlp4 Parsing version 3.03 ALPHA
-
-for the revised syntax. (But you cannot switch between the syntaxes.) 
-
-==============================================================================
-Custom Toploops
-==============================================================================
-
-For some platforms, O'Caml does not implement loading external libraries (e.g. 
-Cygwin). One has to create a so-called custom toploop that statically links 
-with these libraries. Example: 
-
-$ ocamlfind ocamlmktop -o mytop -package findlib,unix -linkpkg
-$ ./mytop
-        Objective Caml version 3.07
- 
-# #use "topfind";;
-Findlib has been successfully loaded. Additional directives:
-  #require "package";;      to load a package
-  #list;;                   to list the available packages
-  #camlp4o;;                to load camlp4 (standard syntax)
-  #camlp4r;;                to load camlp4 (revised syntax)
-  #predicates "p,q,...";;   to set these predicates
-  Topfind.reset();;         to force that packages will be reloaded
-  #thread;;                 to enable threads
-
-- : unit = ()
-
-Now "#require" works for all libraries referring to the special "unix" 
-functions. 
-
-==============================================================================
-Findlib and scripts
-==============================================================================
-
-The #require directive can also be used in scripts. Example: 
-
-#use "topfind";;
-#require "netstring";;
-
-open Cgi;;
-...
-
-This makes it possible to write scripts that do not contain #directory 
-directives that are specific for certain installations.
-
-For Unix environments, you can start scripts directly if you apply the 
-following trick: 
-
-#! /bin/sh
-# (*
-exec ocaml "$0" "$@"
-*) use "topfind";;
-#require "netstring";;
-
-open Cgi;;
-...
-
-This works wherever O'Caml is installed.
-
-==============================================================================
-Compiling programs
-==============================================================================
-
-Assumed you want to compile a program that uses the Netstring package. Do it 
-the following way: 
-
-$ ocamlfind ocamlc -package netstring -c myprogram.ml
-
-This way you do not need to add "-I" options to locate Netstring.
-
-If you want to create an executable, do not forget to add the -linkpkg switch: 
-
-$ ocamlfind ocamlc -o myprogram -package netstring -linkpkg myprogram.cmo
-
-This switch causes that the mentioned packages are added to the resulting 
-executable.
-
-If you want to include several packages, you can either add several "-package" 
-options, or you can enumerate the packages separated by commas: -package 
-netstring,labltk.
-
-==============================================================================
-Camlp4
-==============================================================================
-
-If you add a -syntax option, the compiler will be told to parse the source file 
-using camlp4: 
-
-$ ocamlfind ocamlc -package netstring -syntax camlp4o -c myprogram.ml
-
-Use -syntax camlp4o for the standard syntax or -syntax camlp4r for the revised 
-syntax.
-
-Additionally, you can mention packages that add new syntax features. The 
-package xstrp4 is an example of this: 
-
-$ ocamlfind ocamlc -package xstrp4,netstring -syntax camlp4o -c myprogram.ml
-
-Now you can use the $ notation that is implemented by xstrp4 in the source file 
-myprogram.ml.
-
-Note that you can also invoke ocamldep from ocamlfind: 
-
-$ ocamlfind ocamldep -package xstrp4 -syntax camlp4o *.ml *.mli >.depend
-
-This enables the syntax extensions, too.
-
-==============================================================================
-ocamlbrowser
-==============================================================================
-
-Since findlib-0.7, it is also possible to start ocamlbrowser from ocamlfind. 
-For example, 
-
-$ ocamlfind browser -package xstrp4
-
-adds the correct path specification such that the modules contained in the 
-package xstrp4 are also displayed. With 
-
-$ ocamlfind browser -all
-
-all package are added to the path spec. 
-
-==============================================================================
-The Makefile wizard
-==============================================================================
-
-There is a wizard that makes it very easy to write Makefiles. Call the wizard 
-by 
-
-$ ocamlfind findlib/make_wizard
-
-(the wizard requires that the labltk library is available). A new window pops 
-up, and by very few clicks you can describe your own library. Finally, a 
-Makefile is written. 
-
-==============================================================================
-There is no magic!
-==============================================================================
-
-Findlib is neither a patch of O'Caml nor uses it internal features of the 
-O'Caml programming environment. It is only a convention to install software 
-components in filesystem hierarchies, a library interpreting this convention, 
-and some frontend applications making the library useable for you.
-
-One important consequence is that you can only refer to those software 
-components that have previously been installed in a way findlib understands. 
-This convention is beyond the scope of this QUICKSTART guide, see the reference 
-manual for details. You can always check whether findlib accepts a component as 
-"findlib package" by the command 
-
-$ ocamlfind list
-
-(this is the same as the #list directive in the toploop). If the package occurs 
-in the list, it is found, otherwise not.
-
-
---------------------------
-
-[1]   In previous versions, #use "findlib" loaded the library. However, this 
-      caused a name conflict for a certain type of installation. Because of 
-      this, the name of the loader script has been changed to "topfind", but 
-      "findlib", and "ocamlfind" (Debian) are also available for backwards 
-      compatibility.
-
-
-

findlib/findlib-1.3.3/doc/QUICKSTART.xml

-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE readme SYSTEM "readme.dtd" [
-
-<!ENTITY % common SYSTEM "common.xml">
-%common;
-
-<!-- Special HTML config: -->
-<!ENTITY % readme:html:up '<a href="../..">up</a>'>
-
-<!ENTITY % config SYSTEM "config.xml">
-%config;
-
-]>
-
-<readme title="QUICKSTART - The most important ways to use findlib">
-  <sect1>
-    <title>Intro</title>
-    <p>See the file INSTALL for instructions how to build and install
-findlib.</p>
-  </sect1>
-
-  <sect1>
-    <title>Findlib and the toploop</title> 
-
-<p>For a number of platforms, O'Caml can load bytecode-compiled
-libraries dynamically. For these platforms, findlib is very simple to
-use as explained in the following. For other platforms, see the paragraph
-below about "custom toploops".</p>
-
-    <p>After the toploop has been started, it is possible to load the special
-findlib support:<footnote>In previous versions, #use "findlib" loaded the
-library. However, this caused a name conflict for a certain type of
-installation. Because of this, the name of the loader script has been changed
-to "topfind", but "findlib", and "ocamlfind" (Debian) are also available
-for backwards compatibility.</footnote>
-
-<code>
-$ ocaml
-        Objective Caml version 3.07
-
-# #use "topfind";;
-Findlib has been successfully loaded. Additional directives:
-  #require "package";;      to load a package
-  #list;;                   to list the available packages
-  #camlp4o;;                to load camlp4 (standard syntax)
-  #camlp4r;;                to load camlp4 (revised syntax)
-  #predicates "p,q,...";;   to set these predicates
-  Topfind.reset();;         to force that packages will be reloaded
-  #thread;;                 to enable threads
-
-- : unit = ()
-</code>
-
-You can now list the available packages:
-
-<code>
-# #list;;
-bigarray            (version: [distributed with Ocaml])
-camlp4              (version: Camlp4 version 3.03 ALPHA)
-dbm                 (version: [distributed with Ocaml])
-dynlink             (version: [distributed with Ocaml])
-findlib             (version: 0.6)
-graphics            (version: [distributed with Ocaml])
-labltk              (version: [distributed with Ocaml])
-netstring           (version: 0.10)
-num                 (version: [distributed with Ocaml])
-stdlib              (version: [distributed with Ocaml])
-str                 (version: [distributed with Ocaml])
-threads             (version: [distributed with Ocaml])
-unix                (version: [distributed with Ocaml])
-xstrp4              (version: 1.1)
-</code>
-
-and load packages by simply typing:
-
-<code>
-# #require "netstring";;
-Loading /opt/ocaml/lib/unix.cma
-Loading /opt/ocaml/lib/str.cma
-Loading /opt/ocaml/site-lib/netstring/netstring.cma
-Loading /opt/ocaml/site-lib/netstring/netstring_top.cmo
-</code>
-
-Findlib takes care to load packages that are required by loaded packages
-first. For example, "netstring" uses "unix" and "str" internally, but you
-do not need to load them because findlib does it for you. In this example
-you can also see that findlib loads netstring_top.cmo containing printers
-for the toploop.</p>
-
-    <p>You can also enable the Camlp4 parsers by simply typing
-
-<code>
-# #camlp4o;;
-Loading /opt/ocaml-3.03a/lib/camlp4/camlp4o.cma
-        Camlp4 Parsing version 3.03 ALPHA
-</code>
-
-for the standard syntax or
-
-<code>
-# #camlp4r;;
-Loading /opt/ocaml-3.03a/lib/camlp4/camlp4r.cma
-        Camlp4 Parsing version 3.03 ALPHA
-</code>
-
-for the revised syntax. (But you cannot switch between the syntaxes.)
-</p>
-  </sect1>
-
-  <sect1>
-    <title>Custom Toploops</title>
-
-    <p>For some platforms, O'Caml does not implement loading external
-libraries (e.g. Cygwin). One has to create a so-called custom toploop
-that statically links with these libraries. Example:
-
-<code>
-$ ocamlfind ocamlmktop -o mytop -package findlib,unix -linkpkg
-$ ./mytop
-        Objective Caml version 3.07
- 
-# #use "topfind";;
-Findlib has been successfully loaded. Additional directives:
-  #require "package";;      to load a package
-  #list;;                   to list the available packages
-  #camlp4o;;                to load camlp4 (standard syntax)
-  #camlp4r;;                to load camlp4 (revised syntax)
-  #predicates "p,q,...";;   to set these predicates
-  Topfind.reset();;         to force that packages will be reloaded
-  #thread;;                 to enable threads
-
-- : unit = ()
-</code>
-
-Now "#require" works for all libraries referring to the special "unix"
-functions.
-</p>
-  </sect1>
-
-  <sect1>
-    <title>Findlib and scripts</title>
-
-    <p>The #require directive can also be used in scripts. Example:
-
-<code>
-#use "topfind";;
-#require "netstring";;
-
-open Cgi;;
-...
-</code>
-
-This makes it possible to write scripts that do not contain #directory
-directives that are specific for certain installations.</p>
-
-    <p>For Unix environments, you can start scripts directly if you
-apply the following trick:
-
-<code>
-#! /bin/sh
-# (*
-exec ocaml "$0" "$@"
-*) use "topfind";;
-#require "netstring";;
-
-open Cgi;;
-...
-</code>
-
-This works wherever O'Caml is installed.</p>
-  </sect1>
-
-  <sect1>
-    <title>Compiling programs</title>
-
-    <p>Assumed you want to compile a program that uses the Netstring package.
-Do it the following way:
-
-<code>
-$ ocamlfind ocamlc -package netstring -c myprogram.ml
-</code>
-
-This way you do not need to add "-I" options to locate Netstring.</p>
-
-    <p>If you want to create an executable, do not forget to add the
--linkpkg switch:
-
-<code>
-$ ocamlfind ocamlc -o myprogram -package netstring -linkpkg myprogram.cmo
-</code>
-
-This switch causes that the mentioned packages are added to the resulting
-executable.</p>
-
-    <p>If you want to include several packages, you can either add several
-"-package" options, or you can enumerate the packages separated by commas:
--package netstring,labltk.</p>
-  </sect1>
-
-  <sect1>
-    <title>Camlp4</title>
-
-    <p>If you add a -syntax option, the compiler will be told to parse the
-source file using camlp4:
-
-<code>
-$ ocamlfind ocamlc -package netstring -syntax camlp4o -c myprogram.ml
-</code>
-
-Use -syntax camlp4o for the standard syntax or -syntax camlp4r for the
-revised syntax.</p>
-
-    <p>Additionally, you can mention packages that add new syntax features.
-The package xstrp4 is an example of this:
-
-<code>
-$ ocamlfind ocamlc -package xstrp4,netstring -syntax camlp4o -c myprogram.ml
-</code>
-
-Now you can use the $ notation that is implemented by xstrp4 in the
-source file myprogram.ml.</p>
-
-    <p>Note that you can also invoke ocamldep from ocamlfind:
-
-<code>
-$ ocamlfind ocamldep -package xstrp4 -syntax camlp4o *.ml *.mli &gt;.depend
-</code>
-
-This enables the syntax extensions, too.</p>
-  </sect1>
-
-  <sect1>
-    <title>ocamlbrowser</title>
-    <p>Since findlib-0.7, it is also possible to start ocamlbrowser from
-ocamlfind. For example,
-
-<code>
-$ ocamlfind browser -package xstrp4
-</code>
-
-adds the correct path specification such that the modules contained in the
-package xstrp4 are also displayed. With
-
-<code>
-$ ocamlfind browser -all
-</code>
-
-all package are added to the path spec.
-</p>
-  </sect1>
-
-  <sect1>
-    <title>The Makefile wizard</title>
-    <p>There is a wizard that makes it very easy to write Makefiles. Call the
-wizard by
-<code>
-$ ocamlfind findlib/make_wizard
-</code>
-(the wizard requires that the labltk library is available). A new window
-pops up, and by very few clicks you can describe your own library. Finally,
-a Makefile is written.
-</p>
-  </sect1>
-
-  <sect1>
-    <title>There is no magic!</title>
-
-    <p>Findlib is neither a patch of O'Caml nor uses it internal features of
-the O'Caml programming environment. It is only a convention to install
-software components in filesystem hierarchies, a library interpreting 
-this convention, and some frontend applications making the library useable for
-you.</p>
-
-    <p>One important consequence is that you can only refer to those
-software components that have previously been installed in a way findlib
-understands. This convention is beyond the scope of this QUICKSTART guide,
-see the reference manual for details. You can always check whether findlib
-accepts a component as "findlib package" by the command
-
-<code>
-$ ocamlfind list
-</code>
-
-(this is the same as the #list directive in the toploop). If the package
-occurs in the list, it is found, otherwise not.</p>
-  </sect1>
-</readme>
-

findlib/findlib-1.3.3/doc/README

-******************************************************************************
-README - The findlib library manager
-******************************************************************************
-
-
-==============================================================================
-Introduction
-==============================================================================
-
-The "findlib" software provides a scheme to manage reusable software components 
-in the form of libraries, and includes tools that support this scheme. A 
-library installed as a findlib component is also called a package. The point is 
-that the findlib scheme allows it to store metainformation about the library, 
-especially how it can be used in programs. The packages are kept in the 
-filesystem hierarchy, but the directory structure is defined by findlib, and 
-there is no way to deviate from this standard. The library contains functions 
-to look the directory up that stores a package, to query metainformation about 
-a package, and to retrieve dependency information about multiple packages. 
-There is also a tool that allows the user to enter queries on the command-line. 
-In order to simplify compilation and linkage, there are new frontends of the 
-various OCaml compilers that can directly deal with packages.  
-
-It is important to understand that findlib is not a general-purpose package 
-manager (like rpm for Linux), and does not support the management of arbitrary 
-files, but only O'Caml libraries. However, there are lots of special functions 
-for libraries. findlib is more comparable with Gnome's pkg-config and Perl's 
-MakeMaker, but of course there are language-specific differences.
-
-The metainformation includes:
-
--  The necessary command-line arguments to use a library.
-   
--  Dependencies on other packages.
-   
--  Version strings.
-   
-These data can be conditional. Possible conditions are certain environmental 
-settings, such as whether the bytecode or the native code compiler is used, or 
-whether the application is multi-threaded. It is also possible that a package 
-behaves differently when a certain other package is selected.
-
-There is special support for scripts. It is possible to load libraries into 
-toploops, including all dependent libraries, with only one command.
-
-Findlib has been developed since March 1999, and has matured for more than four 
-years until the release of version 1.0. One of the important questions during 
-this long period of development was which features are necessary and which not. 
-The result is a utility that follows still simple concepts, but is flexible 
-enough to allow even the description of complex libraries and complex 
-interdependencies.  
-
-==============================================================================
-Documentation
-==============================================================================
-
-See the file QUICKSTART for the most important findlib commands.
-
-There is a User's Guide introducing into the concepts of findlib, especially 
-explaining how to create packages.
-
-The Reference Manual describes commands, directory structure, configuration 
-files, and library routines in detail.
-
-==============================================================================
-Installation
-==============================================================================
-
-See the file INSTALL.
-
-==============================================================================
-Download
-==============================================================================
-
-The current version is announced in the  Objective Caml Link Database [1].  
-
-==============================================================================
-Copyright and License Conditions
-==============================================================================
-
-Findlib is copyright 1999-2012 by Gerd Stolpmann. See the file LICENSE  for the 
-MIT/X11 style license conditions.  Contact me at gerd@gerd-stolpmann.de in case 
-of questions.  
-
-==============================================================================
-List of Changes
-==============================================================================
-
--  1.3.3: OCaml-4: using the new #remove_directory directive  if present.
-   Better compatibility with the OCaml version from Homebrew.
-   
--  1.3.2: Handling of empty arguments (Wojciech Meyer).
-   Added entry for camlp4.fulllib.
-   New switch -add for "ocamlfind install" (Hans Ole Rafaelsen).
-   Further fixes for ocaml-4.00.
-   Fixing the recognition of double .cmi interface files.
-   Fixing -dontlink (it is now deeply interpreted).
-   
--  1.3.1: Fixing a bug with ocamlmklib that slipped through in 1.3.0
-   
--  1.3.0: Fixes for ocaml-4.00 (especially topfind).
-   Emitting an error if the configuration file does not exist.
-   Emitting a warning if the selected toolchain does not exist.
-   camlp4 is referenced by "+camlp4" in META.
-   Including the sources for the documentation in the tarball.
-   License change (simplification) for num_top_printers.mli.
-   Fix ocamlmklib wrapper: processing contracted args (like -L/dir) correctly.
-   Many wrappers get a new option -passrest instructing to pass all remaining 
-   options on the command-line unchanged to the invoked tool.
-   Prettified -help output.
-   
--  1.2.8: Adding support for ocamlmklib (B. Meurer's patches)
-   Fix for win32 in the configure script.
-   
--  1.2.7: Fix: if a META file defines several packages, and one of the packages 
-   has a broken dependency, ocamlfind used to report all errors even if the 
-   broken packages were not used. This is now changed - broken subpackages are 
-   ignored when they are not needed, in the same way as broken top-level 
-   packages are ignored when not needed. (Thanks to Sylvain Le Gall for 
-   reporting the problem.)
-   Added -thread and -vmthread switches to "ocamlfind ocamldoc". These actually 
-   only add the right predicates. (Thanks to Vladimir Ivanov for pointing this 
-   problem out.)
-   Package warnings can be emitted by "ocamlfind ocamldoc".
-   
--  1.2.6: adding META for ocamlbuild.
-   Fixes for MinGW/MSYS platform.
-   Improved messages.
-   
--  1.2.5: Fix: Again CR deletion... Turns out some OS do not  understand '\r' 
-   but only '\015' (thanks to Isaiah Weiner).
-   Support for Win64 (untested; thanks to David Allsopp).
-   ocamlfind no longer emits auto-generated -ccopt options. These  tend to 
-   accumulate, and it is possible that for large projects  the maximum command 
-   line length is exceeded. Current versions of  the O'Caml compilers do not 
-   need these extra -ccopt anyway, so  this code is completely dropped.
-   
--  1.2.4: Fix: Bigarray needs unix (Thanks to Markus Mottl).
-   Fix: In the version of camlp4 provided by O'Caml 3.11 various  libraries do 
-   not contain dynlink anymore. Because of this, dynlink  becomes a 
-   prerequisite of camlp4. (Thanks to Martin Jambon).
-   Attempt: Fixing the space issue for paths (Win32). It is unclear  whether it 
-   is solved. (Thanks to Christophe Troestler).
-   
--  1.2.3: Solving the CR deletion differently, to  make OS X happy.
-   
--  1.2.2: Fix: Problem with CR character (Cygwin)  (Thanks to David Allsopp).  
-   Fix: Case-insensitive filesystems (partially solved)  (Thanks to David 
-   Allsopp).  
-   Fix: File name with backslashes at the end (Win32; thanks to Dmitry 
-   Grebeniuk).
-   
--  1.2.1: Fix: Camlp4 rules now activate the stream parser extension
-   
--  1.2: Fix in build scripts: Prepending $(prefix) when installing safe_camlp4 
-   (thanks to Daniel Janus)
-   Non-existing -I directories are ignored (thanks to Nicolas Pouillard)
-   A script to create a MacOS X package (thanks to Pietro Abate)
-   Better support for Windows (with help from Robert Roessler and David 
-   Allsopp)
-   Support for camlp4 on O'Caml 3.10
-   Fix: "ocamlfind install" with "-patch" option writes now correct META file 
-   for the case that subpackages occur
-   Adding environment variable OCAMLFIND_IGNORE_DUPS_IN to reduce the number of 
-   warnings ocamlfind emits
-   
--  1.1.2: Bugfix in the META parser: Backslashes are now correctly parsed. 
-   (Thanks to Martin Jambon for finding this problem.)
-   Fixes for platforms that do not support dynamic loading of DLLs.
-   Fixed extraction of camlp4 parameters from packages.
-   
--  1.1.1: Bugfixes only: Fixed detection of threading model for O'Caml 3.09. 
-   Fixed alternate configuration files.
-   
--  1.1: Automatic detection of standard compiler options.
-   Liberated the checks whether a package is already installed.
-   The .opt compilers are entered into findlib.conf if available.
-   New: "install" has -optional switch for optional files.
-   New: "install" has -patch-version to patch the version into the installed 
-   META file.
-   New: "install" has -patch-rmpkg to remove subpackages from the installed 
-   META file.
-   New: "install" has -patch-archives which removes non-existing files from 
-   "archive" variables. This is experimental.
-   New: subpackages can be disabled by exists_if.
-   New: Support for toolchains.
-   Fix for "remove": -destdir works again.
-   Fix for "call": CTRL-C works when calling interactive commands.
-   Fix for preprocessor packages: Dependencies on normal packages are resolved.
-   
--  1.0.4: Fix: In previous versions, "ocamlmktop" set the "toploop" predicate. 
-   It turned out, however, that the toploops generated in this way did not work 
-   properly. For this reason, "ocamlmktop" does not set "toploop" any more for 
-   link time, but instead a new predicate "create_toploop". When the toploop is 
-   executed, the predicate "toploop" is again added.
-   
--  1.0.3: Fix: The relative position of "-cclib -l"  options on the command 
-   line is preserved. In previous versions, these options were moved to the 
-   beginning of the argument list. This did not work for static link editing; 
-   dynamic link editing was not affected.
-   Fix: The automatic fixup of "threads" dependencies works again. In the 
-   previous version, this was broken.
-   Addition: -format '%(name)' for ocamlfind query.