From 2d70e02128cb951a5c1a80b0b1ae4a83304a231a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hugo=20H=C3=B6rnquist?= Date: Wed, 29 Jul 2020 23:58:42 +0200 Subject: Make glob.scm use include#. --- module/glob.scm | 30 ++++-------------------------- 1 file changed, 4 insertions(+), 26 deletions(-) diff --git a/module/glob.scm b/module/glob.scm index dfa2a508..a436b810 100644 --- a/module/glob.scm +++ b/module/glob.scm @@ -1,6 +1,7 @@ (define-module (glob) :use-module (system foreign) :use-module (rnrs bytevectors) + :use-module (c cpp) :export (glob)) @@ -8,33 +9,10 @@ (error "Glob errored on ~s with errno = ~a" (pointer->string epath) eerrno)) -(eval-when (expand) - (define has-curly-infix - (memv 'curly-infix (read-options))) - (read-enable 'curly-infix)) - +;; NOTE there really should be an (c eval) module, to resolve symbols such as +;; @var{<<}. (define << ash) - -(define GLOB_ERR {1 << 0})#| Return on read errors. |# -(define GLOB_MARK {1 << 1})#| Append a slash to each name. |# -(define GLOB_NOSORT {1 << 2})#| Don't sort the names. |# -(define GLOB_DOOFFS {1 << 3})#| Insert PGLOB->gl_offs NULLs. |# -(define GLOB_NOCHECK {1 << 4})#| If nothing matches, return the pattern. |# -(define GLOB_APPEND {1 << 5})#| Append to results of a previous call. |# -(define GLOB_NOESCAPE {1 << 6})#| Backslashes don't quote metacharacters. |# -(define GLOB_PERIOD {1 << 7})#| Leading `.' can be matched by metachars. |# - -(define GLOB_MAGCHAR {1 << 8})#| Set in gl_flags if any metachars seen. |# -(define GLOB_ALTDIRFUNC {1 << 9})#| Use gl_opendir et al functions. |# -(define GLOB_BRACE {1 << 10})#| Expand "{a,b}" to "a" "b". |# -(define GLOB_NOMAGIC {1 << 11})#| If no magic chars, return the pattern. |# -(define GLOB_TILDE {1 << 12})#| Expand ~user and ~ to home directories. |# -(define GLOB_ONLYDIR {1 << 13})#| Match only directories. |# -(define GLOB_TILDE_CHECK {1 << 14})#| Like GLOB_TILDE but return an error - if the user name is not available. |# -(eval-when (expand) - (unless has-curly-infix - (read-disable 'curly-infix))) +(include# "/usr/include/glob.h" define-public) (define-values (glob% globfree%) (let ((this (dynamic-link))) -- cgit v1.2.3