> On 3 Aug 2022, at 11:16, Jan Beulich <[email protected]> wrote: > > On 29.07.2022 19:53, Edwin Török wrote: >> Trying to include .ocamldep.make will cause it to be generated if it >> doesn't exist. >> We do not want this during make clean: we would remove it anyway. >> >> Speeds up make clean. >> >> Before (measured on f732240fd3bac25116151db5ddeb7203b62e85ce, July 2022): >> ``` >> Parsing >> /home/edwin/xen2/tools/ocaml/libs/xl/../../../../tools/libs/light/libxl_types.idl >> Parsing >> /home/edwin/xen2/tools/ocaml/libs/xl/../../../../tools/libs/light/libxl_types.idl >> Parsing >> /home/edwin/xen2/tools/ocaml/libs/xl/../../../../tools/libs/light/libxl_types.idl >> Parsing >> /home/edwin/xen2/tools/ocaml/libs/xl/../../../../tools/libs/light/libxl_types.idl >> Parsing >> /home/edwin/xen2/tools/ocaml/libs/xl/../../../../tools/libs/light/libxl_types.idl >> >> Performance counter stats for 'make clean -j8 -s' (5 runs): >> >> 4.2233 +- 0.0208 seconds time elapsed ( +- 0.49% ) >> ``` >> >> After: >> ``` >> perf stat -r 5 --null make clean -j8 -s >> >> Performance counter stats for 'make clean -j8 -s' (5 runs): >> >> 2.7325 +- 0.0138 seconds time elapsed ( +- 0.51% ) >> ``` >> >> No functional change. >> >> Signed-off-by: Edwin Török <[email protected]> > > I've committed this as is since it was acked and is an improvement > in any event, but ... > >> --- a/tools/ocaml/Makefile.rules >> +++ b/tools/ocaml/Makefile.rules >> @@ -44,8 +44,10 @@ META: META.in >> >> ALL_OCAML_OBJ_SOURCES=$(addsuffix .ml, $(ALL_OCAML_OBJS)) >> >> +ifneq ($(MAKECMDGOALS),clean) >> .ocamldep.make: $(ALL_OCAML_OBJ_SOURCES) Makefile >> $(OCAML_TOPLEVEL)/Makefile.rules >> $(call quiet-command, $(OCAMLDEP) $(ALL_OCAML_OBJ_SOURCES) *.mli >> $o,MLDEP,) >> +endif > > ... what about the distclean goal?
Thanks for the suggestion, I see other Makefiles using 'findstring clean', would that be appropriate here? Something like this perhaps? From 53cbf81a9c7d5090443b5fe5de37a47118ac53d8 Mon Sep 17 00:00:00 2001 Message-Id: <53cbf81a9c7d5090443b5fe5de37a47118ac53d8.1659522178.git.edvin.to...@citrix.com> From: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <[email protected]> To: [email protected] Cc: Christian Lindig <[email protected]> Cc: David Scott <[email protected]> Cc: Wei Liu <[email protected]> Cc: Anthony PERARD <[email protected]> Date: Wed, 3 Aug 2022 11:21:46 +0100 Subject: [PATCH] tools/ocaml/Makefile.rules: do not run ocamldep on distclean MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Edwin Török <[email protected]> --- tools/ocaml/Makefile.rules | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/ocaml/Makefile.rules b/tools/ocaml/Makefile.rules index d368308d9b..c1c5dd3b39 100644 --- a/tools/ocaml/Makefile.rules +++ b/tools/ocaml/Makefile.rules @@ -44,7 +44,7 @@ META: META.in ALL_OCAML_OBJ_SOURCES=$(addsuffix .ml, $(ALL_OCAML_OBJS)) -ifneq ($(MAKECMDGOALS),clean) +ifeq (,$(findstring clean,$(MAKECMDGOALS))) .ocamldep.make: $(ALL_OCAML_OBJ_SOURCES) Makefile $(OCAML_TOPLEVEL)/Makefile.rules $(call quiet-command, $(OCAMLDEP) $(ALL_OCAML_OBJ_SOURCES) *.mli $o,MLDEP,) endif -- 2.34.1
