[petsc-dev] [petsc-maint] Dependence of build on test target broken
Smith, Barry F.
bsmith at mcs.anl.gov
Fri Jul 12 07:25:51 CDT 2019
The problem is I understand why the old code shouldn't work but I don't understand why the new code messes up so badly.
Old code:
------------------
test: pre-clean report_tests
pre-clean:
@$(RM) -rf $(TESTDIR)/counts $(TESTLOGFILE)
@touch $(TESTLOGFILE)
@echo "Using MAKEFLAGS:" ${MAKEFLAGS}
The problem is that pre-clean and report_tests both start working at the same time. pre-clean recursively starts deleting items in $(TESTDIR)/counts but the targets of report_tests start putting new items into $(TESTDIR)/counts so that when rm -rf is ready to remove the directory there is now some files in there so you get the error about non-empty directory.
I figured well just run pre-clean before report_tests
New code:
test:
+@${OMAKE} -f gmakefile.test pre-clean
+@${OMAKE} -f gmakefile.test report_tests
Run pre-clean then report_tests but produces possibly two problems
How about
test: report_tests
report_tests: pre-clean
Haven't had a chance to test it properly but seems to work.
Barry
> On Jul 11, 2019, at 9:44 PM, Matthew Knepley <knepley at gmail.com> wrote:
>
> On Thu, Jul 11, 2019 at 8:46 PM Smith, Barry F. <bsmith at mcs.anl.gov> wrote:
> > On Jul 11, 2019, at 6:02 PM, Matthew Knepley via petsc-dev <petsc-dev at mcs.anl.gov> wrote:
> >
> > Barry,
> >
> > Do you want to handle the revert? Satish, do you?
>
> The problem is the old code doesn't properly handle the dependencies and always produces the error about deleting non-empty directory. I'd like to understand the underlying problem rather then just go from a new broken thing to an old broken thing.
>
> Okay, that is reasonable.
>
> Matt
>
> >
> > Thanks,
> >
> > Matt
> >
> > On Thu, Jul 11, 2019 at 3:02 PM Balay, Satish via petsc-maint <petsc-maint at mcs.anl.gov> wrote:
> > BTW: I think this commit also triggers the following error - but I haven't yet debugged this..
> >
> > http://ftp.mcs.anl.gov/pub/petsc/nightlylogs/archive/2019/07/10/examples_master_arch-osx-10.6-cxx-pkgs-opt_ipro.log
> >
> > Satish
> >
> > On Thu, 11 Jul 2019, Balay, Satish via petsc-dev wrote:
> >
> > > On Thu, 11 Jul 2019, Balay, Satish via petsc-dev wrote:
> > >
> > > > On Thu, 11 Jul 2019, Matthew Knepley via petsc-dev wrote:
> > > >
> > > > > After my latest pull of master, making the 'test' target no longer rebuilds
> > > > > the library. I have tested this on a few arches, and rebuilt. This is
> > > > > pretty inconvenient, but I do not know how to fix it.
> > > >
> > > >
> > > > git bisect gives the following.
> > > >
> > > > Satish
> > > >
> > > > -----
> > > >
> > > > 27d73d1f0a5c445a3a02971e31a2a1a02ed6d224 is the first bad commit
> > > > commit 27d73d1f0a5c445a3a02971e31a2a1a02ed6d224
> > > > Author: Barry Smith <bsmith at mcs.anl.gov>
> > > > Date: Sat Jun 22 22:56:05 2019 -0500
> > > >
> > > > Fix the error from gmakefile.test test about trying to remove a non-empty directory
> > > >
> > > > The problem was the target to rm -r the directory was running at the same time as
> > > > tests tests where generatering new files in the directory
> > > >
> > > > Commit-type: bug-fix
> > > >
> > > > :100644 100644 67a00e0c1c9ce3eb91a88f314e81a74ac278131f 9c0c1b310a238fc27df3af114ec96336ef5640d2 M gmakefile.test
> > >
> > > specifically the following change (with recursive make) likely broke the dependencies..
> > >
> > > >>>>>>>>>>>>>
> > > -test: pre-clean report_tests
> > > +test:
> > > + +@${OMAKE} -f gmakefile.test pre-clean
> > > + +@${OMAKE} -f gmakefile.test report_tests
> > > <<<<<<<<<<<
> > >
> > > Satish
> > >
> >
> >
> >
> > --
> > What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.
> > -- Norbert Wiener
> >
> > https://www.cse.buffalo.edu/~knepley/
>
>
>
> --
> What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.
> -- Norbert Wiener
>
> https://www.cse.buffalo.edu/~knepley/
More information about the petsc-dev
mailing list