[Rivet] Rivet 2.6.0 sometimes fails to build: can't find tmp.XXX.cc file

Andy Buckley andy.buckley at cern.ch
Thu Jun 21 23:02:24 BST 2018


Cheers Ivan,

I've done something similar, using the extglob pattern pluginFOO/!(tmp)*.cc to choose the source files. I think it's doing the same thing. Thanks for the report and debugging!
Andy
Dr Andy Buckley, Lecturer / Royal Society University Research Fellow
Particle Physics Experiment Group, University of Glasgow

On Jun 21 2018, at 12:46 pm, Ivan Razumov <ivan.razumov at cern.ch> wrote:
>
> Dear Rivet developers,
> sometimes Rivet 2.6.0 build fails with an error like this:
> > make[5]: *** No rule to make target `tmp.oFwnz6L.cc', needed by
> `RivetLHCbAnalyses.so'.
>
> We believe that this is caused by "race condition" between Make building
> a list of files needed to build .so file and rivet-buildplugin doing
> it's job:
>
> % grep analyses/Makefile.am -e 'RivetLHCbAnalyses.so'
> RivetLHCbAnalyses.so : $(shell ls $(srcdir)/pluginLHCb/*.cc)
> % grep bin/rivet-buildplugin -e 'mktemp'
> tmpfile="$(mktemp tmp.XXXXXXXX)"
> mv "$tmpfile" "$tmpfile.cc"
>
> One possible solution to this "race condition" is to use find instead of
> ls, like this:
>
> $(shell find $(srcdir)/pluginLHCb -name '*.cc' -not -name 'tmp.*.cc')
> Best regards,
> Ivan for the GENSER team
>
> _______________________________________________
> Rivet mailing list
> Rivet at projects.hepforge.org
> https://www.hepforge.org/lists/listinfo/rivet
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://www.hepforge.org/lists-archive/rivet/attachments/20180621/a4a53f65/attachment.html>


More information about the Rivet mailing list