aboutsummaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorGaëtan Gilbert2019-02-28 18:46:47 +0100
committerGaëtan Gilbert2019-03-03 17:29:33 +0100
commit1a9f134e5ce7132ea38a6c73755e5773c4361aea (patch)
tree20b611d6a0f030a3d6c7fba81a0da3761a1ebfe4 /Makefile
parent53240d3248ce1fb36ab99036186eda9051fbb068 (diff)
Cleanup exported variables in Makefile.build
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile36
1 files changed, 23 insertions, 13 deletions
diff --git a/Makefile b/Makefile
index 7c8f0afb74..6adefa5d47 100644
--- a/Makefile
+++ b/Makefile
@@ -75,16 +75,22 @@ endef
## Files in the source tree
+# instead of using "export FOO" do "COQ_EXPORTED += FOO"
+# this makes it possible to clean up the environment in the subcall
+COQ_EXPORTED := COQ_EXPORTED
+
LEXFILES := $(call find, '*.mll')
YACCFILES := $(call find, '*.mly')
-export MLLIBFILES := $(call find, '*.mllib')
-export MLPACKFILES := $(call find, '*.mlpack')
-export MLGFILES := $(call find, '*.mlg')
-export CFILES := $(call findindir, 'kernel/byterun', '*.c')
+MLLIBFILES := $(call find, '*.mllib')
+MLPACKFILES := $(call find, '*.mlpack')
+MLGFILES := $(call find, '*.mlg')
+CFILES := $(call findindir, 'kernel/byterun', '*.c')
+COQ_EXPORTED +=MLLIBFILES MLPACKFILES MLGFILES CFILES
# NB our find wrapper ignores the test suite
MERLININFILES := $(call find, '.merlin.in') test-suite/unit-tests/.merlin.in
-export MERLINFILES := $(MERLININFILES:.in=)
+MERLINFILES := $(MERLININFILES:.in=)
+COQ_EXPORTED += MERLINFILES
# NB: The lists of currently existing .ml and .mli files will change
# before and after a build or a make clean. Hence we do not export
@@ -97,17 +103,21 @@ EXISTINGMLI := $(call find, '*.mli')
GENMLGFILES:= $(MLGFILES:.mlg=.ml)
# GRAMFILES must be in linking order
-export GRAMFILES=$(addprefix gramlib/.pack/gramlib__,Ploc Plexing Gramext Grammar)
-export GRAMMLFILES := $(addsuffix .ml, $(GRAMFILES)) $(addsuffix .mli, $(GRAMFILES))
-export GENGRAMFILES := $(GRAMMLFILES) gramlib/.pack/gramlib.ml
-export GENMLFILES:=$(LEXFILES:.mll=.ml) $(YACCFILES:.mly=.ml) $(GENMLGFILES) ide/coqide_os_specific.ml kernel/copcodes.ml kernel/uint63.ml
-export GENHFILES:=kernel/byterun/coq_instruct.h kernel/byterun/coq_jumptbl.h
-export GENFILES:=$(GENMLFILES) $(GENMLIFILES) $(GENHFILES)
+GRAMFILES=$(addprefix gramlib/.pack/gramlib__,Ploc Plexing Gramext Grammar)
+GRAMMLFILES := $(addsuffix .ml, $(GRAMFILES)) $(addsuffix .mli, $(GRAMFILES))
+GENGRAMFILES := $(GRAMMLFILES) gramlib/.pack/gramlib.ml
+GENMLFILES:=$(LEXFILES:.mll=.ml) $(YACCFILES:.mly=.ml) $(GENMLGFILES) ide/coqide_os_specific.ml kernel/copcodes.ml kernel/uint63.ml
+GENHFILES:=kernel/byterun/coq_instruct.h kernel/byterun/coq_jumptbl.h
+GENFILES:=$(GENMLFILES) $(GENMLIFILES) $(GENHFILES)
+COQ_EXPORTED += GRAMFILES GRAMMLFILES GENGRAMFILES GENMLFILES GENHFILES GENFILES
## More complex file lists
-export MLSTATICFILES := $(filter-out $(GENMLFILES), $(EXISTINGML))
-export MLIFILES := $(sort $(GENMLIFILES) $(EXISTINGMLI))
+MLSTATICFILES := $(filter-out $(GENMLFILES), $(EXISTINGML))
+MLIFILES := $(sort $(GENMLIFILES) $(EXISTINGMLI))
+COQ_EXPORTED += MLSTATICFILES MLIFILES
+
+export $(COQ_EXPORTED)
include Makefile.common