ocaml/testsuite/external/Makefile

1748 lines
45 KiB
Makefile

#########################################################################
# #
# OCaml #
# #
# Damien Doligez, projet Gallium, INRIA Rocquencourt #
# #
# Copyright 2012 Institut National de Recherche en Informatique et #
# en Automatique. All rights reserved. This file is distributed #
# under the terms of the Q Public License version 1.0. #
# #
#########################################################################
# To use this test set, you need OCaml installed in a directory where
# you have write rights.
# Warning: use of this Makefile will install lots of software
# in the same place where OCaml is installed.
# It is recommended that you install OCaml in some isolated
# directory D (for example /usr/local/ocaml/test), add D/bin
# at the front of your PATH, then use this Makefile to test
# your OCaml installation.
WGET = wget --no-check-certificate --progress=dot:mega
PREFIX = "`ocamlc -where | sed -e 's|/[^/]*/[^/]*$$||'`"
VERSION = `ocamlc -vnum`
.PHONY: default
default:
@printf "\n\n########## Starting make at " >>log-${VERSION}
@date >>log-${VERSION}
${MAKE} platform >>log-${VERSION} 2>&1
@printf '\n'
mv log-${VERSION} log_${VERSION}_`date -u '+%Y-%m-%d:%H:%M:%S'`
# Platform-dependent subsets: add your own here.
.PHONY: all-cygwin
all-cygwin: findlib ounit res pcre react ocamltext ocamlssl camlzip cryptokit \
sqlite ocgi xmllight configfile xmlm omake \
camomile zen vsyml extlib fileutils ocamlify ocamlmod \
calendar dbm ocamlscript coq compcert
all-macos: findlib res pcre react ocamltext \
ocamlssl camlzip cryptokit sqlite menhir hevea \
xmllight xmlm omake zen \
altergo boomerang vsyml extlib \
ocamlify calendar \
dbm geneweb framac coq compcert
platform:
case `uname -s` in \
CYGWIN*) ${MAKE} all-cygwin;; \
Darwin) ${MAKE} all-macos;; \
*) ${MAKE} all;; \
esac
# https://github.com/ocaml/camlp4/
CAMLP4=camlp4-trunk
${CAMLP4}.zip:
${WGET} https://github.com/ocaml/camlp4/archive/trunk.zip
mv trunk.zip ${CAMLP4}.zip
xxcamlp4: ${CAMLP4}.zip
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${CAMLP4}
unzip -q ${CAMLP4}.zip
./Patcher.sh ${CAMLP4}
( cd ${CAMLP4} && \
export PATH=${PREFIX}/bin:$$PATH && \
sh ./configure --prefix ${PREFIX} && \
${MAKE} all && \
ocamlfind remove camlp4 && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${CAMLP4} camlp4
distclean::
rm -f ${CAMLP4}.tar.gz
all: camlp4
# http://projects.camlcity.org/projects/findlib.html
FINDLIB=findlib-1.4.1
${FINDLIB}.tar.gz:
${WGET} http://download.camlcity.org/download/$@
findlib: ${FINDLIB}.tar.gz
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${FINDLIB}
tar zxf ${FINDLIB}.tar.gz
./Patcher.sh ${FINDLIB}
( cd ${FINDLIB} && \
export PATH=${PREFIX}/bin:$$PATH && \
./configure && \
${MAKE} all && \
${MAKE} opt && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${FINDLIB} findlib
distclean::
rm -f ${FINDLIB}.tar.gz
all: findlib
# http://lablgtk.forge.ocamlcore.org/
LABLGTK=lablgtk-2.18.0
${LABLGTK}.tar.gz:
${WGET} https://forge.ocamlcore.org/frs/download.php/1261/$@
xxlablgtk: ${LABLGTK}.tar.gz findlib camlp4 # TODO: add lablgl
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${LABLGTK}
tar zxf ${LABLGTK}.tar.gz
./Patcher.sh ${LABLGTK}
( cd ${LABLGTK} && \
export PATH=${PREFIX}/bin:$$PATH && \
./configure -prefix ${PREFIX} && \
${MAKE} world && \
ocamlfind remove lablgtk2 && \
${MAKE} install && \
rm -f ${PREFIX}/lib/ocaml/lablgtk2 && \
ln -f -s ${PREFIX}/lib/ocaml/site-lib/lablgtk2 \
${PREFIX}/lib/ocaml/lablgtk2 )
echo ${VERSION} >$@
clean::
rm -rf ${LABLGTK} lablgtk
distclean::
rm -f ${LABLGTK}.tar.gz
all: lablgtk
# http://ocamlgraph.lri.fr/
OCAMLGRAPH=ocamlgraph-1.8.2
${OCAMLGRAPH}.tar.gz:
${WGET} http://ocamlgraph.lri.fr/download/$@
ocamlgraph: ${OCAMLGRAPH}.tar.gz findlib
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${OCAMLGRAPH}
tar zxf ${OCAMLGRAPH}.tar.gz
./Patcher.sh ${OCAMLGRAPH}
( cd ${OCAMLGRAPH} && \
export PATH=${PREFIX}/bin:$$PATH && \
./configure -prefix ${PREFIX} && \
${MAKE} && \
rm -rf ${PREFIX}/lib/ocaml/ocamlgraph && \
ocamlfind remove ocamlgraph && \
${MAKE} install install-findlib && \
ln -s ${PREFIX}/lib/ocaml/site-lib/ocamlgraph \
${PREFIX}/lib/ocaml/ocamlgraph )
echo ${VERSION} >$@
clean::
rm -rf ${OCAMLGRAPH} ocamlgraph
distclean::
rm -f ${OCAMLGRAPH}.tar.gz
all: ocamlgraph
# http://ounit.forge.ocamlcore.org/
OUNIT=ounit-1.1.2
${OUNIT}.tar.gz:
${WGET} http://forge.ocamlcore.org/frs/download.php/886/$@
xxounit: ${OUNIT}.tar.gz findlib camlp4
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${OUNIT}
tar zxf ${OUNIT}.tar.gz
./Patcher.sh ${OUNIT}
( cd ${OUNIT} && \
export PATH=${PREFIX}/bin:$$PATH && \
${MAKE} && \
ocamlfind remove oUnit && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${OUNIT} ounit
distclean::
rm -f ${OUNIT}.tar.gz
all: ounit
# https://bitbucket.org/mmottl/res
RES=res-3.2.0
${RES}.tar.gz:
${WGET} https://bitbucket.org/mmottl/res/downloads/$@
res: ${RES}.tar.gz findlib
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${RES}
tar zxf ${RES}.tar.gz
./Patcher.sh ${RES}
( cd ${RES} && \
export PATH=${PREFIX}/bin:$$PATH && \
${MAKE} && \
ocamlfind remove res && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${RES} res
distclean::
rm -f ${RES}.tar.gz
all: res
# https://bitbucket.org/mmottl/pcre-ocaml
PCRE=pcre-ocaml-6.2.5
${PCRE}.tar.gz:
${WGET} https://bitbucket.org/mmottl/pcre-ocaml/downloads/$@
pcre: ${PCRE}.tar.gz findlib
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${PCRE}
tar zxf ${PCRE}.tar.gz
./Patcher.sh ${PCRE}
( cd ${PCRE} && \
export PATH=${PREFIX}/bin:$$PATH && \
${MAKE} && \
ocamlfind remove pcre && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${PCRE} pcre
distclean::
rm -f ${PCRE}.tar.gz
all: pcre
###########################################################################
## Jane Street Core
# https://ocaml.janestreet.com/ocaml-core/109.28.00/individual/
TYPECONV=type_conv-109.28.00
${TYPECONV}.tar.gz:
${WGET} https://ocaml.janestreet.com/ocaml-core/109.28.00/individual/$@
xxtypeconv: ${TYPECONV}.tar.gz findlib camlp4
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${TYPECONV}
tar zxf ${TYPECONV}.tar.gz
./Patcher.sh ${TYPECONV}
( cd ${TYPECONV} && \
export PATH=${PREFIX}/bin:$$PATH && \
ocaml setup.ml -configure && \
ocaml setup.ml -build && \
ocamlfind remove type_conv && \
ocaml setup.ml -install )
echo ${VERSION} >$@
clean::
rm -rf ${TYPECONV} typeconv
distclean::
rm -f ${TYPECONV}.tar.gz
all: typeconv
# https://ocaml.janestreet.com/ocaml-core/109.15.00/individual/
VARIANTSLIB=variantslib-109.15.00
${VARIANTSLIB}.tar.gz:
${WGET} https://ocaml.janestreet.com/ocaml-core/109.15.00/individual/$@
xxvariantslib: ${VARIANTSLIB}.tar.gz findlib typeconv
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${VARIANTSLIB}
tar zxf ${VARIANTSLIB}.tar.gz
./Patcher.sh ${VARIANTSLIB}
( cd ${VARIANTSLIB} && \
export PATH=${PREFIX}/bin:$$PATH && \
ocaml setup.ml -configure && \
ocaml setup.ml -build && \
ocamlfind remove variantslib && \
ocaml setup.ml -install )
echo ${VERSION} >$@
clean::
rm -rf ${VARIANTSLIB} variantslib
distclean::
rm -f ${VARIANTSLIB}.tar.gz
all: variantslib
# https://ocaml.janestreet.com/ocaml-core/109.28.00/individual/
PIPEBANG=pipebang-109.28.00
${PIPEBANG}.tar.gz:
${WGET} https://ocaml.janestreet.com/ocaml-core/109.28.00/individual/$@
pipebang: ${PIPEBANG}.tar.gz findlib typeconv
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${PIPEBANG}
tar zxf ${PIPEBANG}.tar.gz
./Patcher.sh ${PIPEBANG}
( cd ${PIPEBANG} && \
export PATH=${PREFIX}/bin:$$PATH && \
ocaml setup.ml -configure && \
ocaml setup.ml -build && \
ocamlfind remove pa_pipebang && \
ocaml setup.ml -install )
echo ${VERSION} >$@
clean::
rm -rf ${PIPEBANG} pipebang
distclean::
rm -f ${PIPEBANG}.tar.gz
all: pipebang
# https://ocaml.janestreet.com/ocaml-core/109.36.00/individual/
PAOUNIT=pa_ounit-109.36.00
${PAOUNIT}.tar.gz:
${WGET} https://ocaml.janestreet.com/ocaml-core/109.36.00/individual/$@
paounit: ${PAOUNIT}.tar.gz findlib typeconv
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${PAOUNIT}
tar zxf ${PAOUNIT}.tar.gz
./Patcher.sh ${PAOUNIT}
( cd ${PAOUNIT} && \
export PATH=${PREFIX}/bin:$$PATH && \
ocaml setup.ml -configure && \
ocaml setup.ml -build && \
ocamlfind remove pa_ounit && \
ocaml setup.ml -install )
echo ${VERSION} >$@
clean::
rm -rf ${PAOUNIT} paounit
distclean::
rm -f ${PAOUNIT}.tar.gz
all: paounit
# https://ocaml.janestreet.com/ocaml-core/109.15.00/individual/
COMPARELIB=comparelib-109.15.00
${COMPARELIB}.tar.gz:
${WGET} https://ocaml.janestreet.com/ocaml-core/109.15.00/individual/$@
comparelib: ${COMPARELIB}.tar.gz findlib typeconv
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${COMPARELIB}
tar zxf ${COMPARELIB}.tar.gz
./Patcher.sh ${COMPARELIB}
( cd ${COMPARELIB} && \
export PATH=${PREFIX}/bin:$$PATH && \
ocaml setup.ml -configure && \
ocaml setup.ml -build && \
ocamlfind remove comparelib && \
ocaml setup.ml -install )
echo ${VERSION} >$@
clean::
rm -rf ${COMPARELIB} comparelib
distclean::
rm -f ${COMPARELIB}.tar.gz
all: comparelib
# https://ocaml.janestreet.com/ocaml-core/109.30.00/individual/
BINPROT=bin_prot-109.30.00
${BINPROT}.tar.gz:
${WGET} https://ocaml.janestreet.com/ocaml-core/109.30.00/individual/$@
binprot: ${BINPROT}.tar.gz findlib typeconv ounit
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${BINPROT}
tar zxf ${BINPROT}.tar.gz
./Patcher.sh ${BINPROT}
( cd ${BINPROT} && \
export PATH=${PREFIX}/bin:$$PATH && \
ocaml setup.ml -configure && \
ocaml setup.ml -build && \
ocamlfind remove bin_prot && \
ocaml setup.ml -install )
echo ${VERSION} >$@
clean::
rm -rf ${BINPROT} binprot
distclean::
rm -f ${BINPROT}.tar.gz
all: binprot
# https://ocaml.janestreet.com/ocaml-core/109.15.00/individual/
FIELDSLIB=fieldslib-109.15.00
${FIELDSLIB}.tar.gz:
${WGET} https://ocaml.janestreet.com/ocaml-core/109.15.00/individual/$@
fieldslib: ${FIELDSLIB}.tar.gz findlib typeconv
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${FIELDSLIB}
tar zxf ${FIELDSLIB}.tar.gz
./Patcher.sh ${FIELDSLIB}
( cd ${FIELDSLIB} && \
export PATH=${PREFIX}/bin:$$PATH && \
ocaml setup.ml -configure && \
ocaml setup.ml -build && \
ocamlfind remove fieldslib && \
ocaml setup.ml -install )
echo ${VERSION} >$@
clean::
rm -rf ${FIELDSLIB} fieldslib
distclean::
rm -f ${FIELDSLIB}.tar.gz
all: fieldslib
# https://ocaml.janestreet.com/ocaml-core/109.15.00/individual/
SEXPLIB=sexplib-109.15.00
${SEXPLIB}.tar.gz:
${WGET} https://ocaml.janestreet.com/ocaml-core/109.15.00/individual/$@
sexplib: ${SEXPLIB}.tar.gz findlib typeconv
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${SEXPLIB}
tar zxf ${SEXPLIB}.tar.gz
./Patcher.sh ${SEXPLIB}
( cd ${SEXPLIB} && \
export PATH=${PREFIX}/bin:$$PATH && \
ocaml setup.ml -configure && \
ocaml setup.ml -build && \
ocamlfind remove sexplib && \
ocaml setup.ml -install )
echo ${VERSION} >$@
clean::
rm -rf ${SEXPLIB} sexplib
distclean::
rm -f ${SEXPLIB}.tar.gz
all: sexplib
# https://ocaml.janestreet.com/ocaml-core/109.35.00/individual/
HERELIB=herelib-109.35.00
${HERELIB}.tar.gz:
${WGET} https://ocaml.janestreet.com/ocaml-core/109.35.00/individual/$@
herelib: ${HERELIB}.tar.gz
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${HERELIB}
tar zxf ${HERELIB}.tar.gz
./Patcher.sh ${HERELIB}
( cd ${HERELIB} && \
export PATH=${PREFIX}/bin:$$PATH && \
sh ./configure --prefix ${PREFIX} && \
${MAKE} && \
ocamlfind remove herelib && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${HERELIB} herelib
distclean::
rm -f ${HERELIB}.tar.gz
all: herelib
# https://ocaml.janestreet.com/ocaml-core/109.37.00/individual/
COREKERNEL=core_kernel-109.37.00
${COREKERNEL}.tar.gz:
${WGET} https://ocaml.janestreet.com/ocaml-core/109.37.00/individual/$@
corekernel: ${COREKERNEL}.tar.gz findlib variantslib sexplib fieldslib \
binprot comparelib paounit pipebang res ounit herelib
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${COREKERNEL}
tar zxf ${COREKERNEL}.tar.gz
./Patcher.sh ${COREKERNEL}
( cd ${COREKERNEL} && \
export PATH=${PREFIX}/bin:$$PATH && \
ocaml setup.ml -configure && \
ocaml setup.ml -build && \
ocamlfind remove core_kernel && \
ocaml setup.ml -install )
echo ${VERSION} >$@
clean::
rm -rf ${COREKERNEL} corekernel
distclean::
rm -f ${COREKERNEL}.tar.gz
all: core
# https://ocaml.janestreet.com/ocaml-core/109.37.00/individual/
CORE=core-109.37.00
${CORE}.tar.gz:
${WGET} https://ocaml.janestreet.com/ocaml-core/109.37.00/individual/$@
xxcore: ${CORE}.tar.gz findlib variantslib sexplib fieldslib binprot comparelib \
paounit pipebang res ounit corekernel
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${CORE}
tar zxf ${CORE}.tar.gz
./Patcher.sh ${CORE}
( cd ${CORE} && \
export PATH=${PREFIX}/bin:$$PATH && \
ocaml setup.ml -configure && \
ocaml setup.ml -build && \
ocamlfind remove core && \
ocaml setup.ml -install )
echo ${VERSION} >$@
clean::
rm -rf ${CORE} core
distclean::
rm -f ${CORE}.tar.gz
all: core
# https://ocaml.janestreet.com/ocaml-core/109.27.00/individual/
CUSTOMPRINTF=custom_printf-109.27.00
${CUSTOMPRINTF}.tar.gz:
${WGET} https://ocaml.janestreet.com/ocaml-core/109.27.00/individual/$@
customprintf: ${CUSTOMPRINTF}.tar.gz
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${CUSTOMPRINTF}
tar zxf ${CUSTOMPRINTF}.tar.gz
./Patcher.sh ${CUSTOMPRINTF}
( cd ${CUSTOMPRINTF} && \
export PATH=${PREFIX}/bin:$$PATH && \
sh ./configure --prefix ${PREFIX} && \
${MAKE} && \
ocamlfind remove customprintf && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${CUSTOMPRINTF} customprintf
distclean::
rm -f ${CUSTOMPRINTF}.tar.gz
all: customprintf
# https://ocaml.janestreet.com/ocaml-core/109.36.00/individual/
TEXTUTILS=textutils-109.36.00
${TEXTUTILS}.tar.gz:
${WGET} https://ocaml.janestreet.com/ocaml-core/109.36.00/individual/$@
textutils: ${TEXTUTILS}.tar.gz
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${TEXTUTILS}
tar zxf ${TEXTUTILS}.tar.gz
./Patcher.sh ${TEXTUTILS}
( cd ${TEXTUTILS} && \
export PATH=${PREFIX}/bin:$$PATH && \
sh ./configure --prefix ${PREFIX} && \
${MAKE} && \
ocamlfind remove textutils && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${TEXTUTILS} textutils
distclean::
rm -f ${TEXTUTILS}.tar.gz
all: textutils
# https://ocaml.janestreet.com/ocaml-core/109.36.00/individual/
COREEXTENDED=core_extended-109.36.00
${COREEXTENDED}.tar.gz:
${WGET} https://ocaml.janestreet.com/ocaml-core/109.36.00/individual/$@
coreextended: ${COREEXTENDED}.tar.gz findlib sexplib fieldslib binprot paounit \
pipebang core pcre res comparelib ounit
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${COREEXTENDED}
tar zxf ${COREEXTENDED}.tar.gz
./Patcher.sh ${COREEXTENDED}
( cd ${COREEXTENDED} && \
export PATH=${PREFIX}/bin:$$PATH && \
ocaml setup.ml -configure && \
ocaml setup.ml -build && \
ocaml setup.ml -install )
echo ${VERSION} >$@
clean::
rm -rf ${COREEXTENDED} coreextended
distclean::
rm -f ${COREEXTENDED}.tar.gz
all: coreextended
###########################################################################
# http://erratique.ch/software/react
REACT=react-0.9.3
${REACT}.tbz:
${WGET} http://erratique.ch/software/react/releases/$@
react: ${REACT}.tbz findlib
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${REACT}
tar jxf ${REACT}.tbz
./Patcher.sh ${REACT} oasis-common.patch
( cd ${REACT} && \
export PATH=${PREFIX}/bin:$$PATH && \
ocaml setup.ml -configure && \
ocaml setup.ml -build && \
./test.native && \
ocamlfind remove react && \
ocaml setup.ml -install )
echo ${VERSION} >$@
clean::
rm -rf ${REACT} react
distclean::
rm -f ${REACT}.tbz
all: react
# http://forge.ocamlcore.org/projects/ocaml-text/
OCAMLTEXT=ocaml-text-0.5
${OCAMLTEXT}.tar.gz:
${WGET} http://forge.ocamlcore.org/frs/download.php/641/$@
ocamltext: ${OCAMLTEXT}.tar.gz findlib
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${OCAMLTEXT}
tar zxf ${OCAMLTEXT}.tar.gz
./Patcher.sh ${OCAMLTEXT} oasis-common.patch
( cd ${OCAMLTEXT} && \
export PATH=${PREFIX}/bin:$$PATH && \
${MAKE} build && \
${MAKE} test && \
ocamlfind remove text && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${OCAMLTEXT} ocamltext
distclean::
rm -f ${OCAMLTEXT}.tar.gz
all: ocamltext
# https://github.com/savonet/ocaml-ssl
OCAMLSSL=ocaml-ssl-0.4.6
${OCAMLSSL}.tar.gz:
${WGET} https://github.com/savonet/ocaml-ssl/archive/$@
ocamlssl: ${OCAMLSSL}.tar.gz findlib
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${OCAMLSSL}
tar zxf ${OCAMLSSL}.tar.gz && mv ocaml-ssl-${OCAMLSSL} ${OCAMLSSL}
./Patcher.sh ${OCAMLSSL}
( cd ${OCAMLSSL} && \
export PATH=${PREFIX}/bin:$$PATH && \
autoconf configure.ac >configure && \
sh ./configure && \
${MAKE} && \
ocamlfind remove ssl && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${OCAMLSSL} ocamlssl
distclean::
rm -f ${OCAMLSSL}.tar.gz
all: ocamlssl
# http://ocsigen.org/lwt/install
LWT=lwt-2.4.0
${LWT}.tar.gz:
${WGET} http://ocsigen.org/download/$@
xxlwt: ${LWT}.tar.gz findlib react ocamltext ocamlssl camlp4 lablgtk
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${LWT}
tar zxf ${LWT}.tar.gz
./Patcher.sh ${LWT}
( cd ${LWT} && \
export PATH=${PREFIX}/bin:$$PATH && \
export C_INCLUDE_PATH=/usr/include:/opt/local/include && \
export LIBRARY_PATH=/usr/lib:/opt/local/lib && \
./configure --enable-ssl --enable-react && \
${MAKE} && \
ocamlfind remove lwt && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${LWT} lwt
distclean::
rm -f ${LWT}.tar.gz
all: lwt
# http://forge.ocamlcore.org/projects/camlzip/
CAMLZIP=camlzip-1.04
${CAMLZIP}.tar.gz:
${WGET} http://forge.ocamlcore.org/frs/download.php/328/$@
camlzip: ${CAMLZIP}.tar.gz findlib
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${CAMLZIP}
tar zxf ${CAMLZIP}.tar.gz
./Patcher.sh ${CAMLZIP}
( cd ${CAMLZIP} && \
export PATH=${PREFIX}/bin:$$PATH && \
${MAKE} all && \
${MAKE} allopt && \
${MAKE} install && \
${MAKE} installopt && \
ocamlfind remove camlzip && \
ocamlfind install camlzip META )
echo ${VERSION} >$@
clean::
rm -rf ${CAMLZIP} camlzip
distclean::
rm -f ${CAMLZIP}.tar.gz
all: camlzip
# http://forge.ocamlcore.org/projects/cryptokit/
CRYPTOKIT=cryptokit-1.6
${CRYPTOKIT}.tar.gz:
${WGET} http://forge.ocamlcore.org/frs/download.php/891/$@
cryptokit: ${CRYPTOKIT}.tar.gz findlib
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${CRYPTOKIT}
tar zxf ${CRYPTOKIT}.tar.gz
./Patcher.sh ${CRYPTOKIT}
( cd ${CRYPTOKIT} && \
export PATH=${PREFIX}/bin:$$PATH && \
${MAKE} build && \
${MAKE} test && \
ocamlfind remove cryptokit && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${CRYPTOKIT} cryptokit
distclean::
rm -f ${CRYPTOKIT}.tar.gz
all: cryptokit
# https://bitbucket.org/mmottl
SQLITE=sqlite3-ocaml-2.0.1
${SQLITE}.tar.gz:
${WGET} https://bitbucket.org/mmottl/sqlite3-ocaml/downloads/$@
sqlite: ${SQLITE}.tar.gz findlib
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${SQLITE}
tar zxf ${SQLITE}.tar.gz
./Patcher.sh ${SQLITE} oasis-common.patch
( cd ${SQLITE} && \
export PATH=${PREFIX}/bin:$$PATH && \
ocaml setup.ml -configure && \
ocaml setup.ml -build && \
ocamlfind remove sqlite3 && \
ocaml setup.ml -install )
echo ${VERSION} >$@
clean::
rm -rf ${SQLITE} sqlite
distclean::
rm -f ${SQLITE}.tar.gz
all: sqlite
# http://gallium.inria.fr/~fpottier/menhir/
MENHIR=menhir-20120123
${MENHIR}.tar.gz:
${WGET} http://gallium.inria.fr/~fpottier/menhir/$@
menhir: ${MENHIR}.tar.gz
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${MENHIR}
tar zxf ${MENHIR}.tar.gz
./Patcher.sh ${MENHIR}
( cd ${MENHIR} && \
export PATH=${PREFIX}/bin:$$PATH && \
${MAKE} PREFIX=${PREFIX} && \
ocamlfind remove MenhirLib && \
${MAKE} PREFIX=${PREFIX} install)
echo ${VERSION} >$@
clean::
rm -rf ${MENHIR} menhir
distclean::
rm -f ${MENHIR}.tar.gz
all: menhir
# disabled: cannot find module Js
# # http://ocsigen.org/obrowser/install
# OBROWSER=obrowser-1.1.1
# ${OBROWSER}.tar.gz:
# ${WGET} http://ocsigen.org/download/$@
# obrowser: ${OBROWSER}.tar.gz lwt menhir ocsigen
# printf "%s " "$@" >/dev/tty
# test -d ${PREFIX}
# rm -rf ${OBROWSER}
# tar zxf ${OBROWSER}.tar.gz
# ./Patcher.sh ${OBROWSER}
# ( cd ${OBROWSER} && \
# export PATH=${PREFIX}/bin:$$PATH && \
# ${MAKE} && \
# ocamlfind remove obrowser && \
# ${MAKE} install )
# echo ${VERSION} >$@
# clean::
# rm -rf ${OBROWSER} obrowser
# distclean::
# rm -f ${OBROWSER}.tar.gz
# all: obrowser
# http://hevea.inria.fr/old/
HEVEA=hevea-2.09
${HEVEA}.tar.gz:
${WGET} http://hevea.inria.fr/old/$@
hevea: ${HEVEA}.tar.gz
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${HEVEA}
tar zxf ${HEVEA}.tar.gz
./Patcher.sh ${HEVEA}
( cd ${HEVEA} && \
export PATH=${PREFIX}/bin:$$PATH && \
${MAKE} PREFIX=${PREFIX} && \
${MAKE} PREFIX=${PREFIX} install )
echo ${VERSION} >$@
clean::
rm -rf ${HEVEA} hevea
distclean::
rm -f ${HEVEA}.tar.gz
all: hevea
# http://www.seas.upenn.edu/~bcpierce/unison/download/releases/
UNISON=unison-2.45.4
${UNISON}.tar.gz:
${WGET} http://www.seas.upenn.edu/~bcpierce/unison/download/releases/unison-2.45.4/$@
unison: ${UNISON}.tar.gz lablgtk
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${UNISON}
tar zxf ${UNISON}.tar.gz
./Patcher.sh ${UNISON}
( cd ${UNISON} && \
export PATH=${PREFIX}/bin:$$PATH && \
${MAKE} UISTYLE=gtk2 && \
touch ${PREFIX}/bin/unison && \
${MAKE} UISTYLE=gtk2 INSTALLDIR=${PREFIX}/bin/ install )
echo ${VERSION} >$@
clean::
rm -rf ${UNISON} unison
distclean::
rm -f ${UNISON}.tar.gz
all: unison
# http://raevnos.pennmush.org/code/ocaml-mysql/
MYSQL=ocaml-mysql-1.0.4
${MYSQL}.tar.gz:
${WGET} http://raevnos.pennmush.org/code/ocaml-mysql/$@
mysql: ${MYSQL}.tar.gz findlib
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${MYSQL}
tar zxf ${MYSQL}.tar.gz
./Patcher.sh ${MYSQL}
( cd ${MYSQL} && \
export PATH=${PREFIX}/bin:$$PATH && \
export CPPFLAGS=-I/opt/local/include/mysql5 && \
export LDFLAGS=-L/opt/local/lib/mysql5/mysql && \
./configure -prefix ${PREFIX} && \
${MAKE} && \
${MAKE} opt && \
ocamlfind remove mysql && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${MYSQL} mysql
distclean::
rm -f ${MYSQL}.tar.gz
all: mysql
# http://gallium.inria.fr/~guesdon/Tools/ocgi/
OCGI=ocgi-0.5
${OCGI}.tar.gz:
${WGET} http://pauillac.inria.fr/~guesdon/Tools/Tars/$@
ocgi: ${OCGI}.tar.gz camlp4
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${OCGI}
tar zxf ${OCGI}.tar.gz
./Patcher.sh ${OCGI}
( cd ${OCGI} && \
export PATH=${PREFIX}/bin:$$PATH && \
./configure && \
${MAKE} && \
${MAKE} opt && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${OCGI} ocgi
distclean::
rm -f ${OCGI}.tar.gz
all: ocgi
# http://tech.motion-twin.com/xmllight
XMLLIGHT=xml-light.2.3
${XMLLIGHT}.tar.gz:
${WGET} https://github.com/bguil/ocamllibs/releases/download/xml-light.2.3/$@
xmllight: ${XMLLIGHT}.tar.gz
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf xml-light ${XMLLIGHT}
tar zxf ${XMLLIGHT}.tar.gz
./Patcher.sh ${XMLLIGHT}
( cd ${XMLLIGHT} && \
export PATH=${PREFIX}/bin:$$PATH && \
${MAKE} xml_parser.ml && \
${MAKE} all opt && \
${MAKE} install_ocamlfind )
echo ${VERSION} >$@
clean::
rm -rf ${XMLLIGHT} xml-light xmllight
distclean::
rm -f ${XMLLIGHT}.zip
all: xmllight
# http://config-file.forge.ocamlcore.org/
CONFIGFILE=config-file-1.1
${CONFIGFILE}.tar.gz:
${WGET} https://forge.ocamlcore.org/frs/download.php/845/$@
configfile: ${CONFIGFILE}.tar.gz camlp4
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${CONFIGFILE}
tar zxf ${CONFIGFILE}.tar.gz
./Patcher.sh ${CONFIGFILE}
( cd ${CONFIGFILE} && \
export PATH=${PREFIX}/bin:$$PATH && \
sh ./configure --prefix=${PREFIX} && \
${MAKE} all && \
ocamlfind remove config-file && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${CONFIGFILE} configfile
distclean::
rm -f ${CONFIGFILE}.tar.gz
all: configfile
# http://erratique.ch/software/xmlm
XMLM=xmlm-1.1.0
${XMLM}.tbz:
${WGET} http://erratique.ch/software/xmlm/releases/$@
xmlm: ${XMLM}.tbz findlib
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${XMLM}
tar jxf ${XMLM}.tbz
./Patcher.sh ${XMLM} oasis-common.patch
( cd ${XMLM} && \
export PATH=${PREFIX}/bin:$$PATH && \
ocaml setup.ml -configure --prefix ${PREFIX} && \
ocaml setup.ml -build && \
ocamlfind remove xmlm && \
ocaml setup.ml -install )
echo ${VERSION} >$@
clean::
rm -rf ${XMLM} xmlm
distclean::
rm -f ${XMLM}.tbz
all: xmlm
# http://forge.ocamlcore.org/projects/gtk-extras/
LABLGTKEXTRAS=lablgtkextras-1.3
${LABLGTKEXTRAS}.tar.gz:
${WGET} http://forge.ocamlcore.org/frs/download.php/1072/$@
lablgtkextras: ${LABLGTKEXTRAS}.tar.gz lablgtk configfile xmlm
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${LABLGTKEXTRAS}
tar zxf ${LABLGTKEXTRAS}.tar.gz
./Patcher.sh ${LABLGTKEXTRAS}
( cd ${LABLGTKEXTRAS} && \
export PATH=${PREFIX}/bin:$$PATH && \
sh ./configure --prefix ${PREFIX} && \
${MAKE} all && \
ocamlfind remove lablgtk2-extras && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${LABLGTKEXTRAS} lablgtkextras
distclean::
rm -f ${LABLGTKEXTRAS}.tar.gz
all: lablgtkextras
# https://bitbucket.org/skskeyserver/sks-keyserver/downloads
SKS=sks-1.1.3
${SKS}.tgz:
${WGET} https://bitbucket.org/skskeyserver/sks-keyserver/downloads/$@
sks: ${SKS}.tgz camlp4
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${SKS}
tar zxf ${SKS}.tgz
./Patcher.sh ${SKS}
( cd ${SKS} && \
export PATH=${PREFIX}/bin:$$PATH && \
${MAKE} dep PREFIX=${PREFIX} && \
${MAKE} all PREFIX=${PREFIX} && \
${MAKE} all.bc PREFIX=${PREFIX} && \
${MAKE} install PREFIX=${PREFIX} )
echo ${VERSION} >$@
clean::
rm -rf ${SKS} sks
distclean::
rm -f ${SKS}.tgz
all: sks
# http://omake.metaprl.org/download.html
OMAKE=omake-0.9.8.6
${OMAKE}-0.rc1.tar.gz:
${WGET} http://omake.metaprl.org/downloads/$@
omake: ${OMAKE}-0.rc1.tar.gz
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${OMAKE}
tar zxf ${OMAKE}-0.rc1.tar.gz
./Patcher.sh ${OMAKE}
( cd ${OMAKE} && \
export PATH=${PREFIX}/bin:$$PATH && \
export PREFIX=${PREFIX} && \
${MAKE} all && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${OMAKE} omake
distclean::
rm -f ${OMAKE}-0.rc1.tar.gz
all: omake
# http://forge.ocamlcore.org/projects/zarith
ZARITH=zarith-1.2.1
${ZARITH}.tar.gz:
${WGET} http://forge.ocamlcore.org/frs/download.php/1199/$@
zarith: ${ZARITH}.tar.gz
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${ZARITH}
tar zxf ${ZARITH}.tar.gz
./Patcher.sh ${ZARITH}
( cd ${ZARITH} && \
export PATH=${PREFIX}/bin:$$PATH && \
sh ./configure && \
${MAKE} && \
ocamlfind remove zarith && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${ZARITH} zarith
distclean::
rm -f ${ZARITH}.tar.gz
all: zarith
# http://alt-ergo.ocamlpro.com
ALTERGO=alt-ergo-0.95.2
${ALTERGO}.tar.gz:
${WGET} http://alt-ergo.ocamlpro.com/download_manager.php?target=$@ -O $@
altergo: ${ALTERGO}.tar.gz ocamlgraph zarith
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${ALTERGO}
tar zxf ${ALTERGO}.tar.gz
./Patcher.sh ${ALTERGO}
( cd ${ALTERGO} && \
export PATH=${PREFIX}/bin:$$PATH && \
./configure -prefix ${PREFIX} && \
${MAKE} && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${ALTERGO} altergo
distclean::
rm -f ${ALTERGO}.tar.gz
all: altergo
# http://www.seas.upenn.edu/~harmony/
BOOMERANG=boomerang-0.2
${BOOMERANG}-source.tar.gz:
${WGET} http://www.seas.upenn.edu/~harmony/download/$@
boomerang: ${BOOMERANG}-source.tar.gz omake
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${BOOMERANG}
tar zxf ${BOOMERANG}-source.tar.gz && mv boomerang-20090902 ${BOOMERANG}
./Patcher.sh ${BOOMERANG}
( cd ${BOOMERANG} && \
export PATH=${PREFIX}/bin:$$PATH && \
omake )
echo ${VERSION} >$@
clean::
rm -rf ${BOOMERANG} boomerang
distclean::
rm -f ${BOOMERANG}-source.tar.gz
all: boomerang
# https://github.com/yoriyuki/Camomile/wiki
CAMOMILE=camomile-0.8.4
${CAMOMILE}.tar.bz2:
${WGET} https://github.com/downloads/yoriyuki/Camomile/$@
camomile: ${CAMOMILE}.tar.bz2 camlp4
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${CAMOMILE}
tar xf ${CAMOMILE}.tar.bz2
./Patcher.sh ${CAMOMILE}
( cd ${CAMOMILE} && \
export PATH=${PREFIX}/bin:$$PATH && \
./configure -prefix ${PREFIX} && \
${MAKE} && \
ocamlfind remove camomile && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${CAMOMILE} camomile
distclean::
rm -f ${CAMOMILE}.tar.bz2
all: camomile
# http://sanskrit.inria.fr/ZEN/
ZEN=zen_2.3.2
${ZEN}.tar.gz:
${WGET} http://sanskrit.inria.fr/ZEN/$@
zen: ${ZEN}.tar.gz camlp4
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${ZEN}
tar zxf ${ZEN}.tar.gz && mv ZEN_* ${ZEN}
./Patcher.sh ${ZEN}
( cd ${ZEN} && \
export PATH=${PREFIX}/bin:$$PATH && \
${MAKE} depend && \
${MAKE} all && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${ZEN} zen
distclean::
rm -f ${ZEN}.tar.gz
all: zen
# http://users-tima.imag.fr/vds/ouchet/index_fichiers/vsyml.html
VSYML=vsyml-2010-04-06
${VSYML}.tar.gz:
${WGET} http://users-tima.imag.fr/vds/ouchet/vsyml/$@
vsyml: ${VSYML}.tar.gz
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${VSYML}
tar zxf ${VSYML}.tar.gz
./Patcher.sh ${VSYML}
( cd ${VSYML} && \
export PATH=${PREFIX}/bin:$$PATH && \
${MAKE} )
echo ${VERSION} >$@
clean::
rm -rf ${VSYML} vsyml
distclean::
rm -f ${VSYML}.tar.gz
all: vsyml
# http://projects.camlcity.org/projects/ocamlnet.html
OCAMLNET=ocamlnet-3.5.1
${OCAMLNET}.tar.gz:
${WGET} http://download.camlcity.org/download/$@
ocamlnet: ${OCAMLNET}.tar.gz findlib pcre camlp4 ocamlssl camlzip cryptokit
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${OCAMLNET}
tar zxf ${OCAMLNET}.tar.gz
./Patcher.sh ${OCAMLNET}
( cd ${OCAMLNET} && \
export PATH=${PREFIX}/bin:$$PATH && \
./configure && \
${MAKE} all && \
${MAKE} opt && \
ocamlfind remove netsys && \
ocamlfind remove netshm && \
ocamlfind remove netstring && \
ocamlfind remove equeue && \
ocamlfind remove shell && \
ocamlfind remove rpc-generator && \
ocamlfind remove rpc-auth-local && \
ocamlfind remove rpc && \
ocamlfind remove pop && \
ocamlfind remove smtp && \
ocamlfind remove netclient && \
ocamlfind remove netcgi2 && \
ocamlfind remove netplex && \
ocamlfind remove netcgi2-plex && \
ocamlfind remove netcamlbox && \
ocamlfind remove netmulticore && \
ocamlfind remove netgssapi && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${OCAMLNET} ocamlnet
distclean::
rm -f ${OCAMLNET}.tar.gz
all: ocamlnet
# http://zoggy.github.io/ocamlrss/
RSS=ocamlrss-2.2.2
${RSS}.tar.gz:
${WGET} http://zoggy.github.io/ocamlrss/$@
rss: ${RSS}.tar.gz xmlm ocamlnet
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${RSS}
tar zxf ${RSS}.tar.gz
./Patcher.sh ${RSS}
( cd ${RSS} && \
export PATH=${PREFIX}/bin:$$PATH && \
${MAKE} all && \
ocamlfind remove ocaml-rss && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${RSS} rss
distclean::
rm -f ${RSS}.tar.gz
all: rss
# http://code.google.com/p/ocaml-extlib/
EXTLIB=extlib-1.5.2
${EXTLIB}.tar.gz:
${WGET} http://ocaml-extlib.googlecode.com/files/$@
extlib: ${EXTLIB}.tar.gz
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${EXTLIB}
tar zxf ${EXTLIB}.tar.gz
./Patcher.sh ${EXTLIB}
( cd ${EXTLIB} && \
export PATH=${PREFIX}/bin:$$PATH && \
ocamlfind remove extlib && \
ocaml install.ml -b -n -doc )
echo ${VERSION} >$@
clean::
rm -rf ${EXTLIB} extlib
distclean::
rm -f ${EXTLIB}.tar.gz
all: extlib
# http://forge.ocamlcore.org/projects/ocaml-fileutils
FILEUTILS=ocaml-fileutils-0.4.4
${FILEUTILS}.tar.gz:
${WGET} http://forge.ocamlcore.org/frs/download.php/892/$@
xxfileutils: ${FILEUTILS}.tar.gz findlib ounit
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${FILEUTILS}
tar xf ${FILEUTILS}.tar.gz
./Patcher.sh ${FILEUTILS}
( cd ${FILEUTILS} && \
export PATH=${PREFIX}/bin:$$PATH && \
sh ./configure --prefix ${PREFIX} && \
${MAKE} && \
ocamlfind remove fileutils && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${FILEUTILS} fileutils
distclean::
rm -f ${FILEUTILS}.tar.gz
all: fileutils
# http://forge.ocamlcore.org/projects/odn
ODN=ocaml-data-notation-0.0.10
${ODN}.tar.gz:
${WGET} http://forge.ocamlcore.org/frs/download.php/1029/$@
odn: ${ODN}.tar.gz findlib core ounit fileutils
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${ODN}
tar zxf ${ODN}.tar.gz
./Patcher.sh ${ODN} oasis-common.patch
( cd ${ODN} && \
export PATH=${PREFIX}/bin:$$PATH && \
ocaml setup.ml -configure && \
ocaml setup.ml -build && \
ocamlfind remove odn && \
ocaml setup.ml -install )
echo ${VERSION} >$@
clean::
rm -rf ${ODN} odn
distclean::
rm -f ${ODN}.tar.gz
all: odn
# http://forge.ocamlcore.org/projects/ocamlify
OCAMLIFY=ocamlify-0.0.1
${OCAMLIFY}.tar.gz:
${WGET} http://forge.ocamlcore.org/frs/download.php/379/$@
ocamlify: ${OCAMLIFY}.tar.gz findlib
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${OCAMLIFY}
tar zxf ${OCAMLIFY}.tar.gz
./Patcher.sh ${OCAMLIFY} oasis-common.patch
( cd ${OCAMLIFY} && \
export PATH=${PREFIX}/bin:$$PATH && \
sh ./configure --prefix ${PREFIX} && \
ocaml setup.ml -build && \
ocaml setup.ml -install )
echo ${VERSION} >$@
clean::
rm -rf ${OCAMLIFY} ocamlify
distclean::
rm -f ${OCAMLIFY}.tar.gz
all: ocamlify
# http://forge.ocamlcore.org/projects/ocaml-expect
EXPECT=ocaml-expect-0.0.3
${EXPECT}.tar.gz:
${WGET} http://forge.ocamlcore.org/frs/download.php/894/$@
expect: ${EXPECT}.tar.gz findlib extlib pcre ounit
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${EXPECT}
tar zxf ${EXPECT}.tar.gz
./Patcher.sh ${EXPECT} oasis-common.patch
( cd ${EXPECT} && \
export PATH=${PREFIX}/bin:$$PATH && \
ocaml setup.ml -configure && \
ocaml setup.ml -build && \
ocamlfind remove expect && \
ocaml setup.ml -install )
echo ${VERSION} >$@
clean::
rm -rf ${EXPECT} expect
distclean::
rm -f ${EXPECT}.tar.gz
all: expect
# http://forge.ocamlcore.org/projects/ocamlmod/
OCAMLMOD=ocamlmod-0.0.3
${OCAMLMOD}.tar.gz:
${WGET} http://forge.ocamlcore.org/frs/download.php/856/$@
ocamlmod: ${OCAMLMOD}.tar.gz findlib fileutils pcre
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${OCAMLMOD}
tar zxf ${OCAMLMOD}.tar.gz
./Patcher.sh ${OCAMLMOD}
( cd ${OCAMLMOD} && \
export PATH=${PREFIX}/bin:$$PATH && \
sh ./configure --prefix ${PREFIX} && \
${MAKE} && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${OCAMLMOD} ocamlmod
distclean::
rm -f ${OCAMLMOD}.tar.gz
all: ocamlmod
# http://forge.ocamlcore.org/projects/oasis
OASIS=oasis-0.3.0
${OASIS}.tar.gz:
${WGET} http://forge.ocamlcore.org/frs/download.php/918/$@
oasis: ${OASIS}.tar.gz findlib fileutils pcre extlib odn ocamlgraph ocamlify \
ounit expect ocamlmod
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${OASIS}
tar zxf ${OASIS}.tar.gz
./Patcher.sh ${OASIS} oasis-common.patch
( cd ${OASIS} && \
export PATH=${PREFIX}/bin:$$PATH && \
sh ./configure --prefix ${PREFIX} && \
ocaml setup.ml -build && \
ocamlfind remove oasis && \
ocamlfind remove userconf && \
ocamlfind remove plugin-loader && \
ocaml setup.ml -install )
echo ${VERSION} >$@
clean::
rm -rf ${OASIS} oasis
distclean::
rm -f ${OASIS}.tar.gz
all: oasis
# http://calendar.forge.ocamlcore.org/
CALENDAR=calendar-2.03.2
${CALENDAR}.tar.gz:
${WGET} https://forge.ocamlcore.org/frs/download.php/915/$@
calendar: ${CALENDAR}.tar.gz
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${CALENDAR}
tar zxf ${CALENDAR}.tar.gz
./Patcher.sh ${CALENDAR}
( cd ${CALENDAR} && \
export PATH=${PREFIX}/bin:$$PATH && \
sh ./configure --prefix ${PREFIX} && \
${MAKE} && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${CALENDAR} calendar
distclean::
rm -f ${CALENDAR}.tar.gz
all: calendar
# http://gallium.inria.fr/camlimages/
CAMLIMAGES=camlimages-4.0.1
${CAMLIMAGES}.tar.gz:
${WGET} https://bitbucket.org/camlspotter/camlimages/get/v4.0.1.tar.gz
mv v4.0.1.tar.gz $@
xxcamlimages: ${CAMLIMAGES}.tar.gz findlib omake lablgtk
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${CAMLIMAGES}
tar xf ${CAMLIMAGES}.tar.gz
mv camlspotter-camlimages-c803efa9d5d3 ${CAMLIMAGES}
mv ${CAMLIMAGES}/doc/old/* ${CAMLIMAGES}/doc/
./Patcher.sh ${CAMLIMAGES}
( cd ${CAMLIMAGES} && \
export PATH=${PREFIX}/bin:$$PATH && \
omake && \
ocamlfind remove camlimages && \
omake install )
echo ${VERSION} >$@
clean::
rm -rf ${CAMLIMAGES} camlimages
distclean::
rm -f ${CAMLIMAGES}.tar.gz
all: camlimages
# http://advi.inria.fr/
ADVI=advi-1.10.2
${ADVI}.tar.gz:
${WGET} http://advi.inria.fr/$@
advi: ${ADVI}.tar.gz findlib camlimages
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${ADVI}
tar zxf ${ADVI}.tar.gz
./Patcher.sh ${ADVI}
( cd ${ADVI} && \
export PATH=${PREFIX}/bin:$$PATH && \
sh ./configure --prefix ${PREFIX} && \
${MAKE} && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${ADVI} advi
distclean::
rm -f ${ADVI}.tar.gz
all: advi
# http://forge.ocamlcore.org/projects/camldbm
DBM=camldbm-1.0
${DBM}.tgz:
${WGET} http://forge.ocamlcore.org/frs/download.php/728/$@
dbm: ${DBM}.tgz
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${DBM}
tar zxf ${DBM}.tgz
./Patcher.sh ${DBM}
( cd ${DBM} && \
export PATH=${PREFIX}/bin:$$PATH && \
sh ./configure --prefix ${PREFIX} && \
${MAKE} && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${DBM} dbm
distclean::
rm -f ${DBM}.tgz
all: dbm
# http://ocsigen.org/
OCSIGEN=ocsigen-bundle-2.2.2
${OCSIGEN}.tar.gz:
${WGET} http://ocsigen.org/download/$@
ocsigen: ${OCSIGEN}.tar.gz findlib lwt pcre ocamlnet ocamlssl \
sqlite camlzip cryptokit calendar dbm
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${OCSIGEN}
tar zxf ${OCSIGEN}.tar.gz
./Patcher.sh ${OCSIGEN}
( cd ${OCSIGEN} && \
export PATH=${PREFIX}/bin:$$PATH && \
export OCSIGEN_USER=${USER}; export OCSIGEN_GROUP=everyone && \
./configure --prefix=${PREFIX} && \
${MAKE} && \
rm -rf ${PREFIX}/lib/ocaml/ocsigenserver/extensions && \
ocamlfind remove -destdir ${PREFIX}/lib/ocaml deriving-ocsigen && \
ocamlfind remove -destdir ${PREFIX}/lib/ocaml js_of_ocaml && \
ocamlfind remove -destdir ${PREFIX}/lib/ocaml ocsigenserver && \
ocamlfind remove -destdir ${PREFIX}/lib/ocaml tyxml && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${OCSIGEN} ocsigen
distclean::
rm -f ${OCSIGEN}.tar.gz
all: ocsigen
# http://mldonkey.sourceforge.net/
MLDONKEY=mldonkey-3.1.2
${MLDONKEY}.tar.bz2:
${WGET} http://freefr.dl.sourceforge.net/project/mldonkey/mldonkey/3.1.2/$@
mldonkey: ${MLDONKEY}.tar.bz2 lablgtk
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${MLDONKEY}
tar zxf ${MLDONKEY}.tar.bz2
./Patcher.sh ${MLDONKEY}
( cd ${MLDONKEY} && \
export PATH=${PREFIX}/bin:$$PATH && \
sh ./configure && \
${MAKE} )
echo ${VERSION} >$@
clean::
rm -rf ${MLDONKEY} mldonkey
distclean::
rm -f ${MLDONKEY}.tar.bz2
all: mldonkey
# http://mjambon.com/releases/ocamlscript
OCAMLSCRIPT=ocamlscript-2.0.3
${OCAMLSCRIPT}.tar.gz:
${WGET} http://mjambon.com/releases/ocamlscript/$@
ocamlscript: ${OCAMLSCRIPT}.tar.gz findlib camlp4
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${OCAMLSCRIPT}
tar xf ${OCAMLSCRIPT}.tar.gz
./Patcher.sh ${OCAMLSCRIPT}
( cd ${OCAMLSCRIPT} && \
export PATH=${PREFIX}/bin:$$PATH && \
${MAKE} && \
ocamlfind remove ocamlscript && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${OCAMLSCRIPT} ocamlscript
distclean::
rm -f ${OCAMLSCRIPT}.tar.bz2
all: ocamlscript
# https://forge.ocamlcore.org/projects/kaputt/
KAPUTT=kaputt-1.2
${KAPUTT}.tar.gz:
${WGET} https://forge.ocamlcore.org/frs/download.php/987/$@
kaputt: ${KAPUTT}.tar.gz findlib
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${KAPUTT}
tar zxf ${KAPUTT}.tar.gz
./Patcher.sh ${KAPUTT}
( cd ${KAPUTT} && \
export PATH=${PREFIX}/bin:$$PATH && \
sh ./configure -ocaml-prefix ${PREFIX} && \
${MAKE} all && \
ocamlfind remove kaputt && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${KAPUTT} kaputt
distclean::
rm -f ${KAPUTT}.tar.gz
all: kaputt
# http://www.coherentpdf.com/ocaml-libraries.html
CAMLPDF=camlpdf-0.5
${CAMLPDF}.tar.bz2:
${WGET} http://www.coherentpdf.com/$@
camlpdf: ${CAMLPDF}.tar.bz2
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${CAMLPDF}
tar zxf ${CAMLPDF}.tar.bz2
./Patcher.sh ${CAMLPDF}
( cd ${CAMLPDF} && \
export PATH=${PREFIX}/bin:$$PATH && \
${MAKE} all && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${CAMLPDF} camlpdf
distclean::
rm -f ${CAMLPDF}.tar.gz
all: camlpdf
# https://forge.ocamlcore.org/projects/csv
CSV=csv-1.3.1
${CSV}.tar.gz:
${WGET} https://forge.ocamlcore.org/frs/download.php/1235/$@
csv: ${CSV}.tar.gz findlib
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${CSV}
tar zxf ${CSV}.tar.gz
./Patcher.sh ${CSV}
( cd ${CSV} && \
export PATH=${PREFIX}/bin:$$PATH && \
ocaml setup.ml -configure --enable-tests --prefix ${PREFIX} && \
ocaml setup.ml -build && \
ocamlfind remove csv && \
ocaml setup.ml -install )
echo ${VERSION} >$@
clean::
rm -rf ${CSV} csv
distclean::
rm -f ${CSV}.tar.gz
all: csv
# http://pauillac.inria.fr/~ddr/camlp5/
CAMLP5=camlp5-git
camlp5:
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${CAMLP5}
git clone git://scm.gforge.inria.fr/camlp5/camlp5.git ${CAMLP5}
./Patcher.sh ${CAMLP5}
( cd ${CAMLP5} && \
export PATH=${PREFIX}/bin:$$PATH && \
./configure --transitional && \
${MAKE} world.opt && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${CAMLP5} camlp5
distclean::
rm -f ${CAMLP5}-git
all: camlp5
disabled: depends on camlp5
# http://opensource.geneanet.org/projects/geneweb
GENEWEB=gw-6.05-src
${GENEWEB}.tgz:
${WGET} http://opensource.geneanet.org/attachments/download/190/$@
geneweb: ${GENEWEB}.tgz camlp5
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${GENEWEB}
tar zxf ${GENEWEB}.tgz
./Patcher.sh ${GENEWEB}
( cd ${GENEWEB} && \
export PATH=${PREFIX}/bin:$$PATH && \
sh ./configure && \
${MAKE} )
echo ${VERSION} >$@
clean::
rm -rf ${GENEWEB} geneweb
distclean::
rm -f ${GENEWEB}.tgz
all: geneweb
# http://coq.inria.fr/download
COQ=coq-8.4pl2
${COQ}.tar.gz:
${WGET} http://coq.inria.fr/distrib/V8.4pl2/files/$@
coq: ${COQ}.tar.gz camlp5
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${COQ}
tar zxf ${COQ}.tar.gz
./Patcher.sh ${COQ}
( cd ${COQ} && \
export PATH=${PREFIX}/bin:$$PATH && \
./configure -prefix ${PREFIX} -with-doc no && \
${MAKE} world && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${COQ} coq
distclean::
rm -f ${COQ}.tar.gz
all: coq
# http://code.google.com/p/bitstring/
BITSTRING=ocaml-bitstring-2.0.3
${BITSTRING}.tar.gz:
${WGET} http://bitstring.googlecode.com/files/$@
bitstring: ${BITSTRING}.tar.gz findlib # cil FIXME ?
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${BITSTRING}
tar zxf ${BITSTRING}.tar.gz
./Patcher.sh ${BITSTRING}
( cd ${BITSTRING} && \
export PATH=${PREFIX}/bin:$$PATH && \
sh ./configure --prefix ${PREFIX} && \
${MAKE} && \
${MAKE} check && \
${MAKE} examples && \
ocamlfind remove bitstring && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${BITSTRING} bitstring
distclean::
rm -f ${BITSTRING}.tar.gz
all: bitstring
# http://compcert.inria.fr
COMPCERT=compcert-1.13
${COMPCERT}.tgz:
${WGET} http://compcert.inria.fr/release/$@
compcert: ${COMPCERT}.tgz coq bitstring
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${COMPCERT}
tar zxf ${COMPCERT}.tgz
./Patcher.sh ${COMPCERT}
( cd ${COMPCERT} && \
export PATH=${PREFIX}/bin:$$PATH && \
sh ./configure -prefix ${PREFIX} ppc-linux && \
${MAKE} all && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${COMPCERT} compcert
distclean::
rm -f ${COMPCERT}.tgz
all: compcert
# http://frama-c.com/
FRAMAC=frama-c-Oxygen-20120901
${FRAMAC}.tar.gz:
${WGET} http://frama-c.com/download/$@
framac: ${FRAMAC}.tar.gz
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${FRAMAC}
tar zxf ${FRAMAC}.tar.gz
./Patcher.sh ${FRAMAC}
( cd ${FRAMAC} && \
export PATH=${PREFIX}/bin:$$PATH && \
./configure --enable-verbosemake --prefix ${PREFIX} && \
${MAKE} && \
${MAKE} oracles && \
${MAKE} install )
echo ${VERSION} >$@
clean::
rm -rf ${FRAMAC} framac
distclean::
rm -f ${FRAMAC}.tar.gz
all: framac
##################################################################
### Template for new entries
##################################################################
FOO=
${FOO}.tar.gz:
${WGET} http://foo.bar.com/.../$@
foo: ${FOO}.tar.gz
printf "%s " "$@" >/dev/tty
test -d ${PREFIX}
rm -rf ${FOO}
tar zxf ${FOO}.tar.gz
./Patcher.sh ${FOO}
( cd ${FOO} && \
export PATH=${PREFIX}/bin:$$PATH && \
sh ./configure --prefix ${PREFIX} && \
${MAKE} && \
ocamlfind remove foo && \
${MAKE} install )
echo ${VERSION} >$@
xxclean::
rm -rf ${FOO} foo
xxdistclean::
rm -f ${FOO}.tar.gz
xxall: foo
##################################################################
.PHONY: clean
.PHONY: distclean
distclean::
${MAKE} clean
.PHONY: all
all:
echo >/dev/tty