[CMake] Fortran dependency fixes
Maik Beckmann
beckmann.maik at googlemail.com
Tue Sep 23 11:09:20 EDT 2008
Am Dienstag, 23. September 2008 schrieb Myers, Gary:
> I have been using the Fortran dependency generator named makedepf90
> (Erik Edelmann - 2.8.8) for years now. Recently, we have encountered a
> bug in this application (infinite loop within the parser). I noticed
> that Fortran dependencies are generated in cmake with the use of an
> adaptation of makedepf90. Furthermore, I noticed that there seems to be
> a patch in cmake indicating that the infinite loop problem has been
> fixed.
>
> My problem is that there are significant differences between the
> adaptation of makedepf90 in cmake from the original open source
> (makedepf90 version 2.8.8) for me to back out the fix. One solution
> would be to just move over to the use of cmake, but this will not happen
> within our established processes. Is there a Fortran dependencies guru
> who can explain the recent changes to the makedepf90 (lex/yacc) which
> enhanced the support of the Fortran dependencies in cmake?
>
> -Gary
Hello Gary,
AFAIK Brad King (cmake core developer) ported once upon a time the
makedepf90-2.6.2 parser (lex&yacc) to cmake.
I've updated this port to makedef90-2.8.8.
If cmake's fortran lex/yacc files contain fixes for makedepf90 I'm willing to
port them back. Can you post a minimal example which triggers the infinite
loop you mentioned?
Best,
-- Maik
PS 1: As you mentioned the code in cmake is very different from makedepf90's.
All code doing real work is refactored out of the lex and yacc file. This
design (introduced by Brad), avoids the need for regenerating to the h/cxx
files as much as possible. This is important, since not all platforms have
lex and yacc and the generated sources have to be altered in order to work
with all supported compilers.
PS 2: CC to Erik
More information about the CMake
mailing list