From f2cf940aa686862d43f73bd34b70cf6cfc18d358 Mon Sep 17 00:00:00 2001
From: retropikzel Example: Note that libc is exported by this library so you might not
- need to load it. Defines a new foreign function to be used from Scheme
code. Example:
+
+
- (define-c-library libc
(list "stdlib.h")
- "c"
+ libc-name
'((additional-versions ("" "0" "6"))
(additional-paths ("."))))Notes
code.(cond-expand
- (windows (define-c-library libc '("stdlib.h") "ucrtbase" '()))
- (else (define-c-library libc '("stdlib.h") "c" '("6"))))
+ (define-c-library libc '("stdlib.h") libc-name '("6"))
(define-c-procedure c-puts libc 'puts 'int '(pointer))
(c-puts "Message brought to you by foreign-c!")Notes
@@ -533,9 +537,7 @@ cp -r foreign-c/foreign snow/
Example:
; Load the shared library
-(cond-expand
- (windows (define-c-library libc-stdlib '("stdlib.h") "ucrtbase" '()))
- (else (define-c-library '("stdlib.h") "c" '("" "6"))))
+(define-c-library libc-stdlib '("stdlib.h") libc-name '("" "6"))
; Define C function that takes a callback
(define-c-procedure qsort libc-stdlib 'qsort 'void '(pointer int int callback))
@@ -825,17 +827,19 @@ func(&i);
Returns a newly allocated (unless empty) string whose character sequence is encoded by the given c-bytevector.
libc
-Since the library uses C standard internally, and that is - most likely library to have different name on different - operating systems. For example libc.so on Linux, ucrtbase.dll on - windows and libroot.so on Haiku. It makes sense to export it, - saving the users the trouble of figuring out which named shared - library they should load.
+libc-name
+Name of the C standard library on the current operating + system. Supported OS:
+See foreign/c/libc.scm to see which headers are included and what shared libraries are loaded.
Example:
-(define-c-procedure c-puts libc 'puts 'int '(pointer))
+ (define-c-library libc '("stdlib.h") libc-name '("" "6"))
+(define-c-procedure c-puts libc 'puts 'int '(pointer))
(c-puts "Message brought to you by foreign-c!")
Environment variables
Setting environment variables like this on Windows works for
diff --git a/documentation/foreign-c.pdf b/documentation/foreign-c.pdf
index 4aac401c6e08532e0b43528a15b78e2f6726cba1..24fc44a5f9ac0f8ab2fcf2d8b84235fa6c3cea3b 100644
GIT binary patch
delta 35231
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
XWo~41baIn8wHOI7ISM5uMNdWw8hRNo
delta 35300
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