[asdf-devel] clisp getuid

Faré fahree at gmail.com
Mon Feb 8 15:39:25 UTC 2010


On 8 February 2010 09:47, Pascal Bourguignon <pjb at informatimago.com> wrote:
> In asdf.lisp downloaded from the web page this afternoon, line 500.
>
> With clisp, the package LINUX is available only in special circumstances.
> (it has to run on Linux, AND the glibc bindings module must have been
> compiled AND clisp must have been launched with it, usually with -Kfull).
>
> So when using the LINUX package on clisp, we must test for it explicitely:
>
> #+(and clisp #.(cl:if (cl:find-package "LINUX") '(:and) '(:or)))
> (defun get-uid () (linux:getuid))
>
> A better alternative is to use POSIX:UID, which is available on a wider
> range of systems (IIRC, MS-Windows is POSIX too):
> #+clisp (defun get-uid () (POSIX:UID))
>
> (and similarly for the PID if needed, (POSIX:PROCESS-ID))
>
Yes, POSIX:UID is better than LINUX:getuid. I'll replace it.
(For the record, that code snippet was stolen from common-lisp-controller.)

Note that this whole code is currently #-windows.
If there are reasons to believe it will work under Windows,
I may as well remove that #- (of course, some non-Windows systems
are POSIX and the CLISP change is still needed. Thanks a lot!)

[ François-René ÐVB Rideau | Reflection&Cybernethics | http://fare.tunes.org ]
``why'' is always relative to a model of possible explanations. It is never
an "absolute" question. Which is precisely what makes it meaningful.
		— Faré




More information about the asdf-devel mailing list