From: Nikodemus S. <tsi...@cc...> - 2003-09-28 09:48:55
|
In order to semi-gracefully compile and load foreign glue for UFFI with ASDF I've written a simple hack and put it up at: http://random-state.net/files/asdf-uffi-loader_latest.tar.gz I was wondering if it would make sense to a) Extend it to cover already compiled foreign libraries along the lines of: ... (:shared-library "libfoo") ... b) Write a similar asdf-extensions for sb-alien as well, so that one could do: (defsystem :foo :depends-on (:sb-alien-loader) ... c) Make these part of UFFI and and sbcl-contrib respectively. Cheers, -- Nikodemus |
From: Kevin R. <ke...@ro...> - 2003-10-04 21:16:04
|
Nikodemus Siivola wrote: > In order to semi-gracefully compile and load foreign glue for UFFI > with ASDF I've written a simple hack and put it up at: > http://random-state.net/files/asdf-uffi-loader_latest.tar.gz Thanks for the code, Nikodemus. Your program does help build on linux. Two issues about your program: - It doesn't check first if the library exists in the standard system library locations as it would exist on a Debian system - It doesn't build a correct shared library on other platforms that UFFI supports, such as Darwin, Solaris, and Win32. > I was wondering if it would make sense to These was some talk of this on IRC. In general, each program managing building its own shared libraries is far from optimal. It would be nice to centralize building of shared libraries and this building should work on varied lisp implementations and operating systems. Thus, such a builder really becomes a significant maintanence issue as a compatibility library. One simple way around it, perhaps, it to have .asd files invoke the "make" command and have the makefiles of libraries be responsible for building their own shared libraries. Kevin |