On Thu, Aug 30, 2018 at 4:02 PM Jed Brown <j...@jedbrown.org> wrote:
> Derek Gaston <fried...@gmail.com> writes:
>
> > Or: like I said earlier, maybe we just maintain two systems. PETSc has
> had
> > several different build systems all at the same time because developers
> > wanted different things.
>
> It's important to note that all build systems have used the same
> underlying specification. The GNU make and CMake systems both use/used
> a generator script that read the file lists from legacy makefiles.
> We've ditched CMake and are phasing out the legacy makefiles because GNU
> make is so much faster, more reliable, and less code.
>
Thanks Jed - definitely appreciate your insight!
> I'm with Paul that out-of-source builds are essential, but it isn't hard
> to put build products in a directory of the user's choosing (a la
> PETSC_ARCH). I have 35 PETSC_ARCHes at the moment and I appreciate
> being able to switch between them and update builds in a couple seconds.
>
I agree - I do think that a GNU Make solution can do out-of-source builds.
And if that's what's needed then we can make it happen here.
> The hard part is _not_ make (unless you absolutely need to work with the
> intersection of GNU and BSD makes). Configuration is hard and all
> solutions are terrible.
>
Luckily we have a really good set of configure scripts. "configure" has
its own problems... but we (mostly because of hard work by John) have a
pretty good handle on it. We wouldn't need to re-engineer that for this
new effort.
Derek
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Libmesh-devel mailing list
Libmesh-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libmesh-devel