aboutsummaryrefslogtreecommitdiff
path: root/docs/markdown
diff options
context:
space:
mode:
authorMichael Hirsch, Ph.D <scivision@users.noreply.github.com>2019-03-14 02:04:25 -0400
committerMichael Hirsch, Ph.D <scivision@users.noreply.github.com>2019-03-14 02:04:25 -0400
commite491792a956dfae50cfae90cad7b7b6732b74c3d (patch)
tree6088081f136727d977e39206842c7f3f6ceff97e /docs/markdown
parent972857fc1d9b08ca462f2467b52b4836b59df45a (diff)
downloadmeson-e491792a956dfae50cfae90cad7b7b6732b74c3d.zip
meson-e491792a956dfae50cfae90cad7b7b6732b74c3d.tar.gz
meson-e491792a956dfae50cfae90cad7b7b6732b74c3d.tar.bz2
docs
Diffstat (limited to 'docs/markdown')
-rw-r--r--docs/markdown/snippets/fortran-include.md12
1 files changed, 12 insertions, 0 deletions
diff --git a/docs/markdown/snippets/fortran-include.md b/docs/markdown/snippets/fortran-include.md
new file mode 100644
index 0000000..a811765
--- /dev/null
+++ b/docs/markdown/snippets/fortran-include.md
@@ -0,0 +1,12 @@
+## Fortran `include` statements recursively parsed
+
+While non-standard and generally not recommended, some legacy Fortran programs use `include` directives to inject code inline.
+Since v0.51, Meson can handle Fortran `include` directives recursively.
+
+DO NOT list `include` files as sources for a target, as in general their syntax is not correct as a standalone target.
+In general `include` files are meant to be injected inline as if they were copy and pasted into the source file.
+
+`include` was never standard and was superceded by Fortran 90 `module`.
+
+The `include` file is only recognized by Meson if it has a Fortran file suffix, such as `.f` `.F` `.f90` `.F90` or similar.
+This is to avoid deeply nested scanning of large external legacy C libraries that only interface to Fortran by `include biglib.h` or similar.