From ea37de65f72068cacd4647ff0e031cf11bd1f626 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 19 Apr 2016 23:38:48 -0400 Subject: [PATCH] Read c headers included by a library --- cyclone.scm | 6 ++++++ scheme/cyclone/cgen.sld | 1 + 2 files changed, 7 insertions(+) diff --git a/cyclone.scm b/cyclone.scm index 62257d65..afe68920 100644 --- a/cyclone.scm +++ b/cyclone.scm @@ -52,6 +52,7 @@ (define lib-name '()) (define lib-exports '()) (define lib-renamed-exports '()) + (define c-headers '()) (emit *c-file-header-comment*) ; Guarantee placement at top of C file @@ -63,6 +64,7 @@ (let ((includes (lib:includes (car input-program)))) (set! program? #f) (set! lib-name (lib:name (car input-program))) + (set! c-headers (lib:include-c-headers (car input-program))) (set! lib-exports (cons (lib:name->symbol lib-name) @@ -262,6 +264,9 @@ (trace:error "DEBUG, existing program") (exit 0)) + (trace:info "---------------- C headers: ") + (trace:info c-headers) + (trace:info "---------------- C code:") (mta:code-gen input-program program? @@ -269,6 +274,7 @@ lib-exports imported-vars module-globals + c-headers lib-deps src-file) (return '())))) ;; No codes to return diff --git a/scheme/cyclone/cgen.sld b/scheme/cyclone/cgen.sld index bbe577c2..b3e9be5e 100644 --- a/scheme/cyclone/cgen.sld +++ b/scheme/cyclone/cgen.sld @@ -1370,6 +1370,7 @@ lib-exports imported-globals globals + c-headers required-libs src-file) (set! *global-syms* (append globals (lib:idb:ids imported-globals)))