summaryrefslogtreecommitdiff
path: root/tests/scripts/functions/guile
diff options
context:
space:
mode:
authorPaul Smith <psmith@gnu.org>2012-10-29 07:05:21 +0000
committerPaul Smith <psmith@gnu.org>2012-10-29 07:05:21 +0000
commit7670c84f7732db29f5a9d9c145c2327f4b575f91 (patch)
tree1fafd8949c867b89444ef57c6d068e7b8fb1a70e /tests/scripts/functions/guile
parent2efd6b47bf59c3202ccc6218b42ba360136d3789 (diff)
downloadgunmake-7670c84f7732db29f5a9d9c145c2327f4b575f91.tar.gz
Implement new "load" directive.
Provides support for dynamically loadable objects in GNU make, as a "technology preview".
Diffstat (limited to 'tests/scripts/functions/guile')
-rw-r--r--tests/scripts/functions/guile14
1 files changed, 14 insertions, 0 deletions
diff --git a/tests/scripts/functions/guile b/tests/scripts/functions/guile
index 82c02bc..93a18ab 100644
--- a/tests/scripts/functions/guile
+++ b/tests/scripts/functions/guile
@@ -5,6 +5,20 @@ $description = 'Test the $(guile ...) function.';
$details = 'This only works on systems that support it.';
# If this instance of make doesn't support GNU Guile, skip it
+# This detects if guile is loaded using the "load" directive
+# $makefile = get_tmpfile();
+# open(MAKEFILE, "> $makefile") || die "Failed to open $makefile: $!\n";
+# print MAKEFILE q!
+# -load guile
+# all: ; @echo $(filter guile,$(.LOADED))
+# !;
+# close(MAKEFILE) || die "Failed to write $makefile: $!\n";
+# $cmd = subst_make_string("#MAKEPATH# -f $makefile");
+# $log = get_logfile(0);
+# $code = run_command_with_output($log, $cmd);
+# read_file_into_string ($log) eq "guile\n" and $FEATURES{guile} = 1;
+
+# If we don't have Guile support, never mind.
exists $FEATURES{guile} or return -1;
# Verify simple data type conversions