[m-rev.] for review: fix mmake rules for os,cs,css,javas
Julien Fischer
jfischer at opturion.com
Sat Apr 11 18:44:38 AEST 2020
Hi Zoltan,
On Sat, 11 Apr 2020, Zoltan Somogyi wrote:
> For review by anyone.
>
> This has been bootchecked in hlc.gc, asm_fast.gc,
> csharp and java.
Another relevant test here would be to check that the source
distribution builds.
> Fix mmakefile rules for os,cs,css,javas.
>
> The main objective of this change is to get bootchecks in the csharp
> and java grades to actually build the slice, profiler, deep_profiler
> and mfilterjavac directories, which (due to the bug this diff fixes)
> they weren't doing before.
>
> However, since one side effect of this change is to eliminate
> one source of annoying warnings from mmake about references to undefined
> variables, a subsidiary objective s to eliminate other sources of such
s/s/is/
> warnings as well, which mostly come from the rules for making tags files.
...
> diff --git a/browser/Mmakefile b/browser/Mmakefile
> index 3acab9240..c56020002 100644
> --- a/browser/Mmakefile
> +++ b/browser/Mmakefile
> @@ -1,5 +1,5 @@
> #-----------------------------------------------------------------------------#
> -# vim: ts=8 sw=8 noexpandtab
> +# vim: ts=8 sw=8 noexpandtab ft=make
> #-----------------------------------------------------------------------------#
> # Copyright (C) 1998-2007, 2009-2010, 2012 The University of Melbourne.
> # This file may only be copied under the terms of the GNU General
> @@ -186,19 +186,32 @@ int3s: $(INT3S_TARGETS)
>
> #-----------------------------------------------------------------------------#
>
> +# We need the shenanigans with .browser_tags to avoid situations in which
> +# "mmake tags" in this directory does nothing even in the absence of a tags
> +# file in this directory, because mmake uses VPATH to find ../library/tags
> +# and believes it to be the tags file we are asking for.
> +#
> +# We give files in mdbcmp before the files in this directory because
s/mdbcmp/mdbcomp/
> +# we want references to entiies defined in the modules copied from the
s/entiies/entities/
> +# mdbcomp directory to this directory to go the actual, effective definitions,
> +# the definitions which can be changed *without* those changes going away
> +# on the next copy.
> +
> tags: .browser_tags
>
> -.browser_tags: $(MTAGS) $($(BROWSER_LIB_NAME).ms) \
> - $(wildcard $(LIBRARY_DIR)/*.m) \
> +.browser_tags: $(MTAGS) $(wildcard *.m) \
> $(wildcard $(MDBCOMP_DIR)/*.m)
> - $(MTAGS) $($(BROWSER_LIB_NAME).ms) ../mdbcomp/*.m ../library/*.m
> + $(wildcard $(LIBRARY_DIR)/*.m) \
> + $(MTAGS) $(MDBCOMP_DIR)/*.m *.m $(LIBRARY_DIR)/*.m
> @touch .browser_tags
> #-----------------------------------------------------------------------------#
> diff --git a/deep_profiler/Mmakefile b/deep_profiler/Mmakefile
> index 1b17871d8..655dfd32c 100644
> --- a/deep_profiler/Mmakefile
> +++ b/deep_profiler/Mmakefile
...
> @@ -186,33 +184,32 @@ ints: DEPEND=$(patsubst %,%.ints,$(ALL_DEEP_MAIN_MODULES))
>
> #-----------------------------------------------------------------------------#
>
> -# We need the shenanigans with .deep_tags to avoid situations in which an
> +# We need the shenanigans with .deep_tags to avoid situations in which
> # "mmake tags" in this directory does nothing even in the absence of a tags
> # file in this directory, because mmake uses VPATH to find ../library/tags
> # and believes it to be the tags file we are asking for.
> +#
> +# We give files in mdbcmp before the files in this directory because
> +# we want references to entiies defined in the modules copied from the
> +# mdbcomp directory to this directory to go the actual, effective definitions,
> +# the definitions which can be changed *without* those changes going away
> +# on the next copy.
Same errors as above, mdcmp, entiies; also repeated in the version in the slice
directory.
The diff looks fine otherwise.
Julien.
More information about the reviews
mailing list