diff -ru --exclude=Makefile.in por/wh-20070527/src/interp/bookvol5.pamphlet wh-20070527.bb/src/interp/bookvol5.pamphlet --- por/wh-20070527/src/interp/bookvol5.pamphlet 2007-05-27 17:01:40.000000000 +0200 +++ wh-20070527.bb/src/interp/bookvol5.pamphlet 2007-06-14 00:05:07.000000000 +0200 @@ -658,6 +658,18 @@ (progn (setq $openServerIfTrue nil) (setq |$SpadServer| t))))) +#+:sbcl + (let* ((ax-dir (|getEnv| "AXIOM")) + (spad-lib (concatenate 'string ax-dir "/lib/libspad.so")) + (sock-fasl (concatenate 'string ax-dir "/lib/ffi-tst.fasl"))) + (when (axiom-probe-file spad-lib) + (sb-alien::load-shared-object spad-lib) + (load sock-fasl) + (let ((os (|openServer| $SpadServerName))) + (if (zerop os) + (progn + (setq $openServerIfTrue nil) + (setq |$SpadServer| t)))))) ;; We do the following test at runtime to allow us to use the same images ;; with Saturn and Sman. MCD 30-11-95 #+:CCL diff -ru --exclude=Makefile.in por/wh-20070527/src/lib/Makefile.pamphlet wh-20070527.bb/src/lib/Makefile.pamphlet --- por/wh-20070527/src/lib/Makefile.pamphlet 2007-05-27 17:01:54.000000000 +0200 +++ wh-20070527.bb/src/lib/Makefile.pamphlet 2007-06-14 00:05:08.000000000 +0200 @@ -41,6 +41,7 @@ <>= core_sources = bsdsignal.c cfuns-c.c sockio-c.c +core_objects = $(core_sources:.c=.$(OBJEXT)) @ @@ -116,7 +117,7 @@ .PRECIOUS: %.$(OBJEXT) %.$(OBJEXT): %.c $(axiom_c_macros_h) - $(CC) $(CCF) -c $(axiom_includes) $(AXIOM_X11_CFLAGS) $< -o $@ + $(CC) -fPIC $(CCF) -c $(axiom_includes) $(AXIOM_X11_CFLAGS) $< -o $@ @ @@ -168,7 +169,7 @@ all: all-ax all-ax all-lib: stamp -stamp: libspad.a $(other_objects) +stamp: libspad.a libspad.so $(other_objects) rm -f stamp $(STAMP) stamp @@ -176,6 +177,9 @@ $(AR) ru libspad.a $(libspad_a_objects) $(RANLIB) libspad.a +libspad.so: $(core_objects) + $(CC) -shared $(core_objects) -o $@ + <> <>