--- Begin Message ---
Subject: |
[tentative de PATCH] allow documentation generation without OCaml |
Date: |
Tue, 30 May 2006 17:35:50 +0000 (GMT) |
Un essai pour voir comment ça marche. Je sais bien que les patchs ne devraient
pas être postés ici mais j'ai des difficultés avec la liste demexp-dev.
Désolé pour la pub, mais j'ai eu quelques problèmes ce qui fait que je me rabat
sur l'interface (pas pratique) de Yahoo.
Donc à suivre le message de patch.
>From François <address@hidden> Mon May 29 11:48:10 2006
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Subject: [PATCH] allow documentation generation without OCaml
X-Mercurial-Node: 188036008ba1531f9b1453203f05ac10bcc70b18
Message-Id: <address@hidden>
Date: Mon, 29 May 2006 11:48:09 +0200
From: "François <address@hidden>"
To: address@hidden
# HG changeset patch
# User "François <address@hidden>"
# Node ID 188036008ba1531f9b1453203f05ac10bcc70b18
# Parent 4565ad583541b2c2c3270ac2f9317ff707229991
allow documentation generation without OCaml
diff -r 4565ad583541 -r 188036008ba1 config/Makefile.inc
--- a/config/Makefile.inc Tue May 09 12:17:21 2006 +0000
+++ b/config/Makefile.inc Mon May 29 05:09:49 2006 +0200
@@ -531,7 +531,9 @@ depend .depend-l1: $(ALLMLSRC)
# if you don't want dependencies to be automatically made, even for
# 'make clean' target, you can comment following line
+ifdef MAKEDEPS
-include .depend-l1
+endif
## common rules for noweb
diff -r 4565ad583541 -r 188036008ba1 configure
--- a/configure Tue May 09 12:17:21 2006 +0000
+++ b/configure Mon May 29 05:09:49 2006 +0200
@@ -130,6 +130,11 @@ touch Makefile
echo "# generated by ./configure $configure_options" >> Makefile
+# Generate compilation dependencies ?
+if test \("$server_target" = "yes"\) -o \("$client_target" = "yes"\) -o
\("$web_target" = "yes"\) ; then
+echo "MAKEDEPS=yes" >> Makefile
+fi
+
# Where to install
echo "PREFIX=$prefix" >> Makefile
@@ -171,30 +176,32 @@ esac
# do we have ocaml?
-echo -n "Looking for ocamlc... "
-if sh ./searchpath ocamlc; then
- echo "found";
-else
- echo "not found";
- echo "*** OCaml compiler is required for compilation";
- echo "*** Please install the package or compile following instructions
found";
- echo "*** in README. Source archive available at";
- echo "*** http://caml.inria.fr/ocaml/distrib.html";
- exit 2;
-fi
-
-echo -n "Looking for ocamlopt... "
-if sh ./searchpath ocamlopt; then
- echo "found";
-else
- echo "not found"; exit 2;
-fi
-
-echo -n "Looking for ocamldep... "
-if sh ./searchpath ocamldep; then
- echo "found";
-else
- echo "not found"; exit 2;
+if test \("$server_target" = "yes"\) -o \("$client_target" = "yes"\) -o
\("$web_target" = "yes"\) ; then
+ echo -n "Looking for ocamlc... "
+ if sh ./searchpath ocamlc; then
+ echo "found";
+ else
+ echo "not found";
+ echo "*** OCaml compiler is required for compilation";
+ echo "*** Please install the package or compile following instructions
found";
+ echo "*** in README. Source archive available at";
+ echo "*** http://caml.inria.fr/ocaml/distrib.html";
+ exit 2;
+ fi
+
+ echo -n "Looking for ocamlopt... "
+ if sh ./searchpath ocamlopt; then
+ echo "found";
+ else
+ echo "not found"; exit 2;
+ fi
+
+ echo -n "Looking for ocamldep... "
+ if sh ./searchpath ocamldep; then
+ echo "found";
+ else
+ echo "not found"; exit 2;
+ fi
fi
# do we have noweb?
@@ -225,16 +232,18 @@ fi
# do we have ocamlrpcgen?
-echo -n "Looking for ocamlrpcgen... "
-if sh ./searchpath ocamlrpcgen; then
- echo "found";
-else
- echo "not found";
- echo "*** This tool is required for compilation";
- echo "*** Please install the package or compile following instructions
found";
- echo "*** in README. Source archive available at";
- echo "*** http://www.ocaml-programming.de/programming/rpc.html";
- exit 2;
+if test \("$server_target" = "yes"\) -o \("$client_target" = "yes"\) -o
\("$web_target" = "yes"\) ; then
+ echo -n "Looking for ocamlrpcgen... "
+ if sh ./searchpath ocamlrpcgen; then
+ echo "found";
+ else
+ echo "not found";
+ echo "*** This tool is required for compilation";
+ echo "*** Please install the package or compile following instructions
found";
+ echo "*** in README. Source archive available at";
+ echo "*** http://www.ocaml-programming.de/programming/rpc.html";
+ exit 2;
+ fi
fi
# do we have latex and pdflatex?
@@ -265,16 +274,18 @@ fi
# do we have ocamlfind?
-echo -n "Looking for ocamlfind... "
-if sh ./searchpath ocamlfind; then
- echo "found";
-else
- echo "not found";
- echo "*** This tool is required for compilation.";
- echo "*** Please install the package or compile following instructions
found";
- echo "*** in README. Source archive is available at:";
- echo "*** http://www.ocaml-programming.de/programming/findlib.html";
- exit 2;
+if test \("$server_target" = "yes"\) -o \("$client_target" = "yes"\) -o
\("$web_target" = "yes"\) ; then
+ echo -n "Looking for ocamlfind... "
+ if sh ./searchpath ocamlfind; then
+ echo "found";
+ else
+ echo "not found";
+ echo "*** This tool is required for compilation.";
+ echo "*** Please install the package or compile following instructions
found";
+ echo "*** in README. Source archive is available at:";
+ echo "*** http://www.ocaml-programming.de/programming/findlib.html";
+ exit 2;
+ fi
fi
# do we have wd-xmlcompile?
@@ -308,137 +319,142 @@ else
exit 2;
fi
-# find needed external lib using ocamlfind
-
-external_include=''
-external_package=''
-
-echo -n "Looking for rpc and dependencies directory lib... "
-rpcinc=`ocamlfind query -i-format -recursive -separator ' ' rpc`
-rpccmxa=rpc
-if test -n "$rpcinc"; then
- echo "$rpcinc";
- external_include="$external_include $rpcinc";
- external_package="$external_package $rpccmxa";
-else
- echo "not found";
- echo "*** This tool is required to build the server";
- echo "*** Please install the package or compile following instructions
found";
- echo "*** in README. Source archive available at:";
- echo "*** http://www.ocaml-programming.de/programming/rpc.html";
- exit 2;
-fi
-
-echo -n "Looking for gz directory lib... "
-gzinc=`ocamlfind query -i-format -recursive -separator ' ' gz`
-gzcmxa=gz
-if test -n "$gzinc"; then
- echo "$gzinc";
- external_include="$external_include $gzinc";
- external_package="$external_package $gzcmxa";
-else
- echo "not found";
- echo "*** This tool is required to build the server.";
- echo "*** Please install the package or compile following instructions
found";
- echo "*** in README. Source archive available at:";
- echo "*** http://ocamlplot.sourceforge.net/#gz";
- exit 2;
-fi
-
-if test "$server_target" = "yes"; then
- echo -n "Looking for cduce and its dependencies directory lib... "
- cduceinc=`ocamlfind query -i-format -recursive -separator ' ' cduce`
- cducecmxa=cduce
- if test -n "$cduceinc"; then
- echo "$cduceinc";
- external_include="$external_include $cduceinc";
- external_package="$external_package $cducecmxa";
- else
- echo "*** This tool is required to build the server.";
- echo "*** Please disable server using option --no-server";
- echo "*** or install the package";
- echo "*** or compile following instructions found in README.";
- echo "*** Source archive available at:";
- echo "*** http://www.cduce.org/download.html";
- exit 2;
- fi
-fi
-
-if test "$web_target" = "yes"; then
- echo -n "Look for wdialog and its dependencies directory lib... "
- wdialoginc=`ocamlfind query -i-format -recursive -separator ' ' wdialog`
- wdialogcmxa=wdialog
- if test -n "$wdialoginc"; then
- echo "$wdialoginc";
- external_include="$external_include $wdialoginc";
- external_package="$external_package $wdialogcmxa";
- else
- echo "not found";
- echo "*** This tool is required to build the web interface.";
- echo "*** Please disable web interface using option --no-web";
- echo "*** or install the package or compile following instructions
found";
- echo "*** in README. Source archive available at:";
- echo "*** http://wdialog.sourceforge.net/";
- exit 2;
- fi
-fi
-
-echo -n "Looking for gettext-stub and dependencies directory lib... "
-gettextinc=`ocamlfind query -i-format -recursive -separator ' ' gettext-stub`
-gettextcmxa=gettext-stub
-if test -n "$gettextinc"; then
- echo "$gettextinc";
- external_include="$external_include $gettextinc";
- external_package="$external_package $gettextcmxa";
-else
- echo "not found";
- echo "*** This tool is required to build demexp";
- echo "*** Please install the package or compile following instructions
found";
- echo "*** in README. Source archive available at:";
- echo "*** http://webperso.easyconnect.fr/gildor/ocaml-gettext.html";
- exit 2;
-fi
-
-# find needed .cmxa for ocamlfind package name
-
-external_cmxa=`ocamlfind query -predicates native -a-format -recursive
-separator ' ' $external_package`
-# remove spurious '+'
-external_cmxa=`echo $external_cmxa | sed -e "s|+||g"`
-
-# find independent config_file
-
-echo -n "Looking for config_file library... "
-ocamlstdlib=`ocamlc -v|sed -re '2!{d};2{s/^.*: (.*)/\1/}'`
-ocamllocallib=`echo $ocamlstdlib|sed 's|/usr/lib|/usr/local/lib|'`
-if test -f "$ocamlstdlib/config_file/config_file.cmx"; then
- echo "$ocamlstdlib/config_file/config_file.cmx";
- external_include="$external_include -I $ocamlstdlib/config_file";
- external_cmxa="$external_cmxa config_file.cmx";
-else
- if test -f "$ocamllocallib/config_file/config_file.cmx"; then
- echo "$ocamllocallib/config_file/config_file.cmx";
- external_include="$external_include -I $ocamllocallib/config_file";
- external_cmxa="$external_cmxa config_file.cmx";
- else
- echo "not found, not in $ocamlstdlib/config_file/"
- echo " neither in $ocamllocallib/config_file/";
- echo "*** This tool is required to build demexp";
- echo "*** Please install the package or compile following instructions
found";
- echo "*** in README. Source archive available at:";
- echo "*** http://download.gna.org/cameleon/";
- exit 2;
- fi
-fi
-
-# remove -I /usr/lib/ocaml/VERSION otherwise ocamldep will introduce
-# unneeded dependencies on standard modules (e.g. thread.cmi)
-standard_include=`ocamlfind query -i-format stdlib`
-external_include=`echo $external_include | sed -e "s|$standard_include ||g"`
-
-# output to Makefile
-
-echo "EXTERNAL_INC=$external_include" >> Makefile
-echo "EXTERNAL_CMXA=$external_cmxa" >> Makefile
+# find libraries
+if test \("$server_target" = "yes"\) -o \("$client_target" = "yes"\) -o
\("$web_target" = "yes"\) ; then
+
+ # find needed external lib using ocamlfind
+
+ external_include=''
+ external_package=''
+
+ echo -n "Looking for rpc and dependencies directory lib... "
+ rpcinc=`ocamlfind query -i-format -recursive -separator ' ' rpc`
+ rpccmxa=rpc
+ if test -n "$rpcinc"; then
+ echo "$rpcinc";
+ external_include="$external_include $rpcinc";
+ external_package="$external_package $rpccmxa";
+ else
+ echo "not found";
+ echo "*** This tool is required to build the server";
+ echo "*** Please install the package or compile following instructions
found";
+ echo "*** in README. Source archive available at:";
+ echo "*** http://www.ocaml-programming.de/programming/rpc.html";
+ exit 2;
+ fi
+
+ echo -n "Looking for gz directory lib... "
+ gzinc=`ocamlfind query -i-format -recursive -separator ' ' gz`
+ gzcmxa=gz
+ if test -n "$gzinc"; then
+ echo "$gzinc";
+ external_include="$external_include $gzinc";
+ external_package="$external_package $gzcmxa";
+ else
+ echo "not found";
+ echo "*** This tool is required to build the server.";
+ echo "*** Please install the package or compile following instructions
found";
+ echo "*** in README. Source archive available at:";
+ echo "*** http://ocamlplot.sourceforge.net/#gz";
+ exit 2;
+ fi
+
+ if test "$server_target" = "yes"; then
+ echo -n "Looking for cduce and its dependencies directory lib... "
+ cduceinc=`ocamlfind query -i-format -recursive -separator ' ' cduce`
+ cducecmxa=cduce
+ if test -n "$cduceinc"; then
+ echo "$cduceinc";
+ external_include="$external_include $cduceinc";
+ external_package="$external_package $cducecmxa";
+ else
+ echo "*** This tool is required to build the server.";
+ echo "*** Please disable server using option --no-server";
+ echo "*** or install the package";
+ echo "*** or compile following instructions found in README.";
+ echo "*** Source archive available at:";
+ echo "*** http://www.cduce.org/download.html";
+ exit 2;
+ fi
+ fi
+
+ if test "$web_target" = "yes"; then
+ echo -n "Look for wdialog and its dependencies directory lib... "
+ wdialoginc=`ocamlfind query -i-format -recursive -separator ' ' wdialog`
+ wdialogcmxa=wdialog
+ if test -n "$wdialoginc"; then
+ echo "$wdialoginc";
+ external_include="$external_include $wdialoginc";
+ external_package="$external_package $wdialogcmxa";
+ else
+ echo "not found";
+ echo "*** This tool is required to build the web interface.";
+ echo "*** Please disable web interface using option --no-web";
+ echo "*** or install the package or compile following instructions
found";
+ echo "*** in README. Source archive available at:";
+ echo "*** http://wdialog.sourceforge.net/";
+ exit 2;
+ fi
+ fi
+
+ echo -n "Looking for gettext-stub and dependencies directory lib... "
+ gettextinc=`ocamlfind query -i-format -recursive -separator ' ' gettext-stub`
+ gettextcmxa=gettext-stub
+ if test -n "$gettextinc"; then
+ echo "$gettextinc";
+ external_include="$external_include $gettextinc";
+ external_package="$external_package $gettextcmxa";
+ else
+ echo "not found";
+ echo "*** This tool is required to build demexp";
+ echo "*** Please install the package or compile following instructions
found";
+ echo "*** in README. Source archive available at:";
+ echo "*** http://webperso.easyconnect.fr/gildor/ocaml-gettext.html";
+ exit 2;
+ fi
+
+ # find needed .cmxa for ocamlfind package name
+
+ external_cmxa=`ocamlfind query -predicates native -a-format -recursive
-separator ' ' $external_package`
+ # remove spurious '+'
+ external_cmxa=`echo $external_cmxa | sed -e "s|+||g"`
+
+ # find independent config_file
+
+ echo -n "Looking for config_file library... "
+ ocamlstdlib=`ocamlc -v|sed -re '2!{d};2{s/^.*: (.*)/\1/}'`
+ ocamllocallib=`echo $ocamlstdlib|sed 's|/usr/lib|/usr/local/lib|'`
+ if test -f "$ocamlstdlib/config_file/config_file.cmx"; then
+ echo "$ocamlstdlib/config_file/config_file.cmx";
+ external_include="$external_include -I $ocamlstdlib/config_file";
+ external_cmxa="$external_cmxa config_file.cmx";
+ else
+ if test -f "$ocamllocallib/config_file/config_file.cmx"; then
+ echo "$ocamllocallib/config_file/config_file.cmx";
+ external_include="$external_include -I $ocamllocallib/config_file";
+ external_cmxa="$external_cmxa config_file.cmx";
+ else
+ echo "not found, not in $ocamlstdlib/config_file/"
+ echo " neither in $ocamllocallib/config_file/";
+ echo "*** This tool is required to build demexp";
+ echo "*** Please install the package or compile following
instructions found";
+ echo "*** in README. Source archive available at:";
+ echo "*** http://download.gna.org/cameleon/";
+ exit 2;
+ fi
+ fi
+
+ # remove -I /usr/lib/ocaml/VERSION otherwise ocamldep will introduce
+ # unneeded dependencies on standard modules (e.g. thread.cmi)
+ standard_include=`ocamlfind query -i-format stdlib`
+ external_include=`echo $external_include | sed -e "s|$standard_include ||g"`
+
+ # output to Makefile
+
+ echo "EXTERNAL_INC=$external_include" >> Makefile
+ echo "EXTERNAL_CMXA=$external_cmxa" >> Makefile
+
+fi
# compute default targets and finish Makefile
--- End Message ---