aboutsummaryrefslogtreecommitdiff
path: root/manifest-reference.md
diff options
context:
space:
mode:
authorLaurence Kedward <laurence.kedward@bristol.ac.uk>2021-04-16 16:07:55 +0100
committerGitHub <noreply@github.com>2021-04-16 16:07:55 +0100
commit4cbf9194e47991a208cd61b1f3a0a55f0ae16573 (patch)
treecbb083bd19a22a1236c31de991409ce06b595748 /manifest-reference.md
parenta540c83d9e303acd6fece95927c49fa8d2565366 (diff)
parentc80169d9ad9e619e9c022eedb2313e62ca4ef0a9 (diff)
downloadfpm-4cbf9194e47991a208cd61b1f3a0a55f0ae16573.tar.gz
fpm-4cbf9194e47991a208cd61b1f3a0a55f0ae16573.zip
Merge pull request #438 from LKedward/external-mods
Add: external-modules key to build table for non-fpm modules
Diffstat (limited to 'manifest-reference.md')
-rw-r--r--manifest-reference.md26
1 files changed, 26 insertions, 0 deletions
diff --git a/manifest-reference.md b/manifest-reference.md
index 1a33dc1..77ee2eb 100644
--- a/manifest-reference.md
+++ b/manifest-reference.md
@@ -33,6 +33,8 @@ Every manifest file consists of the following sections:
Toggle automatic discovery of executables
- [*link*](#link-external-libraries):
Link with external dependencies
+ - [*external-modules*](#use-system-installed-modules):
+ Specify modules used that are not within your fpm package
- Target sections:
- [*library*](#library-configuration)
Configuration of the library target
@@ -353,6 +355,30 @@ In this case the order of the libraries matters:
link = ["blas", "lapack"]
```
+## Use system-installed modules
+
+To use modules that are not defined within your fpm package or its dependencies,
+specify the module name using the *external-modules* key in the *build* table.
+
+> __Important:__ *fpm* cannot automatically locate external module files; it is the responsibility
+> of the user to specify the necessary include directories using compiler flags such that
+> the compiler can locate external module files during compilation.
+
+*Example:*
+
+```toml
+[build]
+external-modules = "netcdf"
+```
+
+Multiple external modules can be specified as a list.
+
+*Example:*
+
+```toml
+[build]
+external-modules = ["netcdf", "h5lt"]
+```
## Automatic target discovery