[m-rev.] for review: fix broken source distribution
Ian MacLarty
maclarty at csse.unimelb.edu.au
Sat Sep 30 12:43:15 AEST 2006
Zoltan, I think this should fix the broken source distribution (it's
still pending bootcheck though).
Another solution to the problem of mtc_union getting compiled with
debugging might be to use the --force-disable-tracing option in the
slice and mdbcomp directories. Do you think that'll work (the library
will still be compiled with debugging)?
Estimated hours taken: 0.5
Branches: main
Do not use the installed mmc to compile the slice directory, because
this means you cannot install the source distribution on a machine that
doesn't already have Mercury installed.
The reason the slice directory was compiled with the installed mmc was so that
the mtc_union tool wouldn't be compiled with debugging enabled even if the
compiler was compiled with debugging. mtc_union is used to summarise
trace counts when coverage testing the compiler. If mtc_union is compiled
in a debug grade then tail recursion is lost and it runs out of stack space.
If we're going to coverage test the compiler then we should use the
MERCURY_OPTIONS option that lets us customise the summary command, to choose
a version of mtc_union not compiled with debugging.
Mmakefile:
Remove PLAIN_SUBDIR_MMAKE and instead use SUBDIR_MMAKE to compile
the slice directory.
Index: Mmakefile
===================================================================
RCS file: /home/mercury1/repository/mercury/Mmakefile,v
retrieving revision 1.113
diff -u -r1.113 Mmakefile
--- Mmakefile 22 Sep 2006 03:50:39 -0000 1.113
+++ Mmakefile 30 Sep 2006 02:23:45 -0000
@@ -52,17 +52,6 @@
MMAKE_DIR=../../scripts \
../../scripts/mmake $(MMAKEFLAGS)
-# Note that we compile the slice directory using the version of mmc,
-# mmake etc that we find in $PATH. We don't want to override this mmc
-# with the one in scripts, since that one will probably refer to a
-# nonexistent executable in /usr/local/mercury-DEV. This is why actions
-# referring to the slice directory should use $(PLAIN_SUBDIR_MMAKE)
-# instead of $(SUBDIR_MMAKE).
-
-PLAIN_SUBDIR_MMAKE = unset MMAKE; unset MMAKE_VPATH; unset MMAKE_DIR; \
- unset MERCURY_CONFIG_DIR; unset MERCURY_STDLIB_DIR; \
- mmake $(MMAKEFLAGS)
-
GENERATED_DOCS = README INSTALL WORK_IN_PROGRESS TODO
# If you change these, you will also need to change the files indicated
@@ -139,7 +128,7 @@
slice/$(deps_subdir)mdice.dep \
slice/$(deps_subdir)mtc_union.dep \
slice/$(deps_subdir)mtc_diff.dep:
- +cd slice && $(PLAIN_SUBDIR_MMAKE) depend
+ +cd slice && $(SUBDIR_MMAKE) depend
.PHONY: dep_profiler
dep_profiler: profiler/$(deps_subdir)mercury_profile.dep
@@ -198,7 +187,7 @@
.PHONY: depend_slice
depend_slice:
- +cd slice && $(PLAIN_SUBDIR_MMAKE) depend
+ +cd slice && $(SUBDIR_MMAKE) depend
.PHONY: depend_profiler
depend_profiler:
@@ -271,7 +260,7 @@
.PHONY: slice
slice: dep_slice
- +cd slice && $(PLAIN_SUBDIR_MMAKE)
+ +cd slice && $(SUBDIR_MMAKE)
.PHONY: profiler
profiler: dep_profiler scripts util boehm_gc runtime library \
@@ -311,7 +300,7 @@
.PHONY: tags_slice
tags_slice:
- +cd slice && $(PLAIN_SUBDIR_MMAKE) tags
+ +cd slice && $(SUBDIR_MMAKE) tags
.PHONY: tags_profiler
tags_profiler:
@@ -406,8 +395,8 @@
+cd analysis && $(SUBDIR_MMAKE) all-ints cs tags
+cd compiler && $(SUBDIR_MMAKE) depend
+cd compiler && $(SUBDIR_MMAKE) cs tags
- +cd slice && $(PLAIN_SUBDIR_MMAKE) depend
- +cd slice && $(PLAIN_SUBDIR_MMAKE) cs tags
+ +cd slice && $(SUBDIR_MMAKE) depend
+ +cd slice && $(SUBDIR_MMAKE) cs tags
+cd profiler && $(SUBDIR_MMAKE) depend
+cd profiler && $(SUBDIR_MMAKE) cs tags
+cd deep_profiler && $(SUBDIR_MMAKE) depend
--------------------------------------------------------------------------
mercury-reviews mailing list
Post messages to: mercury-reviews at csse.unimelb.edu.au
Administrative Queries: owner-mercury-reviews at csse.unimelb.edu.au
Subscriptions: mercury-reviews-request at csse.unimelb.edu.au
--------------------------------------------------------------------------
More information about the reviews
mailing list