[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH v1 1/7] tools/ocaml/Makefile: do not run ocamldep during make clean
On 03.08.2022 12:24, Edwin Torok wrote: > > >> On 3 Aug 2022, at 11:16, Jan Beulich <jbeulich@xxxxxxxx> 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 <edvin.torok@xxxxxxxxxx> >> >> 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? Hmm, not sure this couldn't end up suppressing the rul when it's needed. How about "ifeq ($(filter-out %clean,$(MAKECMDGOALS)),)"? (Off the top of my head I don't recall whether this may additionally need wrapping in $(strip ...).) Jan
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |