aboutsummaryrefslogtreecommitdiff
path: root/test-suite
diff options
context:
space:
mode:
authorEmilio Jesus Gallego Arias2020-06-22 17:52:18 +0200
committerEmilio Jesus Gallego Arias2021-03-03 16:06:14 +0100
commitab98d847d237af3cd0e46edef42218be65cfc98f (patch)
tree91d26077257724e2eeefe1bf39e24f24d34070be /test-suite
parentef22a5aaf1728d840341d31befd67dd90c5b2e0e (diff)
[build] Split stdlib to it's own opam package.
We introduce a new package structure for Coq: - `coq-core`: Coq's OCaml tools code and plugins - `coq-stdlib`: Coq's stdlib [.vo files] - `coq`: meta-package that pulls `coq-{core,stdlib}` This has several advantages, in particular it allows to install Coq without the stdlib which is useful in several scenarios, it also open the door towards a versioning of the stdlib at the package level. The main user-visible change is that Coq's ML development files now live in `$lib/coq-core`, for compatibility in the regular build we install a symlink and support both setups for a while. Note that plugin developers and even `coq_makefile` should actually rely on `ocamlfind` to locate Coq's OCaml libs as to be more robust. There is a transient state where we actually look for both `$coqlib/plugins` and `$coqlib/../coq-core/plugins` as to support the non-ocamlfind plus custom variables. This will be much improved once #13617 is merged (which requires this PR first), then, we will introduce a `coq.boot` library so finally `coqdep`, `coqchk`, etc... can share the same path setup code. IMHO the plan should work fine.
Diffstat (limited to 'test-suite')
-rw-r--r--test-suite/Makefile6
-rw-r--r--test-suite/coq-makefile/timing/precomputed-time-tests/007-no-output-sync/time-of-build.log.in4
-rw-r--r--test-suite/dune3
-rwxr-xr-xtest-suite/misc/coq_environment.sh2
4 files changed, 10 insertions, 5 deletions
diff --git a/test-suite/Makefile b/test-suite/Makefile
index 245c717d42..2a2f62e23f 100644
--- a/test-suite/Makefile
+++ b/test-suite/Makefile
@@ -46,7 +46,11 @@ BIN := $(ROOT)/bin/
COQLIB?=
ifeq ($(COQLIB),)
+ ifeq ($(LOCAL),true)
COQLIB := $(shell ocaml ocaml_pwd.ml ..)
+ else
+ COQLIB := $(shell ocaml ocaml_pwd.ml $(COQLIBINSTALL))
+ endif
endif
endif # exists ../_build
export COQLIB
@@ -320,7 +324,7 @@ unit-tests: $(UNIT_LOGFILES)
# Build executable, run it to generate log file
unit-tests/%.ml.log: unit-tests/%.ml unit-tests/src/$(UNIT_LINK)
$(SHOW) 'TEST $<'
- $(HIDE)$(OCAMLBEST) -linkall -linkpkg -package coq.toplevel,ounit2 \
+ $(HIDE)$(OCAMLBEST) -linkall -linkpkg -package coq-core.toplevel,ounit2 \
-I unit-tests/src $(UNIT_LINK) $< -o $<.test;
$(HIDE)./$<.test
diff --git a/test-suite/coq-makefile/timing/precomputed-time-tests/007-no-output-sync/time-of-build.log.in b/test-suite/coq-makefile/timing/precomputed-time-tests/007-no-output-sync/time-of-build.log.in
index 47d0e09e1a..258eb04271 100644
--- a/test-suite/coq-makefile/timing/precomputed-time-tests/007-no-output-sync/time-of-build.log.in
+++ b/test-suite/coq-makefile/timing/precomputed-time-tests/007-no-output-sync/time-of-build.log.in
@@ -744,7 +744,7 @@ CONTRIBUTING.md
CREDITS
INSTALL.md
LICENSE
-META.coq.in
+META.coq-core.in
Makefile
Makefile.build
Makefile.checker
@@ -5626,4 +5626,4 @@ ValueError: too many values to unpack
Makefile.ci:90: recipe for target 'ci-metacoq' failed
make: *** [ci-metacoq] Error 1
section_end:1598965182:build_script section_start:1598965182:after_script section_end:1598965184:after_script section_start:1598965184:upload_artifacts_on_failure section_end:1598965189:upload_artifacts_on_failure ERROR: Job failed: exit code 1
- \ No newline at end of file
+
diff --git a/test-suite/dune b/test-suite/dune
index 1864153021..09597fc864 100644
--- a/test-suite/dune
+++ b/test-suite/dune
@@ -35,7 +35,8 @@
; For the changelog test
../config/coq_config.py
(source_tree doc/changelog)
- (package coq)
+ (package coq-core)
+ (package coq-stdlib)
; For fake_ide
(package coqide-server)
(source_tree .))
diff --git a/test-suite/misc/coq_environment.sh b/test-suite/misc/coq_environment.sh
index 667d11f89e..6f7b11c8f1 100755
--- a/test-suite/misc/coq_environment.sh
+++ b/test-suite/misc/coq_environment.sh
@@ -16,7 +16,7 @@ EOT
cp $BIN/coqc .
cp $BIN/coq_makefile .
mkdir -p overridden/tools/
-cp $COQLIB/tools/CoqMakefile.in overridden/tools/
+cp $COQLIB/tools/CoqMakefile.in overridden/tools/ || cp $COQLIB/../coq-core/tools/CoqMakefile.in overridden/tools/
unset COQLIB
N=`./coqc -config | grep COQLIB | grep /overridden | wc -l`