mescc: Support for non-Guix[SD] builds.
authorJan Nieuwenhuizen <janneke@gnu.org>
Tue, 20 Jun 2017 17:06:19 +0000 (19:06 +0200)
committerJan Nieuwenhuizen <janneke@gnu.org>
Tue, 20 Jun 2017 17:42:37 +0000 (19:42 +0200)
* module/language/c99/compiler.mes (c99-input->full-ast): Cater for
  C_INCLUDE_PATH not set.  Fixes non-Guix[SD] builds.

module/language/c99/compiler.mes
module/language/c99/compiler.scm

index 970430eb0be9bb49560a3ac23f4d3d4cde63b753..979c1b8bba41b75df99749da1e93b56574303512 100644 (file)
@@ -30,6 +30,7 @@
   (set-port-encoding! (current-output-port) "ISO-8859-1"))
  (guile)
  (mes
+  (mes-use-module (srfi srfi-26))
   (mes-use-module (mes pmatch))
   (mes-use-module (nyacc lang c99 parser))
   (mes-use-module (mes elf-util))
@@ -56,7 +57,7 @@
 (define* (c99-input->full-ast #:key (defines '()) (includes '()))
   (let ((include (if (equal? %prefix "") "mlibc/include" (string-append %prefix "/share/mlibc/include"))))
     (parse-c99
-     #:inc-dirs (append includes (cons* "." "mlibc" "src" "out" "out/src" include (string-split (getenv "C_INCLUDE_PATH") #\:)))
+     #:inc-dirs (append includes (cons* "." "mlibc" "src" "out" "out/src" include (or (and=> (getenv "C_INCLUDE_PATH") (cut string-split <> #\:)) '())))
      #:cpp-defs `(
                   "POSIX=0"
                   "_POSIX_SOURCE=0"
index c643b100f7721a55deca5ea15e0038c64a2afcae..32dd3df988cefbcc908fd2d9cbd35b578111f972 100644 (file)
@@ -24,6 +24,7 @@
 
 (define-module (language c99 compiler)
   #:use-module (srfi srfi-1)
+  #:use-module (srfi srfi-26)
   #:use-module (system base pmatch)
   #:use-module (ice-9 optargs)
   #:use-module (ice-9 pretty-print)