summaryrefslogtreecommitdiffstats
path: root/Tests/FortranModules/Library
Commit message (Collapse)AuthorAgeFilesLines
* Ninja,Makefile: Restore Fortran module scanning in static library cycleBrad King2023-03-245-1/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Since * commit eed295fd8a (cmGlobalNinjaGenerator: require that dependency info files work, 2023-02-01, v3.26.0-rc1~1^2~1), and * commit 13810dee17 (cmDependsFortran: require that dependency info files work, 2023-02-01, v3.26.0-rc1~1^2), the Ninja and Makefile generators' module dependency scanning requires that scanning results from from linked targets is available before scanning the current target. In the case of a static library cycle, we cannot expect this information from other static libraries in the cycle. Previously we supported cyclic cases at the cost of silently ignoring missing information. We already compute a global order of targets that respects all `add_dependencies`, but may break `target_link_libraries` dependencies that occur in a static library cycle. Use this order to filter the linked targets so we only expect scanning results to be available from those targets that build before the current target. This approach is sufficient to support module dependency scanning in static library cycles as long as module dependencies do not cross between two libraries in the same cycle. Fixes: #24631
* Tests: Add symbols to FortranModules static librariesBrad King2019-09-262-0/+6
| | | | | | | | | | When GNU `ar` creates an archive with no symbols it has only an empty header but no string table. On Solaris the OS-provided `ld` fails in this case: ld: elf error: file libfoo.a: elf_getarsym Update our test to actually provide symbols from its archives.
* Tests: Split Fortran module testing into separate FortranModules testBrad King2016-09-224-0/+19
The main Fortran test is not granular enough. Split some into another test.