@@ -15,15 +15,52 @@ (a reentrant combination of vacall and trampoline) Installation instructions: - ./configure + mkdir make + cd make + ./configure --cache-file=config.cache make make check make install + +Note: passind --enable-shared to ./configure has no effect because +it makes no sense to do so: + +1) It is an overkill: libavcall, libvacall, libcallback have less than 1 KB + of executable code (most of the real code is in the header files): + +$ size libavcall.a + text data bss dec hex filename + 420 0 0 420 1a4 avcall.o (ex libavcall.a) + 81 0 0 81 51 structcpy.o (ex libavcall.a) +$ size libvacall.a + text data bss dec hex filename + 365 0 0 365 16d vacall.o (ex libvacall.a) + 203 0 0 203 cb misc.o (ex libvacall.a) + 81 0 0 81 51 structcpy.o (ex libvacall.a) +$ size libcallback.a + text data bss dec hex filename + 379 0 0 379 17b vacall.o (ex libcallback.a) + 203 0 0 203 cb misc.o (ex libcallback.a) + 81 0 0 81 51 structcpy.o (ex libcallback.a) + 287 0 0 287 11f trampoline.o (ex libcallback.a) + +When a shared library is loaded, you spend at least 4 KB for its code, +data and BSS. This is overkill for such a tiny library. + +2) The main function here is compiled from non-PIC assembly language. + I.e. relocations would remain. The GNU linker supports shared libraries + with relocations on x86 systems. But only on x86! + +3) Dynamic compilation breaks callback/trampoline_r self-tests at least + on x86_64-linux (and CLISP FFI too). + This is, of course, a bug in libffcall, but, even if it is fixed, it + will still make no sense to --enable-shared. + Files in this package: Documentation: @@ -39,11 +76,11 @@ callback/* the callback package Installation: configure configuration script - configure.in autoconf-2.10 source for the configuration script + configure.in autoconf-2.60 source for the configuration script autoconf/* auxiliary configuration scripts Makefile.in Makefile master Copyright notice: @@ -58,11 +95,15 @@ on this software. Distribution: -http://www.haible.de/bruno/gnu/ffcall-1.10.tar.gz -ftp://ftp.santafe.edu/pub/gnu/ffcall-1.10.tar.gz +CVS: +$ cvs -z3 -d:pserver:anonymous@cvs.savannah.gnu.org:/sources/libffcall co ffcall + +Bug reports to: + + https://savannah.gnu.org/bugs/?func=additem&group=libffcall Homepage: -http://www.haible.de/bruno/packages-ffcall.html + http://www.gnu.org/software/libffcall/