On Jul 24, 2008, at 8:44 AM, Ralf Wildenhues wrote:
> I have no idea what Jeff's approach is,
My approach was to move some of the f77 files so that we could
traverse directories in order nicely.
> and I would not recommend
> entering some makefiles more than once, but what you can do is list
> some files outside their directory. I.e, you could have
> -- mpi/f77/Makefile_base.am --
> libmpi_f77_base_la_SOURCES = mpi/f77/file1.f ...
> -- Makefile.am --
> include mpi/f77/Makefile_base.am
> -- mpi/f77/Makefile.am --
> # This will appear later in SUBDIRS
> libmpi_f77_la_SOURCES = file3.f ...
I had this same idea while reading George's initial post -- using
multiple Makefile_<foo>'s in the f77 dir that then get included from
other places to enforce the build order. We already use "include" a
bit to decrease build times, so this isn't too much of a stretch for us.
This seems like a workable approach, and addresses George's concern of
keeping all the Fortran code together (I agree: splitting the Fortran
code into multiple places is kinda icky; it would be nice to not have
to put multiple subdirs under ompi/mpi/f77).
I'll run with this and see what I can come up with.