summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Smith <psmith@gnu.org>2012-01-30 01:40:56 +0000
committerPaul Smith <psmith@gnu.org>2012-01-30 01:40:56 +0000
commite3b394f3f0c01539efccfda8450b39d070cdc71d (patch)
tree5c55ac3f218b1ec22fa97b2b10a39b7fc0b7c652
parentef6461611b8fb7cd4a92168d4c319153462afb5a (diff)
downloadgunmake-e3b394f3f0c01539efccfda8450b39d070cdc71d.tar.gz
Map Guile variable objects to the empty string.
In Guile 2.0, (define ...) results in a variable object. Ensure make converts that to an empty string to avoid spurious errors.
-rw-r--r--ChangeLog4
-rw-r--r--gmk-default.scm1
2 files changed, 5 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 9cbb1e6..f046a0f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
2012-01-29 Paul Smith <psmith@gnu.org>
+ * gmk-default.scm (to-string-maybe): Variables map to empty strings.
+ In Guile 2.0, (define ...) results in a variable object so make
+ sure that maps to an empty string in make.
+
* variable.c (parse_variable_definition): New POSIX assignment ::=
Take a struct variable to return more information after parsing.
(assign_variable_definition): New parse_variable_definition() call.
diff --git a/gmk-default.scm b/gmk-default.scm
index 9aca54a..4dabe25 100644
--- a/gmk-default.scm
+++ b/gmk-default.scm
@@ -20,6 +20,7 @@
;; In GNU make, "false" is the empty string
((or (not x)
(unspecified? x)
+ (variable? x)
(null? x)
(and (string? x) (string-null? x)))
#f)