<div dir="ltr"><div dir="ltr">On Wed, Oct 23, 2019 at 4:45 PM Jed Brown <<a href="mailto:jed@jedbrown.org">jed@jedbrown.org</a>> wrote:<br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Matthew Knepley <<a href="mailto:knepley@gmail.com" target="_blank">knepley@gmail.com</a>> writes:<br>
<br>
> On Wed, Oct 23, 2019 at 2:27 PM Jed Brown <<a href="mailto:jed@jedbrown.org" target="_blank">jed@jedbrown.org</a>> wrote:<br>
><br>
>> Matthew Knepley via petsc-dev <<a href="mailto:petsc-dev@mcs.anl.gov" target="_blank">petsc-dev@mcs.anl.gov</a>> writes:<br>
>><br>
>> > On Wed, Oct 23, 2019 at 11:24 AM Faibussowitsch, Jacob via petsc-dev <<br>
>> > <a href="mailto:petsc-dev@mcs.anl.gov" target="_blank">petsc-dev@mcs.anl.gov</a>> wrote:<br>
>> >> As I am largely unfamiliar with the internals of the configure process,<br>
>> >> this is potentially more of an involved change than I am imagining,<br>
>> given<br>
>> >> that many libraries likely have many small dependencies and hooks which<br>
>> >> have to be set throughout the configuration process, and so its possible<br>
>> >> not everything could be skipped.<br>
>> >><br>
>> ><br>
>> > We had this many years ago. It was removed because the benefits did not<br>
>> > outweigh the costs.<br>
>><br>
>> I don't know if it's still the case, but it should be possible to run<br>
>> non-interactively (like apt-get -y). My bigger complaint is that<br>
>> missing dependencies aren't resolved in the first couple seconds.<br>
>><br>
><br>
> How do you know that you actually have something until you actually<br>
> run the tests? This is the classic misconception of pkg-config, "I'll<br>
> just believe the user", which generated 99% of user mail over the<br>
> first 20 years of PETSc.<br>
<br>
All other build systems get this right. You're asking to build X and Y,<br>
where Y depends on Z, and there is no --download-Z or --with-Z. You<br>
shouldn't need to build X before noticing that Z is unavailable.<br>
</blockquote></div><br clear="all"><div>That is an unreliable check for Z. You would not eliminate the case where</div><div>you give --with-Z, but the check fails, so Z is not available, but you do not</div><div>find out until checking X or Y.</div><div><br></div><div> Matt</div><div><br></div>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div>What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>-- Norbert Wiener</div><div><br></div><div><a href="http://www.cse.buffalo.edu/~knepley/" target="_blank">https://www.cse.buffalo.edu/~knepley/</a><br></div></div></div></div></div></div></div></div>