Re: :out parameters
Ben <ben-PLN1j/[email protected]> Fri, 27 Aug 2004 04:45:09 -0400 (EDT)
| Newsgroups | gmane.lisp.uffi.devel |
|---|---|
| Message-ID | <[email protected]> |
On Fri, 27 Aug 2004, Kevin Rosenberg wrote:
> Would you resend make.sh? Perhaps in the body of the messary. My mime
> filter removes attachments that end with .sh.
at the bottom.
>> meanwhile, i would like to release some software which depends on the
>> :out parameters stuff. since a new release of UFFI is probably not
>> imminent, how should i do this?
>
> I'm glad to release updates. What I meant what that a rewrite of UFFI
> to use high-level macros and would be somewhat backwards incompatible
> is not imminent.
great. i should really write more tests and test it on some other
platforms first of course. the advantage of me releasing a patch with
my library is to gain testers, who will only get mad at ME when stuff
fails! after the dust settles, you can patch it back in. your choice.
> Also, I wonder about including def-funcallable in the next release of
> UFFI. You have that commented out. Besides the note about Allegro
> being incorrect, how do you feel about the rest of the macro?
theoretically correct but wholly untested. Also it is unknown if
Allegro will give information about how to do this, it's undocumented.
I found a message from someone who asked long ago, they got no
response (and neither did I.) That's the main reason I gave up. if
you're interested in it i can make some tests for it and run them
while i'm running my :out parameter tests.
the REALLY interesting thing of course would be to figure out
callbacks.....
take care, B
make.sh
#!/bin/sh
case "`uname`" in
Linux) os_linux=1 ;;
FreeBSD) os_freebsd=1 ;;
Darwin) os_darwin=1 ;;
SunOS) os_sunos=1 ;;
AIX) os_aix=1 ;;
*) echo "Unable to identify uname " `uname`
exit 1 ;;
esac
if [ "$os_linux" ]; then
gcc -fPIC -DPIC -c $SOURCE -o $OBJECT
gcc -shared $OBJECT -o $SHARED_LIB
elif [ "$os_freebsd" ]; then
gcc -fPIC -DPIC -c $SOURCE -o $OBJECT
gcc -shared $OBJECT -o $SHARED_LIB
elif [ "$os_darwin" ]; then
cc -dynamic -c $SOURCE -o $OBJECT
ld -bundle /usr/lib/bundle1.o -flat_namespace -undefined suppress -o $BASE.dylib $OBJECT
ld -bundle /usr/lib/bundle1.o -flat_namespace -undefined suppress /usr/lib/libz.dylib -o z.dylib
elif [ "$os_sunos" ]; then
cc -KPIC -c $SOURCE -o $OBJECT
cc -G $OBJECT -o $SHARED_LIB
elif [ "$os_aix" ]; then
gcc -c -D_BSD -D_NO_PROTO -D_NONSTD_TYPES -D_MBI=void $SOURCE
make_shared -o $SHARED_LIB $OBJECT
fi
exit 0