Using Autofrisk (see Autofrisk) involves writing modules.af and adding two macro calls to configure.in. Here is an example of the latter:
AUTOFRISK_CHECKS
AUTOFRISK_SUMMARY
Here is an adaptation of the second "GUILE_*" example (see Using Autoconf Macros) that does basically the same thing.
(files-glob "my/*.scm")
(non-critical-external (database postgres))
(programs ((my gpgutils) "gpg")) ;; (my gpgutils) uses "gpg"
If the SRFI modules (see SRFI Support) were a separate package, we could
use guile-tools frisk to find out its dependencies:
$ guile-tools frisk srfi/*.scm
13 files, 18 modules (13 internal, 5 external), 9 edges
x (ice-9 and-let-star)
regular (srfi srfi-2)
x (ice-9 syncase)
regular (srfi srfi-11)
x (ice-9 rdelim)
regular (srfi srfi-10)
x (ice-9 receive)
regular (srfi srfi-8)
regular (srfi srfi-1)
x (ice-9 session)
regular (srfi srfi-1)
Then, we could use the following modules.af to help configure it:
(files-glob "srfi/*.scm")
(non-critical-external ;; relatively recent
(ice-9 rdelim)
(ice-9 receive)
(ice-9 and-let-star))
(pww-varname not_fully_supported)