From: Thien-Thi Nguyen <ttn@gnuvola.org>
To: "Issac Trotts" <issac.trotts@gmail.com>
Cc: guile-user@gnu.org, guile-sources@gnu.org
Subject: Re: ttn-pers-scheme 0.48 available
Date: Mon, 09 Apr 2007 20:59:27 +0200 [thread overview]
Message-ID: <87wt0l9xww.fsf@ambire.localdomain> (raw)
In-Reply-To: <a88ba3360704082248j7e4b9ee9tc40271d8be22307b@mail.gmail.com> (Issac Trotts's message of "Sun\, 8 Apr 2007 22\:48\:41 -0700")
[-- Attachment #1: Type: text/plain, Size: 1932 bytes --]
() "Issac Trotts" <issac.trotts@gmail.com>
() Sun, 8 Apr 2007 22:48:41 -0700
Here's what it does on my installation of guile 1.9.0:
[...]
checking if (guile-user) exports `close-all-fdes-except'... no
configure: error: module (guile-user) does not export close-all-fdes-except;
required
Do you know how to fix this?
one way is to try Guile 1.4.x, but i suspect that is not what you would
prefer.
another way is to avoid using module (ttn call-process) and its
downstreams. here is a pruned list of dependencies:
x (ttn call-process)
autoload (ttn-do run-signed-batch-job)
i (ttn call-process)
regular (ttn call-process-to-buffers)
i (ttn call-process-to-buffers)
regular (ttn make-buffered-caller)
i (ttn make-buffered-caller)
autoload (ttn gpgutils)
x (ttn make-buffered-caller)
regular (ttn-do htmlize-scheme)
regular (ttn-do publish)
autoload (ttn-do run-signed-batch-job)
regular (ttn-do snap-iso)
it might be incomplete. here is the emacs-lisp expression evaluated to
get all the deps (tweak to suit your site):
(shell-command "
cd ~/build/ttn-pers-scheme && \
( cat ~/build/gnuvola/software/*/frisk.out ;
echo ;
echo '(internal downstream)' ;
guile-tools frisk -id ttn/*.scm ) \\
| uniq | tee `date +.ttn.usage.%Y-%m-%d`")
full list can be found (temporarily, for a couple days) at:
<http://www.gnuvola.org/.ttn.usage.2007-04-09>
once you've decided you can live w/o these things, you can hack the
configure script to not fail due to that missing function.
thirdly, another way is to add the function to your guile then restart
the installation to ttn-pers-scheme. attached (to avoid mail system
mangling) is the function extracted from libguile/ioext.c. some minor
porting probably required.
lastly, another way is to change (ttn call-process) so that it doesn't
need the function at all. perhaps that is easy, i don't know.
thi
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: close-all-fdes-except from libguile/ioext.c --]
[-- Type: text/x-csrc, Size: 1414 bytes --]
SCM_DEFINE (scm_close_all_fdes_except, "close-all-fdes-except", 0, 0, 1,
(SCM fdes_list),
"Close all file descriptors for ports used by the interpreter\n"
"except for those supplied as arguments. This procedure\n"
"is intended to be used before an exec(2) call. The related\n"
"procedure @code{close-all-ports-except} is unsuitable for that\n"
"because it flushes port buffers.")
#define FUNC_NAME s_scm_close_all_fdes_except
{
int i, sysrv;
SCM_VALIDATE_REST_ARGUMENT (fdes_list);
for (i = 0; i < scm_port_table_size; i++)
{
SCM thisport = scm_port_table[i]->port;
SCM ls = fdes_list; int matchp = 0;
SCM fd;
if (! SCM_OPFPORTP (thisport))
continue;
fd = scm_fileno (thisport);
while (SCM_NNULLP (ls) && !matchp)
{
if (SCM_EQ_P (SCM_CAR (ls), fd))
{
/* This used to simply goto next_port, but gcc 3.3.2 warns
"deprecated use of label at end of compound statement".
The march of progress and all that. */
matchp = 1;
break;
}
ls = SCM_CDR (ls);
}
if (!matchp)
{
SCM_SYSCALL (sysrv = close (SCM_INUM (fd)));
if (sysrv < 0)
SCM_SYSERROR;
}
/* next_port: */
}
return SCM_UNSPECIFIED;
}
#undef FUNC_NAME
[-- Attachment #3: Type: text/plain, Size: 140 bytes --]
_______________________________________________
Guile-user mailing list
Guile-user@gnu.org
http://lists.gnu.org/mailman/listinfo/guile-user
next prev parent reply other threads:[~2007-04-09 18:59 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-04-07 21:34 ttn-pers-scheme 0.48 available Thien-Thi Nguyen
2007-04-09 5:48 ` Issac Trotts
2007-04-09 18:59 ` Thien-Thi Nguyen [this message]
2007-04-09 20:37 ` Issac Trotts
2007-04-09 21:43 ` Thien-Thi Nguyen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/guile/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87wt0l9xww.fsf@ambire.localdomain \
--to=ttn@gnuvola.org \
--cc=guile-sources@gnu.org \
--cc=guile-user@gnu.org \
--cc=issac.trotts@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).