aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar filliatr <filliatr@85f007b7-540e-0410-9357-904b9bb8a0f7>2000-11-03 13:16:36 +0000
committerGravatar filliatr <filliatr@85f007b7-540e-0410-9357-904b9bb8a0f7>2000-11-03 13:16:36 +0000
commite01059f2ed199b99b291d1bd27940b0e2f9a3a0c (patch)
tree15bc3d6f8208271f633f49c25a3d808205290f8f
parent2ee3db6e70ad47bf128163f0aa1570f7316c540a (diff)
compilation avec make de Solaris; README et INSTALL
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@797 85f007b7-540e-0410-9357-904b9bb8a0f7
-rw-r--r--.depend138
-rw-r--r--INSTALL301
-rw-r--r--Makefile37
-rw-r--r--README83
-rwxr-xr-xconfigure2
-rw-r--r--toplevel/.cvsignore3
6 files changed, 487 insertions, 77 deletions
diff --git a/.depend b/.depend
index 199dc09e5..801ef3887 100644
--- a/.depend
+++ b/.depend
@@ -644,27 +644,29 @@ proofs/clenv.cmx: kernel/environ.cmx kernel/evd.cmx kernel/instantiate.cmx \
kernel/sign.cmx proofs/tacmach.cmx kernel/term.cmx pretyping/typing.cmx \
lib/util.cmx proofs/clenv.cmi
proofs/evar_refiner.cmo: parsing/astterm.cmi kernel/environ.cmi \
- kernel/evd.cmi proofs/logic.cmi kernel/names.cmi lib/pp.cmi \
- proofs/proof_trees.cmi proofs/proof_type.cmi kernel/reduction.cmi \
- proofs/refiner.cmi lib/stamps.cmi kernel/term.cmi pretyping/typing.cmi \
- lib/util.cmi proofs/evar_refiner.cmi
+ pretyping/evarutil.cmi kernel/evd.cmi library/global.cmi proofs/logic.cmi \
+ kernel/names.cmi lib/pp.cmi proofs/proof_trees.cmi proofs/proof_type.cmi \
+ kernel/reduction.cmi proofs/refiner.cmi kernel/sign.cmi lib/stamps.cmi \
+ kernel/term.cmi pretyping/typing.cmi lib/util.cmi proofs/evar_refiner.cmi
proofs/evar_refiner.cmx: parsing/astterm.cmx kernel/environ.cmx \
- kernel/evd.cmx proofs/logic.cmx kernel/names.cmx lib/pp.cmx \
- proofs/proof_trees.cmx proofs/proof_type.cmx kernel/reduction.cmx \
- proofs/refiner.cmx lib/stamps.cmx kernel/term.cmx pretyping/typing.cmx \
- lib/util.cmx proofs/evar_refiner.cmi
+ pretyping/evarutil.cmx kernel/evd.cmx library/global.cmx proofs/logic.cmx \
+ kernel/names.cmx lib/pp.cmx proofs/proof_trees.cmx proofs/proof_type.cmx \
+ kernel/reduction.cmx proofs/refiner.cmx kernel/sign.cmx lib/stamps.cmx \
+ kernel/term.cmx pretyping/typing.cmx lib/util.cmx proofs/evar_refiner.cmi
proofs/logic.cmo: parsing/coqast.cmi library/declare.cmi kernel/environ.cmi \
- kernel/evd.cmi kernel/inductive.cmi kernel/names.cmi lib/pp.cmi \
- parsing/printer.cmi proofs/proof_trees.cmi proofs/proof_type.cmi \
- kernel/reduction.cmi pretyping/retyping.cmi kernel/sign.cmi \
- kernel/term.cmi kernel/type_errors.cmi kernel/typeops.cmi \
- pretyping/typing.cmi lib/util.cmi proofs/logic.cmi
+ pretyping/evarutil.cmi kernel/evd.cmi library/global.cmi \
+ kernel/inductive.cmi kernel/names.cmi lib/pp.cmi parsing/printer.cmi \
+ proofs/proof_trees.cmi proofs/proof_type.cmi kernel/reduction.cmi \
+ pretyping/retyping.cmi kernel/sign.cmi kernel/term.cmi \
+ kernel/type_errors.cmi kernel/typeops.cmi pretyping/typing.cmi \
+ lib/util.cmi proofs/logic.cmi
proofs/logic.cmx: parsing/coqast.cmx library/declare.cmx kernel/environ.cmx \
- kernel/evd.cmx kernel/inductive.cmx kernel/names.cmx lib/pp.cmx \
- parsing/printer.cmx proofs/proof_trees.cmx proofs/proof_type.cmx \
- kernel/reduction.cmx pretyping/retyping.cmx kernel/sign.cmx \
- kernel/term.cmx kernel/type_errors.cmx kernel/typeops.cmx \
- pretyping/typing.cmx lib/util.cmx proofs/logic.cmi
+ pretyping/evarutil.cmx kernel/evd.cmx library/global.cmx \
+ kernel/inductive.cmx kernel/names.cmx lib/pp.cmx parsing/printer.cmx \
+ proofs/proof_trees.cmx proofs/proof_type.cmx kernel/reduction.cmx \
+ pretyping/retyping.cmx kernel/sign.cmx kernel/term.cmx \
+ kernel/type_errors.cmx kernel/typeops.cmx pretyping/typing.cmx \
+ lib/util.cmx proofs/logic.cmi
proofs/macros.cmo: parsing/ast.cmi parsing/coqast.cmi library/lib.cmi \
library/libobject.cmi library/library.cmi kernel/names.cmi \
parsing/pcoq.cmi lib/pp.cmi proofs/proof_type.cmi library/summary.cmi \
@@ -684,15 +686,17 @@ proofs/pfedit.cmx: parsing/astterm.cmx kernel/declarations.cmx \
proofs/proof_type.cmx kernel/sign.cmx proofs/tacmach.cmx kernel/term.cmx \
pretyping/typing.cmx lib/util.cmx proofs/pfedit.cmi
proofs/proof_trees.cmo: parsing/ast.cmi pretyping/detyping.cmi \
- kernel/environ.cmi kernel/evd.cmi library/global.cmi kernel/names.cmi \
- lib/pp.cmi parsing/pretty.cmi parsing/printer.cmi proofs/proof_type.cmi \
- kernel/sign.cmi lib/stamps.cmi kernel/term.cmi parsing/termast.cmi \
- pretyping/typing.cmi lib/util.cmi proofs/proof_trees.cmi
+ kernel/environ.cmi pretyping/evarutil.cmi kernel/evd.cmi \
+ library/global.cmi kernel/names.cmi lib/pp.cmi parsing/pretty.cmi \
+ parsing/printer.cmi proofs/proof_type.cmi kernel/sign.cmi lib/stamps.cmi \
+ kernel/term.cmi parsing/termast.cmi pretyping/typing.cmi lib/util.cmi \
+ proofs/proof_trees.cmi
proofs/proof_trees.cmx: parsing/ast.cmx pretyping/detyping.cmx \
- kernel/environ.cmx kernel/evd.cmx library/global.cmx kernel/names.cmx \
- lib/pp.cmx parsing/pretty.cmx parsing/printer.cmx proofs/proof_type.cmx \
- kernel/sign.cmx lib/stamps.cmx kernel/term.cmx parsing/termast.cmx \
- pretyping/typing.cmx lib/util.cmx proofs/proof_trees.cmi
+ kernel/environ.cmx pretyping/evarutil.cmx kernel/evd.cmx \
+ library/global.cmx kernel/names.cmx lib/pp.cmx parsing/pretty.cmx \
+ parsing/printer.cmx proofs/proof_type.cmx kernel/sign.cmx lib/stamps.cmx \
+ kernel/term.cmx parsing/termast.cmx pretyping/typing.cmx lib/util.cmx \
+ proofs/proof_trees.cmi
proofs/proof_type.cmo: parsing/coqast.cmi kernel/environ.cmi kernel/evd.cmi \
kernel/names.cmi lib/stamps.cmi pretyping/tacred.cmi kernel/term.cmi \
lib/util.cmi proofs/proof_type.cmi
@@ -730,19 +734,19 @@ proofs/tacinterp.cmx: parsing/ast.cmx parsing/astterm.cmx kernel/closure.cmx \
proofs/tacmach.cmx pretyping/tacred.cmx proofs/tactic_debug.cmx \
kernel/term.cmx pretyping/typing.cmx lib/util.cmx proofs/tacinterp.cmi
proofs/tacmach.cmo: parsing/ast.cmi parsing/astterm.cmi library/declare.cmi \
- kernel/environ.cmi proofs/evar_refiner.cmi kernel/evd.cmi \
- kernel/instantiate.cmi proofs/logic.cmi kernel/names.cmi lib/pp.cmi \
- parsing/printer.cmi proofs/proof_trees.cmi proofs/proof_type.cmi \
- kernel/reduction.cmi proofs/refiner.cmi kernel/sign.cmi lib/stamps.cmi \
- pretyping/tacred.cmi kernel/term.cmi pretyping/typing.cmi lib/util.cmi \
- proofs/tacmach.cmi
+ kernel/environ.cmi proofs/evar_refiner.cmi pretyping/evarutil.cmi \
+ kernel/evd.cmi library/global.cmi kernel/instantiate.cmi proofs/logic.cmi \
+ kernel/names.cmi lib/pp.cmi parsing/printer.cmi proofs/proof_trees.cmi \
+ proofs/proof_type.cmi kernel/reduction.cmi proofs/refiner.cmi \
+ kernel/sign.cmi lib/stamps.cmi pretyping/tacred.cmi kernel/term.cmi \
+ pretyping/typing.cmi lib/util.cmi proofs/tacmach.cmi
proofs/tacmach.cmx: parsing/ast.cmx parsing/astterm.cmx library/declare.cmx \
- kernel/environ.cmx proofs/evar_refiner.cmx kernel/evd.cmx \
- kernel/instantiate.cmx proofs/logic.cmx kernel/names.cmx lib/pp.cmx \
- parsing/printer.cmx proofs/proof_trees.cmx proofs/proof_type.cmx \
- kernel/reduction.cmx proofs/refiner.cmx kernel/sign.cmx lib/stamps.cmx \
- pretyping/tacred.cmx kernel/term.cmx pretyping/typing.cmx lib/util.cmx \
- proofs/tacmach.cmi
+ kernel/environ.cmx proofs/evar_refiner.cmx pretyping/evarutil.cmx \
+ kernel/evd.cmx library/global.cmx kernel/instantiate.cmx proofs/logic.cmx \
+ kernel/names.cmx lib/pp.cmx parsing/printer.cmx proofs/proof_trees.cmx \
+ proofs/proof_type.cmx kernel/reduction.cmx proofs/refiner.cmx \
+ kernel/sign.cmx lib/stamps.cmx pretyping/tacred.cmx kernel/term.cmx \
+ pretyping/typing.cmx lib/util.cmx proofs/tacmach.cmi
proofs/tactic_debug.cmo: parsing/ast.cmi lib/pp.cmi parsing/printer.cmi \
proofs/proof_trees.cmi proofs/tacmach.cmi proofs/tactic_debug.cmi
proofs/tactic_debug.cmx: parsing/ast.cmx lib/pp.cmx parsing/printer.cmx \
@@ -905,14 +909,14 @@ tactics/tacentries.cmx: proofs/proof_trees.cmx proofs/tacmach.cmx \
tactics/tacticals.cmx tactics/tactics.cmx tactics/tacentries.cmi
tactics/tacticals.cmo: proofs/clenv.cmi parsing/coqast.cmi \
kernel/declarations.cmi library/declare.cmi kernel/environ.cmi \
- kernel/evd.cmi library/global.cmi library/indrec.cmi kernel/inductive.cmi \
+ library/global.cmi library/indrec.cmi kernel/inductive.cmi \
kernel/names.cmi parsing/pattern.cmi lib/pp.cmi parsing/pretty.cmi \
kernel/reduction.cmi kernel/sign.cmi lib/stamps.cmi proofs/tacinterp.cmi \
proofs/tacmach.cmi kernel/term.cmi parsing/termast.cmi lib/util.cmi \
tactics/wcclausenv.cmi tactics/tacticals.cmi
tactics/tacticals.cmx: proofs/clenv.cmx parsing/coqast.cmx \
kernel/declarations.cmx library/declare.cmx kernel/environ.cmx \
- kernel/evd.cmx library/global.cmx library/indrec.cmx kernel/inductive.cmx \
+ library/global.cmx library/indrec.cmx kernel/inductive.cmx \
kernel/names.cmx parsing/pattern.cmx lib/pp.cmx parsing/pretty.cmx \
kernel/reduction.cmx kernel/sign.cmx lib/stamps.cmx proofs/tacinterp.cmx \
proofs/tacmach.cmx kernel/term.cmx parsing/termast.cmx lib/util.cmx \
@@ -975,7 +979,7 @@ toplevel/coqinit.cmo: config/coq_config.cmi library/library.cmi \
toplevel/mltop.cmi lib/options.cmi lib/pp.cmi lib/system.cmi \
toplevel/toplevel.cmi toplevel/vernac.cmi toplevel/coqinit.cmi
toplevel/coqinit.cmx: config/coq_config.cmx library/library.cmx \
- toplevel/mltop.cmi lib/options.cmx lib/pp.cmx lib/system.cmx \
+ toplevel/mltop.cmx lib/options.cmx lib/pp.cmx lib/system.cmx \
toplevel/toplevel.cmx toplevel/vernac.cmx toplevel/coqinit.cmi
toplevel/coqtop.cmo: config/coq_config.cmi toplevel/coqinit.cmi \
toplevel/errors.cmi library/lib.cmi library/library.cmi \
@@ -984,7 +988,7 @@ toplevel/coqtop.cmo: config/coq_config.cmi toplevel/coqinit.cmi \
toplevel/usage.cmi lib/util.cmi toplevel/vernac.cmi toplevel/coqtop.cmi
toplevel/coqtop.cmx: config/coq_config.cmx toplevel/coqinit.cmx \
toplevel/errors.cmx library/lib.cmx library/library.cmx \
- toplevel/mltop.cmi lib/options.cmx lib/pp.cmx lib/profile.cmx \
+ toplevel/mltop.cmx lib/options.cmx lib/pp.cmx lib/profile.cmx \
library/states.cmx lib/system.cmx toplevel/toplevel.cmx \
toplevel/usage.cmx lib/util.cmx toplevel/vernac.cmx toplevel/coqtop.cmi
toplevel/discharge.cmo: pretyping/class.cmi pretyping/classops.cmi \
@@ -1045,6 +1049,12 @@ toplevel/minicoq.cmx: kernel/declarations.cmx toplevel/fhimsg.cmx \
parsing/g_minicoq.cmi kernel/inductive.cmx kernel/names.cmx lib/pp.cmx \
kernel/safe_typing.cmx kernel/sign.cmx kernel/term.cmx \
kernel/type_errors.cmx lib/util.cmx
+toplevel/mltop.cmo: library/lib.cmi library/libobject.cmi library/library.cmi \
+ lib/pp.cmi library/summary.cmi lib/system.cmi lib/util.cmi \
+ toplevel/vernacinterp.cmi toplevel/mltop.cmi
+toplevel/mltop.cmx: library/lib.cmx library/libobject.cmx library/library.cmx \
+ lib/pp.cmx library/summary.cmx lib/system.cmx lib/util.cmx \
+ toplevel/vernacinterp.cmx toplevel/mltop.cmi
toplevel/protectedtoplevel.cmo: toplevel/errors.cmi parsing/pcoq.cmi \
lib/pp.cmi toplevel/vernac.cmi toplevel/vernacinterp.cmi \
toplevel/protectedtoplevel.cmi
@@ -1067,7 +1077,7 @@ toplevel/toplevel.cmo: parsing/ast.cmi toplevel/errors.cmi toplevel/mltop.cmi \
kernel/names.cmi lib/options.cmi parsing/pcoq.cmi proofs/pfedit.cmi \
lib/pp.cmi toplevel/protectedtoplevel.cmi lib/util.cmi \
toplevel/vernac.cmi toplevel/vernacinterp.cmi toplevel/toplevel.cmi
-toplevel/toplevel.cmx: parsing/ast.cmx toplevel/errors.cmx toplevel/mltop.cmi \
+toplevel/toplevel.cmx: parsing/ast.cmx toplevel/errors.cmx toplevel/mltop.cmx \
kernel/names.cmx lib/options.cmx parsing/pcoq.cmx proofs/pfedit.cmx \
lib/pp.cmx toplevel/protectedtoplevel.cmx lib/util.cmx \
toplevel/vernac.cmx toplevel/vernacinterp.cmx toplevel/toplevel.cmi
@@ -1084,30 +1094,32 @@ toplevel/vernac.cmx: parsing/ast.cmx parsing/coqast.cmx library/library.cmx \
toplevel/vernacentries.cmo: parsing/ast.cmi parsing/astterm.cmi \
pretyping/class.cmi toplevel/command.cmi parsing/coqast.cmi \
library/declare.cmi toplevel/discharge.cmi kernel/environ.cmi \
- kernel/evd.cmi parsing/extend.cmi library/global.cmi library/goptions.cmi \
- library/impargs.cmi library/lib.cmi library/libobject.cmi \
- library/library.cmi toplevel/metasyntax.cmi kernel/names.cmi \
- library/nametab.cmi lib/options.cmi proofs/pfedit.cmi lib/pp.cmi \
- lib/pp_control.cmi parsing/pretty.cmi parsing/printer.cmi \
- proofs/proof_trees.cmi proofs/proof_type.cmi toplevel/record.cmi \
- kernel/reduction.cmi proofs/refiner.cmi lib/stamps.cmi library/states.cmi \
- lib/system.cmi proofs/tacinterp.cmi proofs/tacmach.cmi \
- pretyping/tacred.cmi proofs/tactic_debug.cmi tactics/tactics.cmi \
- kernel/term.cmi kernel/typeops.cmi lib/util.cmi toplevel/vernacinterp.cmi \
+ pretyping/evarutil.cmi kernel/evd.cmi parsing/extend.cmi \
+ library/global.cmi library/goptions.cmi library/impargs.cmi \
+ library/lib.cmi library/libobject.cmi library/library.cmi \
+ toplevel/metasyntax.cmi kernel/names.cmi library/nametab.cmi \
+ lib/options.cmi proofs/pfedit.cmi lib/pp.cmi lib/pp_control.cmi \
+ parsing/pretty.cmi parsing/printer.cmi proofs/proof_trees.cmi \
+ proofs/proof_type.cmi toplevel/record.cmi kernel/reduction.cmi \
+ proofs/refiner.cmi lib/stamps.cmi library/states.cmi lib/system.cmi \
+ proofs/tacinterp.cmi proofs/tacmach.cmi pretyping/tacred.cmi \
+ proofs/tactic_debug.cmi tactics/tactics.cmi kernel/term.cmi \
+ kernel/typeops.cmi lib/util.cmi toplevel/vernacinterp.cmi \
toplevel/vernacentries.cmi
toplevel/vernacentries.cmx: parsing/ast.cmx parsing/astterm.cmx \
pretyping/class.cmx toplevel/command.cmx parsing/coqast.cmx \
library/declare.cmx toplevel/discharge.cmx kernel/environ.cmx \
- kernel/evd.cmx parsing/extend.cmx library/global.cmx library/goptions.cmx \
- library/impargs.cmx library/lib.cmx library/libobject.cmx \
- library/library.cmx toplevel/metasyntax.cmx kernel/names.cmx \
- library/nametab.cmx lib/options.cmx proofs/pfedit.cmx lib/pp.cmx \
- lib/pp_control.cmx parsing/pretty.cmx parsing/printer.cmx \
- proofs/proof_trees.cmx proofs/proof_type.cmx toplevel/record.cmx \
- kernel/reduction.cmx proofs/refiner.cmx lib/stamps.cmx library/states.cmx \
- lib/system.cmx proofs/tacinterp.cmx proofs/tacmach.cmx \
- pretyping/tacred.cmx proofs/tactic_debug.cmx tactics/tactics.cmx \
- kernel/term.cmx kernel/typeops.cmx lib/util.cmx toplevel/vernacinterp.cmx \
+ pretyping/evarutil.cmx kernel/evd.cmx parsing/extend.cmx \
+ library/global.cmx library/goptions.cmx library/impargs.cmx \
+ library/lib.cmx library/libobject.cmx library/library.cmx \
+ toplevel/metasyntax.cmx kernel/names.cmx library/nametab.cmx \
+ lib/options.cmx proofs/pfedit.cmx lib/pp.cmx lib/pp_control.cmx \
+ parsing/pretty.cmx parsing/printer.cmx proofs/proof_trees.cmx \
+ proofs/proof_type.cmx toplevel/record.cmx kernel/reduction.cmx \
+ proofs/refiner.cmx lib/stamps.cmx library/states.cmx lib/system.cmx \
+ proofs/tacinterp.cmx proofs/tacmach.cmx pretyping/tacred.cmx \
+ proofs/tactic_debug.cmx tactics/tactics.cmx kernel/term.cmx \
+ kernel/typeops.cmx lib/util.cmx toplevel/vernacinterp.cmx \
toplevel/vernacentries.cmi
toplevel/vernacinterp.cmo: parsing/ast.cmi toplevel/command.cmi \
parsing/coqast.cmi lib/dyn.cmi toplevel/himsg.cmi kernel/names.cmi \
diff --git a/INSTALL b/INSTALL
new file mode 100644
index 000000000..44cc8c8be
--- /dev/null
+++ b/INSTALL
@@ -0,0 +1,301 @@
+
+ INSTALLATION PROCEDURES FOR THE COQ V7 SYSTEM
+ ---------------------------------------------
+
+WHAT DO YOU NEED ?
+==================
+
+ Coq is designed to work on computers equipped with the Unix operating
+ system. In order to compile Coq V7 you need:
+
+ - Objective Caml version 3.00 or later
+ (available at http://caml.inria.fr/)
+
+ - the Camlp4 preprocessor with same version number as ocaml
+ (available at http://caml.inria.fr/camlp4/)
+
+ Until now, it has mainly been tested on Sun workstations running Solaris,
+ and DEC alpha and Pentium workstations running Linux. By ftp, Coq
+ comes as a single compressed tar-file. You have probably already
+ decompressed it if you are reading this document.
+
+
+QUICK INSTALLATION PROCEDURE.
+=============================
+
+1. ./configure
+2. make world
+3. make install (you may need superuser rights)
+4. make clean
+
+
+INSTALLATION PROCEDURE IN DETAILS (NORMAL USERS).
+=================================================
+
+1- Check that you have the Objective Caml compiler version 3.00 (or later)
+ installed on your computer and that "ocamlmktop" and "ocamlc.opt" (or
+ its bytecode version "ocamlc") lie in a directory which is present
+ in your $PATH enviroment variable.
+
+ To get Coq in native-code, (it runs 4 to 10 times faster than
+ bytecode, but it takes more time to compile, uses more space),
+ you will also need the "ocamlopt.opt" (or its bytecode version
+ "ocamlopt") command.
+
+2- Check that you have Camlp4 installed on your
+ computer and that the command "camlp4" lies in a directory which
+ is present in your $PATH enviroment variable path.
+ (You need Camlp4 in both bytecode and native versions if
+ your platform supports it).
+
+3- The uncompression and un-tarring of the distribution file gave birth
+ to a directory named "coq-7". You can rename this directory and put
+ it wherever you want. Just keep in mind that you will need some spare
+ space during the compilation (about 20 Mb of disk space for the whole
+ system in bytecode, and 15 Mb more for native-code compilation). Once
+ installed, the binaries take about 14 Mb, and the library about 7 Mb.
+
+4- First you need to configure the system. It is done automatically with
+ the command:
+
+ ./configure <options>
+
+ The "configure" script will ask you for directories where to put
+ the Coq binaries, standard library, man pages, etc. It will propose
+ you some default values.
+
+ The "configure" script accepts the following options:
+
+-prefix <dir>
+ Binaries, library, man pages and Emacs mode will be respectively
+ installed in <dir>/bin, <dir>/lib/coq, <dir>/man and
+ <dir>/lib/emacs/site-lisp
+
+-bindir <dir> (default: /usr/local/bin)
+ Directory where the binaries will be installed
+
+-libdir <dir> (default: /usr/local/lib/coq)
+ Directory where the Coq standard library will be installed
+
+-mandir <dir> (default: /usr/local/man)
+ Directory where the Coq manual pages will be installed
+
+-emacslib <dir> (default: /usr/local/lib/emacs/site-lisp)
+ Directory where the Coq Emacs mode will be installed
+
+-arch <value> (default is the result of the command "arch")
+ An arbitrary architecture name for your machine (useful when
+ compiling Coq on two different architectures for which the
+ result of "arch" is the same, e.g. SunOS and Solaris)
+
+-local
+ Compile Coq to run in its source directory. The installation (step 6)
+ is not necessary in that case.
+
+-opt
+ Use the ocamlc.opt compiler instead of ocamlc (and ocamlopt.opt
+ compiler instead of ocamlopt). Makes compilation faster (recommended).
+
+-nowarnings
+ Disable the Objective Caml compiler warnings. This option has no
+ effect on the result of the compilation.
+
+5- Still in the root directory, do
+
+ make world
+
+ to compile Coq in Objective Caml bytecode (and native-code if supported).
+
+ This will compile the entire system. This phase can take more or less time,
+ depending on your architecture (about 30 minutes for both complilations
+ on a Pentium Pro 150), and is fairly verbose.
+
+6- You can now install the Coq system. Executables, libraries, manual pages
+ and emacs mode are copied in some standard places of your system, defined at
+ configuration time (step 3). Just do
+
+ umask 022
+ make install
+
+ Of course, you may need superuser rights to do that.
+ To use the Coq emacs mode you also need to put the following lines
+ in you .emacs file:
+
+ (setq auto-mode-alist (cons '("\\.v$" . coq-mode) auto-mode-alist))
+ (autoload 'coq-mode "coq" "Major mode for editing Coq vernacular." t)
+
+7- You can now clean all the sources. (You can even erase them.)
+
+ make cleanall
+
+
+INSTALLATION PROCEDURE FOR ADVANCED USERS.
+==========================================
+
+ If you wish to write tactics (and that really means that you belong
+ to advanced users !) you *must* keep the Coq sources, without cleaning
+ them. Therefore, to avoid a duplication of binaries and library, it is
+ not necessary to do the installation step (6- above).
+ You just have to tell it at configuration step (4- above) with the
+ option -local :
+
+ ./configure -local <other options>
+
+ Then compile the sources as described in step 5 above. The resulting
+ binaires will reside in the subdirectory bin/<arch> where <arch> stands
+ for your architecture (usually the result of the Unix command "arch").
+ Once the compilation is done, you can clean some directories with
+ "make clean-src" to save some disk space, the system still being usable.
+
+ If you want to compile the sources for debugging (i.e. with the option
+ -g of the Caml compiler) then add the -debug option at configuration
+ step :
+
+ ./configure -debug <other options>
+
+ and then compile the sources (step 5). Then you must make a Coq toplevel
+ including your own tactics, which must be compiled with -g, with coqmktop.
+ See the chapter 16 of the Coq Reference Manual for details about how
+ to use coqmktop and the Objective Caml debugger with Coq.
+
+
+UN-INSTALLATION.
+================
+
+ Maybe one day you want to move the binaries, libaries and man pages
+of Coq to another place, remove them to install a newer version, or simply
+remove completely Coq from your system.
+
+ The installation procedure (during the "make install" invocation)
+produces a file COQFILES which lists all files
+copied during the installation. This file is created in the Coq Library
+directory, which can be easily known by typing "coqtop -where"
+
+ To remove the binaries and the library files on a Unix system, you
+just have to type :
+
+ coqtop -uninstall
+
+Of course, you may need to be root to do that.
+
+NOTA BENE : In order not to delete others files than the coq system files,
+ `coqtop -uninstall' deletes only files, not directories. Maybe after
+ the un-installation, they are some empty directories. You can delete
+ them (especially /usr/local/lib/coq) by hand after having verified
+ that they are empty.
+
+THE AVAILABLE COMMANDS.
+=======================
+
+ There are two Coq commands:
+
+ coqtop The Coq toplevel
+ coqc The Coq compiler
+
+ Add option "-opt" to get Coq running natively (but then you cannot load
+ your own tactics dynamically -- see also option "-full")
+
+ * `coqtop' launches Coq in the interactive mode. The default state
+ (see the "-inputstate" option) is `tactics.coq', which contains some
+ basic logical definitions, the associated parsing and printing rules,
+ and the following tactic modules: Tauto, ProPre, Program, Prolog and Inv.
+ This top-level is built on a Objective Caml top-level. From the `coqtop'
+ top-level, one can go to the Objective Caml top-level with the command:
+
+ Drop.
+
+ One goes back to Coq through the Objective Caml commands:
+
+ #use "include.ml";;
+ go();;
+
+ * `coqc' allows compilation of Coq files directly from the command line.
+ To compile a file foo.v, do:
+
+ coqc foo
+
+ It will produce a file foo.vo, that you can now load through the Coq
+ command "Require".
+
+ For both coqtop and coqc the option -opt launches the native-code version,
+ and the option -full a native-code version with all the tactics (that is
+ the tactics Linear, Extraction and Natural added to the standard tactics).
+
+ The `make world' and `make world-opt' commands create three distinct
+ possible input states which can be used by `coqtop':
+
+ * tactics, which is the default state described above.
+
+ * state, which is similar to `tactics' regarding the pre-loaded Coq
+ definitions, but does not load any tactic file.
+
+ * barestate, which gives you Coq without any pre-loaded definition. It is
+ essentially used for compiling theories/INIT/ and thus building the
+ other state files.
+
+ A detailed description of these commands and of their options is given
+ in the Reference Manual (which you can get by ftp, in the doc/ directory)
+ and in the corresponding manual pages.
+
+
+COMMON PROBLEMS.
+================
+
+ * On some sites, when running `./configure', `pwd' returned a
+ path which is not valid from another machine (it may look like
+ "/tmp_mnt/foo/...") and, as a consequence, you won't be able to run
+ coqtop or coqc. The solution is to give the correct value, with
+
+ ./configure -src <correct path> <other options>
+
+ * The `make install' procedure uses mkdirhier, a program that may
+ not be present on certain systems. T fix that, try to replace
+ mkdirhier with mkdir -p
+
+COMPILING FOR DIFFERENT ARCHITECTURES.
+======================================
+
+ This section explains how to compile Coq for several architecture,
+ sharing the same sources. The important fact is that some files are
+ architecture dependent (.cmx .o and executable files for instance)
+ but others are not (.cmo and .vo). Consequently, you can :
+
+ o save some time during compilation by not cleaning the architecture
+ independent files;
+
+ o save some space during installation by sharing the Coq standard
+ library (which is fully architecture independent).
+
+ So, in order to compile Coq for a new architecture, proceed as follows:
+
+ * Omit step 7 above and clean only the architecture dependent files:
+ it is done automatically with the command
+
+ make archclean
+
+ * Configure the system for the new architecture:
+
+ ./configure <options>
+
+ You can specify the same directory for the standard library but you
+ MUST specify a different directory for the binaires (of course).
+
+ * Compile and install the system as described in steps 5 and 6 above.
+
+
+MOVING BINARIES OR LIBRARY.
+===========================
+
+ If you move the binaries or the library, Coq will be "lost". Usually,
+ running "coqtop" will then return an error message of the kind:
+
+ Error during initialization :
+ Error: Can't find file tactics.coq on loadpath
+
+ If you really have (or want) to move the binaries or the library, then
+ you have to tell their new places to Coq, using the options -bindir (for
+ the binaries directory) and -libdir (for the standard library directory) :
+
+ coqtop -bindir <new directory> -libdir <new directory>
+
+
diff --git a/Makefile b/Makefile
index 8fc23d483..1254d5415 100644
--- a/Makefile
+++ b/Makefile
@@ -53,8 +53,6 @@ COQINCLUDES=-I contrib/omega -I contrib/ring -I contrib/xml \
# Objects files
###########################################################################
-STRLIB=-cclib -lstr
-
CLIBS=unix.cma
CAMLP4OBJS=gramlib.cma
@@ -162,7 +160,7 @@ COQMKTOPCMO=$(CONFIG) scripts/tolink.cmo scripts/coqmktop.cmo
$(COQMKTOP): $(COQMKTOPCMO)
$(OCAMLC) $(BYTEFLAGS) -o $(COQMKTOP) -custom str.cma unix.cma \
- $(COQMKTOPCMO) $(OSDEPLIBS) $(STRLIB)
+ $(COQMKTOPCMO) $(OSDEPLIBS)
scripts/tolink.ml: Makefile
echo "let lib = \""$(LIB)"\"" > $@
@@ -363,8 +361,7 @@ tools/coq_makefile: tools/coq_makefile.ml
$(OCAMLOPT) $(OPTFLAGS) -o tools/coq_makefile tools/coq_makefile.ml
tools/coq-tex: tools/coq-tex.ml
- $(OCAMLOPT) $(OPTFLAGS) -o tools/coq-tex str.cmxa tools/coq-tex.ml \
- $(STRLIB)
+ $(OCAMLOPT) $(OPTFLAGS) -o tools/coq-tex str.cmxa tools/coq-tex.ml
archclean::
rm -f tools/coqdep tools/gallina tools/coq-tex tools/coq_makefile
@@ -399,7 +396,10 @@ install-binaries:
cp tools/coqdep tools/gallina tools/coq_makefile tools/coq-tex \
$(BINDIR)
+ALLVO=$(INITVO) $(TACTICSVO) $(THEORIESVO) $(CONTRIBVO)
+
install-library:
+ cp $(ALLVO) $(COQLIB)
cp tools/coq.el tools/coq.elc $(EMACSLIB)
MANPAGES=tools/coq-tex.1 tools/coqdep.1 tools/gallina.1
@@ -415,7 +415,7 @@ install-manpages:
.PHONY: doc
doc: doc/coq.tex
- make -C doc coq.ps minicoq.dvi
+ $(MAKE) -C doc coq.ps minicoq.dvi
LPLIB = lib/doc.tex $(LIB:.cmo=.mli)
LPKERNEL = kernel/doc.tex $(KERNEL:.cmo=.mli)
@@ -491,15 +491,26 @@ beforedepend:: parsing/pcoq.ml parsing/extend.ml
# toplevel/mltop.ml4 (ifdef Byte)
+toplevel/mltop.cmo: toplevel/mltop.byteml
+ $(OCAMLC) $(BYTEFLAGS) -c -impl toplevel/mltop.byteml -o $@
+
+toplevel/mltop.cmx: toplevel/mltop.optml
+ $(OCAMLOPT) $(OPTFLAGS) -c -impl toplevel/mltop.optml -o $@
+
+toplevel/mltop.byteml: toplevel/mltop.ml4
+ $(CAMLP4O) pr_o.cmo pa_ifdef.cmo -DByte -impl toplevel/mltop.ml4 > $@ || rm -f $@
+
+toplevel/mltop.optml: toplevel/mltop.ml4
+ $(CAMLP4O) pr_o.cmo pa_ifdef.cmo -impl toplevel/mltop.ml4 > $@ || rm -f $@
+
toplevel/mltop.ml: toplevel/mltop.ml4
- $(CAMLP4O) pr_o.cmo pa_ifdef.cmo -DByte -impl $< > $@ || rm -f $@
-toplevel/mltop.cmo: toplevel/mltop.ml4
- $(OCAMLC) $(BYTEFLAGS) -pp "$(CAMLP4O) pa_ifdef.cmo -DByte -impl" \
- -c -impl $<
-toplevel/mltop.cmx: toplevel/mltop.ml4
- $(OCAMLOPT) $(OPTFLAGS) -pp "$(CAMLP4O) pa_ifdef.cmo -impl" -c -impl $<
+ $(CAMLP4O) pr_o.cmo pa_ifdef.cmo -DByte -impl toplevel/mltop.ml4 > $@ || rm -f $@
+
ML4FILES += toplevel/mltop.ml4
+clean::
+ rm -f toplevel/mltop.ml toplevel/mltop.byteml toplevel/mltop.optml
+
###########################################################################
# Default rules
###########################################################################
@@ -590,7 +601,7 @@ ML4FILESML = $(ML4FILES:.ml4=.ml)
dependcamlp4: beforedepend $(ML4FILESML)
ocamldep $(DEPFLAGS) $(ML4FILESML) > .depend.camlp4
for f in $(ML4FILES); do \
- echo -n `dirname $$f`/`basename $$f .ml4`".ml: " >> .depend.camlp4; \
+ printf "%s" `dirname $$f`/`basename $$f .ml4`".ml: " >> .depend.camlp4; \
echo `$(CAMLP4DEPS) $$f` >> .depend.camlp4; \
done
rm -f toplevel/mltop.ml
diff --git a/README b/README
new file mode 100644
index 000000000..b3a1efa4e
--- /dev/null
+++ b/README
@@ -0,0 +1,83 @@
+
+ THE COQ V7 SYSTEM
+ =================
+
+INSTALLATION.
+=============
+
+ See the file INSTALL for installation procedure.
+
+
+DOCUMENTATION.
+==============
+
+ The documentation of Coq V7 is available by anonymous ftp (see below),
+ in a directory doc/. The documents are available separately or
+ all together in the tar file all-docs.tar .
+
+
+CHANGES.
+========
+
+ There is a file named CHANGES that explains the differences and the
+ incompatibilities since last versions. If you upgrade Coq, please read
+ it carefully.
+
+
+AVAILABILITY.
+=============
+
+ Coq is available by anonymous FTP on ftp.inria.fr:
+
+ host: ftp.inria.fr (192.93.2.54)
+ directory: INRIA/coq/
+
+THE COQ CLUB.
+=============
+
+ The Coq Club moderated mailing list is meant to be a standard way to
+ discuss questions about the Coq system and related topics. The submission
+ address is:
+
+ coq-club@margaux.inria.fr
+
+ The topics to be discussed in the club should include:
+
+ * technical problems;
+
+ * questions about proof developments;
+
+ * suggestions and questions about the implementation;
+
+ * announcements of proofs;
+
+ * theoretical questions about typed lambda-calculi which are
+ closely related to Coq.
+
+ To be added to, or removed from, the mailing list, please write to:
+
+ coq-club-request@margaux.inria.fr
+
+ Please use also this address for any questions/suggestions about the
+ Coq Club. It might sometimes take a few days before your messages get
+ forwarded.
+
+
+BUGS REPORT.
+============
+
+ Send your bug reports by E-mail to
+
+ coq@pauillac.inria.fr
+
+ or by snail mail to
+
+ Projet Coq
+ INRIA Rocquencourt
+ B.P. 105
+ 78153 Le Chesnay
+ France
+
+ To be effective, bug reports should mention the Caml version used
+ to compile and run Coq, the Coq version (coqtop -v), the configuration
+ used, and include a complete source example leading to the bug.
diff --git a/configure b/configure
index c98cf3d2f..624a1c5b4 100755
--- a/configure
+++ b/configure
@@ -8,7 +8,7 @@
VERSION=7.00
VERSIONSI=1.0
-DATE="December 1999"
+DATE="November 2000"
# a local which command for sh
which () {
diff --git a/toplevel/.cvsignore b/toplevel/.cvsignore
new file mode 100644
index 000000000..0851e5725
--- /dev/null
+++ b/toplevel/.cvsignore
@@ -0,0 +1,3 @@
+mltop.ml
+mltop.byteml
+mltop.optml