diff options
36 files changed, 323 insertions, 242 deletions
@@ -1,3 +1,8 @@ +2008-03-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * configure.ac.pamphlet (axiom_c_runtime): Don't include core, as + it is always built into libopen-axiom-core. + 2008-02-17 Gabriel Dos Reis <gdr@cs.tamu.edu> * Makefile.pamphlet (install): Tidy. @@ -20780,8 +20780,7 @@ fi # FIXME: Move this out of here. -# The core runtime is always built. -axiom_c_runtime=core +axiom_c_runtime= diff --git a/configure.ac b/configure.ac index ab152548..80572936 100644 --- a/configure.ac +++ b/configure.ac @@ -304,8 +304,7 @@ AC_SUBST(axiom_fasl_type) AC_SUBST(axiom_all_prerequisites) # FIXME: Move this out of here. -# The core runtime is always built. -axiom_c_runtime=core +axiom_c_runtime= AC_SUBST(axiom_c_runtime) AC_CHECK_HEADERS([signal.h], diff --git a/configure.ac.pamphlet b/configure.ac.pamphlet index 4f5667ff..03c8a06a 100644 --- a/configure.ac.pamphlet +++ b/configure.ac.pamphlet @@ -1192,8 +1192,7 @@ esac <<build utils>> # FIXME: Move this out of here. -# The core runtime is always built. -axiom_c_runtime=core +axiom_c_runtime= AC_SUBST(axiom_c_runtime) <<C headers and libraries>> diff --git a/src/ChangeLog b/src/ChangeLog index 2bfe9404..eaeebd10 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,5 +1,37 @@ 2008-03-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + * include/cfuns.h (findString): Rename from include/cfuns-c.H1. + Make DLL-aware. + * include/open-axiom.h: New. + * include/sockio.h: Make DLL-aware. + * include/bsdsignal.H1: Fold content into include/bsdsignal.h. + Remove. + * lib/bsdsignal.c: Don't include bsdsignal.H1 + * lib/fnct_key.c: Likewise. + * lib/sockio-c.c: Likewise. + * lib/Makefile.in (other_SOURCES): Remove. + (other_objects): Likewise. + (pamphlets): Likewise. + (clean-local): Don't remove source files. + (libopen_axiom_core_la_SOURCES): New. + (libopen_axiom_core_la_objects): Likewise. + (stamp): Require $(axiom_target_libdir)/libopen-axiom-core.la too. + * graph/view2D/main2d.c: Likewise. + * clef/edible.c: Likewise. + * graph/view3D/main3d.c: Likewise. + * graph/view3D/testcol.c: Likewise. + * graph/viewman/sselect.c: Likewise. + * graph/viewman/viewman.c: Likewise. + * hyper/htinp.c: Likewise. + * hyper/hyper.c: Likewise. + * hyper/spadbuf.c: Likewise. + * hyper/spadint.c: Likewise. + * sman/session.c: Likewise. + * sman/sman.c: Likewise. + * sman/spadclient.c: Likewise. + +2008-03-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + * algebra/polset.spad.pamphlet (exactQuo$PSETCAT-): Don't conditionally define as local function. Update cached Lisp translation. diff --git a/src/clef/Makefile.in b/src/clef/Makefile.in index be89672c..65d39a42 100644 --- a/src/clef/Makefile.in +++ b/src/clef/Makefile.in @@ -1,4 +1,4 @@ -# Copyright (C) 2007, Gabriel Dos Reis. +# Copyright (C) 2007-2008, Gabriel Dos Reis. # All rights reserved. # # Redistribution and use in source and binary forms, with or without @@ -39,13 +39,13 @@ clef_SOURCES = edible.c clef_objects = $(clef_SOURCES:.c=.lo) -clef_LDADD = $(axiom_target_libdir)/libspad.la +clef_LDADD = $(axiom_target_libdir)/libspad.la \ + $(axiom_target_libdir)/libopen-axiom-core.la + clef_DEPENDENCIES = subdir = src/clef/ -pamphlets = Makefile.pamphlet - .PHONY: all all-clef all: all-ax diff --git a/src/clef/edible.c b/src/clef/edible.c index bfe76a91..29a1b2fe 100644 --- a/src/clef/edible.c +++ b/src/clef/edible.c @@ -58,7 +58,6 @@ #include "com.h" #include "bsdsignal.h" -#include "bsdsignal.H1" #include "openpty.H1" #include "prt.H1" #include "edin.H1" diff --git a/src/graph/view2D/Makefile.in b/src/graph/view2D/Makefile.in index 905d8179..cc9b80cf 100644 --- a/src/graph/view2D/Makefile.in +++ b/src/graph/view2D/Makefile.in @@ -48,7 +48,8 @@ view2D_objects = $(view2D_SOURCES:.c=.lo) Gfun_objects = ../Gdraws/Gfun.lo -view2D_LDADD = $(axiom_target_libdir)/libspad.la +view2D_LDADD = $(axiom_target_libdir)/libspad.la \ + $(axiom_target_libdir)/libopen-axiom-core.la view2D_DEPENDENCIES = $(Gfun_objects) diff --git a/src/graph/view2D/main2d.c b/src/graph/view2D/main2d.c index 8ff6b8e7..c7ade472 100644 --- a/src/graph/view2D/main2d.c +++ b/src/graph/view2D/main2d.c @@ -45,7 +45,6 @@ #include "header2.h" #include "bsdsignal.h" #include "globals2.h" -#include "bsdsignal.H1" #include "all_2d.H1" #include "Gfun.H1" #include "util.H1" diff --git a/src/graph/view3D/Makefile.in b/src/graph/view3D/Makefile.in index e8fc9f44..edd6a2e9 100644 --- a/src/graph/view3D/Makefile.in +++ b/src/graph/view3D/Makefile.in @@ -57,7 +57,8 @@ view3D_objects = $(addprefix $(builddir)/, $(view3D_SOURCES:.c=.lo)) Gfun_objects = ../Gdraws/Gfun.lo -view3D_LDADD = $(axiom_target_libdir)/libspad.la +view3D_LDADD = $(axiom_target_libdir)/libspad.la \ + $(axiom_target_libdir)/libopen-axiom-core.la view3D_DEPENDENCIES = $(Gfun_objects) subdir = src/graph/view3D/ diff --git a/src/graph/view3D/main3d.c b/src/graph/view3D/main3d.c index 2197538e..7929199b 100644 --- a/src/graph/view3D/main3d.c +++ b/src/graph/view3D/main3d.c @@ -47,7 +47,6 @@ #include "process.h" #include "bsdsignal.h" -#include "bsdsignal.H1" #include "util.H1" #include "Gfun.H1" #include "XSpadFill.H1" diff --git a/src/graph/view3D/testcol.c b/src/graph/view3D/testcol.c index ee61574e..a48cb9c8 100644 --- a/src/graph/view3D/testcol.c +++ b/src/graph/view3D/testcol.c @@ -47,7 +47,6 @@ #include "process.h" #include "bsdsignal.h" -#include "bsdsignal.H1" #include "util.H1" #include "Gfun.H1" #include "XSpadFill.H1" diff --git a/src/graph/viewAlone/Makefile.in b/src/graph/viewAlone/Makefile.in index 7cb466fa..a5b12473 100644 --- a/src/graph/viewAlone/Makefile.in +++ b/src/graph/viewAlone/Makefile.in @@ -44,7 +44,8 @@ viewAlone_SOURCES = viewAlone.c spoonComp.c spoon2D.c viewAlone_objects = $(viewAlone_SOURCES:.c=.lo) -viewAlone_LDADD = $(axiom_target_libdir)/libspad.la +viewAlone_LDADD = $(axiom_target_libdir)/libspad.la \ + $(axiom_target_libdir)/libopen-axiom-core.la viewAlone_DEPENDENCIES = subdir = src/graph/viewAlone/ diff --git a/src/graph/viewman/Makefile.in b/src/graph/viewman/Makefile.in index cc857bc6..066ff0a5 100644 --- a/src/graph/viewman/Makefile.in +++ b/src/graph/viewman/Makefile.in @@ -53,7 +53,8 @@ viewman_headers = $(srcdir)/viewman.h \ viewman_DEPENDENCIES = -viewman_LDFLAGS = $(axiom_target_libdir)/libspad.la +viewman_LDFLAGS = $(axiom_target_libdir)/libspad.la \ + $(axiom_target_libdir)/libopen-axiom-core.la subdir = src/graph/viewman/ diff --git a/src/graph/viewman/sselect.c b/src/graph/viewman/sselect.c index 1cb584c5..a9b16528 100644 --- a/src/graph/viewman/sselect.c +++ b/src/graph/viewman/sselect.c @@ -46,7 +46,6 @@ #include "bsdsignal.h" #include "sockio.h" -#include "bsdsignal.H1" #include "cleanup.H1" #include "sselect.H1" diff --git a/src/graph/viewman/viewman.c b/src/graph/viewman/viewman.c index 63136731..441d0f7a 100644 --- a/src/graph/viewman/viewman.c +++ b/src/graph/viewman/viewman.c @@ -53,7 +53,6 @@ #include "bsdsignal.h" -#include "bsdsignal.H1" #include "util.H1" #include "sockio.h" #include "fun2D.H1" diff --git a/src/hyper/Makefile.in b/src/hyper/Makefile.in index 7f976173..45f22ac1 100644 --- a/src/hyper/Makefile.in +++ b/src/hyper/Makefile.in @@ -68,7 +68,8 @@ hypertex_SOURCES = addfile.c cond.c dialog.c display.c event.c extent1.c \ parse-paste.c parse-types.c ReadBitmap.c scrollbar.c \ show-types.c spadint.c titlebar.c -libspad_la = $(axiom_target_libdir)/libspad.la +libspad_la = $(axiom_target_libdir)/libspad.la \ + $(axiom_target_libdir)/libopen-axiom-core.la hypertex_objects = $(hypertex_SOURCES:.c=.lo) hypertex_LDADD = $(libspad_la) diff --git a/src/hyper/htinp.c b/src/hyper/htinp.c index 5c129de8..2e43a6e4 100644 --- a/src/hyper/htinp.c +++ b/src/hyper/htinp.c @@ -50,7 +50,6 @@ #include "all_hyper_proto.H1" #include "sockio.h" -#include "bsdsignal.H1" extern char **input_file_list; extern int input_file_count; diff --git a/src/hyper/hyper.c b/src/hyper/hyper.c index 1b71b76e..ef00c891 100644 --- a/src/hyper/hyper.c +++ b/src/hyper/hyper.c @@ -64,7 +64,7 @@ #include "all_hyper_proto.H1" #include "sockio.h" -#include "bsdsignal.H1" + /* * Here is a flag used to tell me whether I made a good connection to the * menu server. Needed so I don't send spad commands when I should not diff --git a/src/hyper/spadbuf.c b/src/hyper/spadbuf.c index 42b3f482..f67c1519 100644 --- a/src/hyper/spadbuf.c +++ b/src/hyper/spadbuf.c @@ -57,7 +57,6 @@ #include "com.h" #include "spadbuf.H1" -#include "bsdsignal.H1" #include "sockio.h" #include "edin.H1" #include "wct.H1" diff --git a/src/hyper/spadint.c b/src/hyper/spadint.c index da149b8d..8969ab34 100644 --- a/src/hyper/spadint.c +++ b/src/hyper/spadint.c @@ -49,7 +49,6 @@ #include "all_hyper_proto.H1" #include "sockio.h" -#include "bsdsignal.H1" typedef struct sock_list { /* linked list of Sock */ diff --git a/src/include/bsdsignal.H1 b/src/include/bsdsignal.H1 deleted file mode 100644 index 621b9307..00000000 --- a/src/include/bsdsignal.H1 +++ /dev/null @@ -1 +0,0 @@ -extern SignalHandlerFunc bsdSignal(int , SignalHandlerFunc , int ); diff --git a/src/include/bsdsignal.h b/src/include/bsdsignal.h index e42e0fee..5b724bbf 100644 --- a/src/include/bsdsignal.h +++ b/src/include/bsdsignal.h @@ -1,44 +1,48 @@ /* -Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are -met: - - - Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - - - Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in - the documentation and/or other materials provided with the - distribution. - - - Neither the name of The Numerical ALgorithms Group Ltd. nor the - names of its contributors may be used to endorse or promote products - derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS -IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED -TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER -OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR -PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF -LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + Copyright (C) 1991-2002, The Numerical Algorithms Group Ltd. + All rights reserved. + Copyright (C) 2007-2008, Gabriel Dos Reis. + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + + - Neither the name of The Numerical Algorithms Group Ltd. nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS + IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER + OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#ifndef _BSDSIGNAL_H_ -#define _BSDSIGNAL_H_ +#ifndef OPENAXIOM_BSDSIGNAL_included +#define OPENAXIOM_BSDSIGNAL_included +#include "open-axiom.h" #define RestartSystemCalls 1 #define DontRestartSystemCalls 0 typedef void (* SignalHandlerFunc)(int); +OPENAXIOM_EXPORT SignalHandlerFunc bsdSignal(int, SignalHandlerFunc, int); -#endif /* _BSDSIGNAL */ +#endif /* OPENAXIOM_BSDSIGNAL_included */ diff --git a/src/include/cfuns-c.H1 b/src/include/cfuns-c.H1 deleted file mode 100644 index cb580a64..00000000 --- a/src/include/cfuns-c.H1 +++ /dev/null @@ -1,7 +0,0 @@ -extern int addtopath(char * ); -extern int directoryp(char * ); -extern int make_path_from_file(char * , char * ); -extern int writeablep(char * ); -extern int readablep(char * ); -extern long findString(char * , char * ); -extern int copyEnvValue(char * , char * ); diff --git a/src/include/cfuns.h b/src/include/cfuns.h new file mode 100644 index 00000000..b4dcbb8b --- /dev/null +++ b/src/include/cfuns.h @@ -0,0 +1,49 @@ +#ifndef OPENAXIOM_CFUNS_included +#define OPENAXIOM_CFUNS_included + +/* + Copyright (C) 1991-2002, The Numerical ALgorithms Group Ltd. + All rights reserved. + Copyright (C) 2007-2008, Gabriel Dos Reis. + All rights resrved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + + - Neither the name of The Numerical ALgorithms Group Ltd. nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS + IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER + OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#include "open-axiom.h" + +OPENAXIOM_EXPORT int addtopath(char*); +OPENAXIOM_EXPORT int directoryp(char*); +OPENAXIOM_EXPORT int make_path_from_file(char*, char*); +OPENAXIOM_EXPORT int writeablep(char*); +OPENAXIOM_EXPORT int readablep(char*); +OPENAXIOM_EXPORT long findString(char*, char*); +OPENAXIOM_EXPORT int copyEnvValue(char*, char*); + +#endif /* OPENAXIOM_CFUNS_included */ diff --git a/src/include/sockio.h b/src/include/sockio.h index 5b4f7d9f..aaa1c5f5 100644 --- a/src/include/sockio.h +++ b/src/include/sockio.h @@ -46,6 +46,7 @@ #endif #include "axiom-c-macros.h" +#include "open-axiom.h" /* On Windows, a socket identifier is not a file descriptor. It is represented by an integer type, but that integer type is not just @@ -78,70 +79,70 @@ typedef struct { } Sock; -extern int get_int(Sock*); -extern char* get_string(Sock*); -extern double get_float(Sock*); -extern Sock* connect_to_local_server(char*, int, int); -extern int sread(Sock*, char*, int, char*); -extern double plus_infinity(void); -extern double minus_infinity(void); -extern double NANQ(void); -extern void sigpipe_handler(int); -extern int wait_for_client_read(Sock*, char*, int, char*); -extern int wait_for_client_write(Sock*, char*, int, char*); -extern int swrite(Sock*, char*, int, char*); -extern int sselect(int, fd_set*, fd_set*, fd_set*, void*); -extern int fill_buf(Sock*, char*, int, char*); -extern int sock_get_int(int); -extern int get_ints(Sock*, int*, int); -extern int sock_get_ints(int, int*, int); -extern int send_int(Sock*, int); -extern int sock_send_int(int, int); -extern int send_ints(Sock*, int*, int); -extern int sock_send_ints(int, int*, int); -extern int send_string(Sock*, char*); -extern int send_string_len(Sock*, char*, int); -extern int sock_send_string(int, char*); -extern int sock_send_string_len(int, char*, int); -extern int send_strings(Sock*, char**, int); -extern int sock_send_strings(int, char**, int); -extern char* sock_get_string(int); -extern char* get_string_buf(Sock*, char*, int); -extern char* sock_get_string_buf(int, char*, int); -extern int get_strings(Sock*, char**, int); -extern int sock_get_strings(int, char**, int); -extern int send_float(Sock*, double); -extern int sock_send_float(int, double); -extern int send_sfloats(Sock*, float*, int); -extern int sock_send_sfloats(int, float*, int); -extern int send_floats(Sock*, double*, int); -extern int sock_send_floats(int, double*, int); -extern double sock_get_float(int); -extern int get_sfloats(Sock*, float*, int); -extern int sock_get_sfloats(int, float*, int); -extern int get_floats(Sock*, double*, int); -extern int sock_get_floats(int, double*, int); -extern int wait_for_client_kill(Sock*, int); -extern int sock_get_remote_fd(int); -extern int send_signal(Sock*, int); -extern int sock_send_signal(int, int); -extern int send_wakeup(Sock*); -extern int sock_send_wakeup(int); -extern Sock* connect_to_local_server_new(char*, int, int); -extern void remote_stdio(Sock*); -extern void init_purpose_table(void); -extern int make_server_number(void); -extern void close_socket(axiom_socket, char*); -extern int make_server_name(char*, char*); -extern int open_server(char*); -extern int accept_connection(Sock*); -extern void get_socket_type(Sock*); -extern int sock_accept_connection(int); -extern void redirect_stdio(Sock*); -extern void init_socks(void); -extern int server_switch(void); -extern void flush_stdout(void); -extern void print_line(char*); +OPENAXIOM_EXPORT int get_int(Sock*); +OPENAXIOM_EXPORT char* get_string(Sock*); +OPENAXIOM_EXPORT double get_float(Sock*); +OPENAXIOM_EXPORT Sock* connect_to_local_server(char*, int, int); +OPENAXIOM_EXPORT int sread(Sock*, char*, int, char*); +OPENAXIOM_EXPORT double plus_infinity(void); +OPENAXIOM_EXPORT double minus_infinity(void); +OPENAXIOM_EXPORT double NANQ(void); +OPENAXIOM_EXPORT void sigpipe_handler(int); +OPENAXIOM_EXPORT int wait_for_client_read(Sock*, char*, int, char*); +OPENAXIOM_EXPORT int wait_for_client_write(Sock*, char*, int, char*); +OPENAXIOM_EXPORT int swrite(Sock*, char*, int, char*); +OPENAXIOM_EXPORT int sselect(int, fd_set*, fd_set*, fd_set*, void*); +OPENAXIOM_EXPORT int fill_buf(Sock*, char*, int, char*); +OPENAXIOM_EXPORT int sock_get_int(int); +OPENAXIOM_EXPORT int get_ints(Sock*, int*, int); +OPENAXIOM_EXPORT int sock_get_ints(int, int*, int); +OPENAXIOM_EXPORT int send_int(Sock*, int); +OPENAXIOM_EXPORT int sock_send_int(int, int); +OPENAXIOM_EXPORT int send_ints(Sock*, int*, int); +OPENAXIOM_EXPORT int sock_send_ints(int, int*, int); +OPENAXIOM_EXPORT int send_string(Sock*, char*); +OPENAXIOM_EXPORT int send_string_len(Sock*, char*, int); +OPENAXIOM_EXPORT int sock_send_string(int, char*); +OPENAXIOM_EXPORT int sock_send_string_len(int, char*, int); +OPENAXIOM_EXPORT int send_strings(Sock*, char**, int); +OPENAXIOM_EXPORT int sock_send_strings(int, char**, int); +OPENAXIOM_EXPORT char* sock_get_string(int); +OPENAXIOM_EXPORT char* get_string_buf(Sock*, char*, int); +OPENAXIOM_EXPORT char* sock_get_string_buf(int, char*, int); +OPENAXIOM_EXPORT int get_strings(Sock*, char**, int); +OPENAXIOM_EXPORT int sock_get_strings(int, char**, int); +OPENAXIOM_EXPORT int send_float(Sock*, double); +OPENAXIOM_EXPORT int sock_send_float(int, double); +OPENAXIOM_EXPORT int send_sfloats(Sock*, float*, int); +OPENAXIOM_EXPORT int sock_send_sfloats(int, float*, int); +OPENAXIOM_EXPORT int send_floats(Sock*, double*, int); +OPENAXIOM_EXPORT int sock_send_floats(int, double*, int); +OPENAXIOM_EXPORT double sock_get_float(int); +OPENAXIOM_EXPORT int get_sfloats(Sock*, float*, int); +OPENAXIOM_EXPORT int sock_get_sfloats(int, float*, int); +OPENAXIOM_EXPORT int get_floats(Sock*, double*, int); +OPENAXIOM_EXPORT int sock_get_floats(int, double*, int); +OPENAXIOM_EXPORT int wait_for_client_kill(Sock*, int); +OPENAXIOM_EXPORT int sock_get_remote_fd(int); +OPENAXIOM_EXPORT int send_signal(Sock*, int); +OPENAXIOM_EXPORT int sock_send_signal(int, int); +OPENAXIOM_EXPORT int send_wakeup(Sock*); +OPENAXIOM_EXPORT int sock_send_wakeup(int); +OPENAXIOM_EXPORT Sock* connect_to_local_server_new(char*, int, int); +OPENAXIOM_EXPORT void remote_stdio(Sock*); +OPENAXIOM_EXPORT void init_purpose_table(void); +OPENAXIOM_EXPORT int make_server_number(void); +OPENAXIOM_EXPORT void close_socket(axiom_socket, char*); +OPENAXIOM_EXPORT int make_server_name(char*, char*); +OPENAXIOM_EXPORT int open_server(char*); +OPENAXIOM_EXPORT int accept_connection(Sock*); +OPENAXIOM_EXPORT void get_socket_type(Sock*); +OPENAXIOM_EXPORT int sock_accept_connection(int); +OPENAXIOM_EXPORT void redirect_stdio(Sock*); +OPENAXIOM_EXPORT void init_socks(void); +OPENAXIOM_EXPORT int server_switch(void); +OPENAXIOM_EXPORT void flush_stdout(void); +OPENAXIOM_EXPORT void print_line(char*); #define MaxClients 150 @@ -179,11 +180,11 @@ extern void print_line(char*); /* table of dedicated socket types */ -extern Sock *purpose_table[]; -extern Sock server[]; -extern Sock clients[]; -extern fd_set socket_mask; -extern fd_set server_mask; +OPENAXIOM_EXPORT extern Sock *purpose_table[]; +OPENAXIOM_EXPORT extern Sock server[]; +OPENAXIOM_EXPORT extern Sock clients[]; +OPENAXIOM_EXPORT extern fd_set socket_mask; +OPENAXIOM_EXPORT extern fd_set server_mask; #endif /* OPENAXIOM_SOCKIO_included */ diff --git a/src/lib/Makefile.in b/src/lib/Makefile.in index 89b68ea3..7c1b708d 100644 --- a/src/lib/Makefile.in +++ b/src/lib/Makefile.in @@ -1,4 +1,4 @@ -# Copyright (C) 2007, Gabriel Dos Reis. +# Copyright (C) 2007-2008, Gabriel Dos Reis. # All rights reserved. # # Redistribution and use in source and binary forms, with or without @@ -47,16 +47,12 @@ libspad_la_SOURCES = $(foreach comp, \ $(addsuffix _SOURCES, @axiom_c_runtime@), \ $($(comp))) -other_SOURCES = cfuns-c.c - unused_SOURCES = emupty.c +libopen_axiom_core_la_SOURCES = $(core_SOURCES) +libopen_axiom_core_la_objects = $(libopen_axiom_core_la_SOURCES:.c=.lo) libspad_la_objects = $(libspad_la_SOURCES:.c=.lo) -other_objects = $(other_SOURCES:.c=.$(OBJEXT)) - -pamphlets = Makefile.pamphlet - subdir = src/lib/ .PHONY: all all-lib @@ -66,10 +62,17 @@ subdir = src/lib/ all: all-ax all-ax all-lib: stamp -stamp: $(axiom_target_libdir)/libspad.la +stamp: $(axiom_target_libdir)/libopen-axiom-core.la \ + $(axiom_target_libdir)/libspad.la rm -f stamp $(STAMP) stamp +$(axiom_target_libdir)/libopen-axiom-core.la: \ + $(libopen_axiom_core_la_objects) + $(mkinstalldirs) $(axiom_target_libdir) + $(LIBTOOL) --mode=link $(CC) -module -o $@ \ + $(libopen_axiom_core_la_objects) + $(axiom_target_libdir)/libspad.la: $(libspad_la_objects) $(mkinstalldirs) $(axiom_target_libdir) $(LIBTOOL) --mode=link $(CC) -o $@ $(libspad_la_objects) \ @@ -78,7 +81,8 @@ $(axiom_target_libdir)/libspad.la: $(libspad_la_objects) .PRECIOUS: %.$(OBJEXT) %.lo %.lo: %.c $(axiom_c_macros_h) - $(COMPILE) -o $@ $(CCF) $(axiom_includes) $(AXIOM_X11_CFLAGS) $< + $(COMPILE) -o $@ $(CCF) -DOPENAXIOM_BUILD_DLL \ + $(axiom_includes) $(AXIOM_X11_CFLAGS) $< # This is a support library, so it does not change often and # we don't need to remove the produced objects in mostlyclean. @@ -87,9 +91,9 @@ mostlyclean-local: @rm -f *.lo *.$(OBJEXT) clean-local: mostlyclean-local + @$(LIBTOOL) --mode=clean $(axiom_target_libdir)/libopen-axiom-core.la @$(LIBTOOL) --mode=clean $(axiom_target_libdir)/libspad.la @rm -f $(other_objects) - @rm -f $(libspad_la_SOURCES) $(other_SOURCES) @rm -fr .libs _libs @rm -f stamp diff --git a/src/lib/bsdsignal.c b/src/lib/bsdsignal.c index 3454507f..7bf89d94 100644 --- a/src/lib/bsdsignal.c +++ b/src/lib/bsdsignal.c @@ -32,7 +32,6 @@ */ #include "axiom-c-macros.h" -#include "bsdsignal.h" #if defined(MACOSXplatform) #include "/usr/include/signal.h" @@ -40,10 +39,9 @@ #include <signal.h> #endif -#include "bsdsignal.H1" - +#include "bsdsignal.h" -SignalHandlerFunc +OPENAXIOM_EXPORT SignalHandlerFunc bsdSignal(int sig, SignalHandlerFunc action, int restartSystemCall) { #if HAVE_DECL_SIGACTION diff --git a/src/lib/cfuns-c.c b/src/lib/cfuns-c.c index 47485408..7ed80551 100644 --- a/src/lib/cfuns-c.c +++ b/src/lib/cfuns-c.c @@ -48,7 +48,7 @@ # include <windows.h> #endif -#include "cfuns-c.H1" +#include "cfuns.h" /* Most versions of Windows don't have the POSIX functions getuid(), geteuid(), getgid(), and getegid(). The following definitions are @@ -71,7 +71,7 @@ # define getegid() getgid() #endif -int +OPENAXIOM_EXPORT int addtopath(char *dir) { char *path, *newpath; @@ -95,7 +95,7 @@ addtopath(char *dir) */ -int +OPENAXIOM_EXPORT int directoryp(char *path) { struct stat buf; @@ -104,7 +104,7 @@ directoryp(char *path) return code == -1 ? -1 : S_ISDIR(buf.st_mode); } -int +OPENAXIOM_EXPORT int make_path_from_file(char *s, char *t) { char *pos = ""; @@ -184,7 +184,7 @@ axiom_has_write_access(const struct stat* file_info) 2 if the file does not exists but process has write has write access to the dirname of path. */ -int +OPENAXIOM_EXPORT int writeablep(char *path) { struct stat buf; @@ -211,7 +211,7 @@ writeablep(char *path) 0 if the file exists but process has no read access. 1 if the file exists and read access is granted. */ -int +OPENAXIOM_EXPORT int readablep(char *path) { struct stat buf; @@ -238,7 +238,7 @@ readablep(char *path) -long +OPENAXIOM_EXPORT long findString(char *file, char *string) { int nstring, charpos; @@ -258,7 +258,7 @@ findString(char *file, char *string) } -int +OPENAXIOM_EXPORT int copyEnvValue(char *varName, char *buffer) { char *s; @@ -272,7 +272,7 @@ copyEnvValue(char *varName, char *buffer) /* Return 1 if the file descriptor FD, as viewed by the Core Executable, is attached to a terminal. */ -int +OPENAXIOM_EXPORT int std_stream_is_terminal(int fd) { assert(fd > -1 && fd < 3); diff --git a/src/lib/fnct_key.c b/src/lib/fnct_key.c index a44f0bf5..c9240fd6 100644 --- a/src/lib/fnct_key.c +++ b/src/lib/fnct_key.c @@ -51,7 +51,6 @@ #include "bsdsignal.h" -#include "bsdsignal.H1" #include "fnct_key.H1" #include "prt.H1" #include "edin.H1" diff --git a/src/lib/sockio-c.c b/src/lib/sockio-c.c index 9ad31365..ec50a3f6 100644 --- a/src/lib/sockio-c.c +++ b/src/lib/sockio-c.c @@ -2,7 +2,7 @@ Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. All rights reserved. - Copyright (C) 2007, Gabriel Dos Reis. + Copyright (C) 2007-2008, Gabriel Dos Reis. All rights reserved. Redistribution and use in source and binary forms, with or without @@ -72,20 +72,31 @@ #endif +/* socket description of spad clients */ +OPENAXIOM_EXPORT Sock clients[MaxClients]; -Sock clients[MaxClients]; /* socket description of spad clients */ -Sock server[2]; /* AF_LOCAL and AF_INET sockets for server */ -Sock *purpose_table[TotalMaxPurposes]; /* table of dedicated socket types */ -fd_set socket_mask; /* bit mask of active sockets */ -fd_set server_mask; /* bit mask of server sockets */ -int socket_closed; /* used to identify closed socket on SIGPIPE */ -int spad_server_number = -1; /* spad server number used in sman */ +/* AF_LOCAL and AF_INET sockets for server */ +OPENAXIOM_EXPORT Sock server[2]; + +/* table of dedicated socket types */ +OPENAXIOM_EXPORT Sock *purpose_table[TotalMaxPurposes]; + +/* bit mask of active sockets */ +OPENAXIOM_EXPORT fd_set socket_mask; + +/* bit mask of server sockets */ +OPENAXIOM_EXPORT fd_set server_mask; + +/* used to identify closed socket on SIGPIPE */ +int socket_closed; + +/* spad server number used in sman */ +int spad_server_number = -1; int str_len = 0; int still_reading = 0; -#include "bsdsignal.H1" #include "sockio.h" /* The function sleep() is not available under Windows. Instead, they @@ -206,13 +217,13 @@ axiom_connection_refused(void) } -void +OPENAXIOM_EXPORT void sigpipe_handler(int sig) { socket_closed = 1; } -int +OPENAXIOM_EXPORT int wait_for_client_read(Sock *sock, char *buf, int buf_size, char *msg) { int ret_val; @@ -229,7 +240,7 @@ wait_for_client_read(Sock *sock, char *buf, int buf_size, char *msg) } } -int +OPENAXIOM_EXPORT int wait_for_client_write(Sock *sock,char *buf,int buf_size,char *msg) { int ret_val; @@ -246,7 +257,7 @@ wait_for_client_write(Sock *sock,char *buf,int buf_size,char *msg) } } -int +OPENAXIOM_EXPORT int sread(Sock *sock, char *buf, int buf_size, char *msg) { int ret_val; @@ -271,7 +282,7 @@ sread(Sock *sock, char *buf, int buf_size, char *msg) return ret_val; } -int +OPENAXIOM_EXPORT int swrite(Sock *sock,char *buf,int buf_size,char *msg) { int ret_val; @@ -297,7 +308,7 @@ swrite(Sock *sock,char *buf,int buf_size,char *msg) return ret_val; } -int +OPENAXIOM_EXPORT int sselect(int n,fd_set *rd, fd_set *wr, fd_set *ex, void *timeout) { int ret_val; @@ -307,7 +318,7 @@ sselect(int n,fd_set *rd, fd_set *wr, fd_set *ex, void *timeout) return ret_val; } -int +OPENAXIOM_EXPORT int fill_buf(Sock *sock,char *buf, int len, char *msg) { int bytes = 0, ret_val; @@ -319,7 +330,7 @@ fill_buf(Sock *sock,char *buf, int len, char *msg) return bytes; } -int +OPENAXIOM_EXPORT int get_int(Sock *sock) { int val = -1, len; @@ -336,7 +347,7 @@ get_int(Sock *sock) return val; } -int +OPENAXIOM_EXPORT int sock_get_int(int purpose) { if (accept_if_needed(purpose) != -1) @@ -344,7 +355,7 @@ sock_get_int(int purpose) else return -1; } -int +OPENAXIOM_EXPORT int get_ints(Sock *sock, int *vals, int num) { int i; @@ -353,7 +364,7 @@ get_ints(Sock *sock, int *vals, int num) return 0; } -int +OPENAXIOM_EXPORT int sock_get_ints(int purpose, int *vals, int num) { if (accept_if_needed(purpose) != -1) @@ -361,7 +372,7 @@ sock_get_ints(int purpose, int *vals, int num) return -1; } -int +OPENAXIOM_EXPORT int send_int(Sock *sock,int val) { int ret_val; @@ -372,7 +383,7 @@ send_int(Sock *sock,int val) return 0; } -int +OPENAXIOM_EXPORT int sock_send_int(int purpose,int val) { if (accept_if_needed(purpose) != -1) @@ -380,7 +391,7 @@ sock_send_int(int purpose,int val) return -1; } -int +OPENAXIOM_EXPORT int send_ints(Sock *sock, int *vals, int num) { int i; @@ -390,7 +401,7 @@ send_ints(Sock *sock, int *vals, int num) return 0; } -int +OPENAXIOM_EXPORT int sock_send_ints(int purpose, int *vals, int num) { if (accept_if_needed(purpose) != -1) @@ -398,7 +409,7 @@ sock_send_ints(int purpose, int *vals, int num) return -1; } -int +OPENAXIOM_EXPORT int send_string_len(Sock *sock,char *str,int len) { int val; @@ -423,7 +434,7 @@ send_string_len(Sock *sock,char *str,int len) return 0; } -int +OPENAXIOM_EXPORT int send_string(Sock *sock, char *str) { int val, len = strlen(str); @@ -436,7 +447,7 @@ send_string(Sock *sock, char *str) } -int +OPENAXIOM_EXPORT int sock_send_string(int purpose, char *str) { if (accept_if_needed(purpose) != -1) @@ -444,7 +455,7 @@ sock_send_string(int purpose, char *str) return -1; } -int +OPENAXIOM_EXPORT int sock_send_string_len(int purpose, char * str, int len) { if (accept_if_needed(purpose) != -1) @@ -452,7 +463,7 @@ sock_send_string_len(int purpose, char * str, int len) return -1; } -int +OPENAXIOM_EXPORT int send_strings(Sock *sock, char ** vals, int num) { int i; @@ -462,7 +473,7 @@ send_strings(Sock *sock, char ** vals, int num) return 0; } -int +OPENAXIOM_EXPORT int sock_send_strings(int purpose, char **vals, int num) { if (accept_if_needed(purpose) != -1) @@ -470,7 +481,7 @@ sock_send_strings(int purpose, char **vals, int num) return -1; } -char * +OPENAXIOM_EXPORT char * get_string(Sock *sock) { int val, len; @@ -489,7 +500,7 @@ get_string(Sock *sock) return buf; } -char * +OPENAXIOM_EXPORT char * sock_get_string(int purpose) { if (accept_if_needed(purpose) != -1) @@ -498,7 +509,7 @@ sock_get_string(int purpose) } -char * +OPENAXIOM_EXPORT char * get_string_buf(Sock *sock, char *buf, int buf_len) { int val; @@ -519,7 +530,7 @@ get_string_buf(Sock *sock, char *buf, int buf_len) } } -char * +OPENAXIOM_EXPORT char * sock_get_string_buf(int purpose, char * buf, int buf_len) { if (accept_if_needed(purpose) != -1) @@ -527,7 +538,7 @@ sock_get_string_buf(int purpose, char * buf, int buf_len) return NULL; } -int +OPENAXIOM_EXPORT int get_strings(Sock *sock,char **vals,int num) { int i; @@ -536,7 +547,7 @@ get_strings(Sock *sock,char **vals,int num) return 0; } -int +OPENAXIOM_EXPORT int sock_get_strings(int purpose, char ** vals, int num) { if (accept_if_needed(purpose) != -1) @@ -544,7 +555,7 @@ sock_get_strings(int purpose, char ** vals, int num) return -1; } -int +OPENAXIOM_EXPORT int send_float(Sock *sock, double num) { int val; @@ -555,7 +566,7 @@ send_float(Sock *sock, double num) return 0; } -int +OPENAXIOM_EXPORT int sock_send_float(int purpose, double num) { if (accept_if_needed(purpose) != -1) @@ -563,7 +574,7 @@ sock_send_float(int purpose, double num) return -1; } -int +OPENAXIOM_EXPORT int send_sfloats(Sock *sock, float *vals,int num) { int i; @@ -573,7 +584,7 @@ send_sfloats(Sock *sock, float *vals,int num) return 0; } -int +OPENAXIOM_EXPORT int sock_send_sfloats(int purpose, float * vals, int num) { if (accept_if_needed(purpose) != -1) @@ -581,7 +592,7 @@ sock_send_sfloats(int purpose, float * vals, int num) return -1; } -int +OPENAXIOM_EXPORT int send_floats(Sock *sock, double *vals, int num) { int i; @@ -591,7 +602,7 @@ send_floats(Sock *sock, double *vals, int num) return 0; } -int +OPENAXIOM_EXPORT int sock_send_floats(int purpose, double *vals, int num) { if (accept_if_needed(purpose) != -1) @@ -599,7 +610,7 @@ sock_send_floats(int purpose, double *vals, int num) return -1; } -double +OPENAXIOM_EXPORT double get_float(Sock *sock) { int val; @@ -611,7 +622,7 @@ get_float(Sock *sock) return num; } -double +OPENAXIOM_EXPORT double sock_get_float(int purpose) { if (accept_if_needed(purpose) != -1) @@ -619,7 +630,7 @@ sock_get_float(int purpose) else return 0.0; } -int +OPENAXIOM_EXPORT int get_sfloats(Sock *sock, float *vals, int num) { int i; @@ -629,7 +640,7 @@ get_sfloats(Sock *sock, float *vals, int num) } -int +OPENAXIOM_EXPORT int sock_get_sfloats(int purpose,float * vals, int num) { if (accept_if_needed(purpose) != -1) @@ -637,7 +648,7 @@ sock_get_sfloats(int purpose,float * vals, int num) return -1; } -int +OPENAXIOM_EXPORT int get_floats(Sock *sock,double *vals,int num) { int i; @@ -647,7 +658,7 @@ get_floats(Sock *sock,double *vals,int num) } -int +OPENAXIOM_EXPORT int sock_get_floats(int purpose, double *vals, int num) { if (accept_if_needed(purpose) != -1) @@ -655,7 +666,7 @@ sock_get_floats(int purpose, double *vals, int num) return -1; } -int +OPENAXIOM_EXPORT int wait_for_client_kill(Sock *sock, int sig) { int ret_val; @@ -673,7 +684,7 @@ wait_for_client_kill(Sock *sock, int sig) } -int +OPENAXIOM_EXPORT int sock_get_remote_fd(int purpose) { if (accept_if_needed(purpose) != -1) @@ -681,7 +692,7 @@ sock_get_remote_fd(int purpose) return -1; } -int +OPENAXIOM_EXPORT int send_signal(Sock *sock, int sig) { int ret_val; @@ -700,7 +711,7 @@ send_signal(Sock *sock, int sig) return ret_val; } -int +OPENAXIOM_EXPORT int sock_send_signal(int purpose,int sig) { if (accept_if_needed(purpose) != -1) @@ -708,7 +719,7 @@ sock_send_signal(int purpose,int sig) return -1; } -int +OPENAXIOM_EXPORT int send_wakeup(Sock *sock) { #ifdef SIGUSR1 @@ -718,7 +729,7 @@ send_wakeup(Sock *sock) #endif } -int +OPENAXIOM_EXPORT int sock_send_wakeup(int purpose) { if (accept_if_needed(purpose) != -1) @@ -726,7 +737,7 @@ sock_send_wakeup(int purpose) return -1; } -Sock * +OPENAXIOM_EXPORT Sock * connect_to_local_server_new(char *server_name, int purpose, int time_out) { int max_con=(time_out == 0 ? 1000000 : time_out), i, code=-1; @@ -778,7 +789,7 @@ connect_to_local_server_new(char *server_name, int purpose, int time_out) return sock; } -Sock * +OPENAXIOM_EXPORT Sock * connect_to_local_server(char *server_name, int purpose, int time_out) { int max_con=(time_out == 0 ? 1000000 : time_out), i, code=-1; @@ -833,7 +844,7 @@ connect_to_local_server(char *server_name, int purpose, int time_out) /* act as terminal session for sock connected to stdin and stdout of another process */ -void +OPENAXIOM_EXPORT void remote_stdio(Sock *sock) { char buf[1024]; @@ -873,7 +884,7 @@ remote_stdio(Sock *sock) } /* initialize the table of dedicated sockets */ -void +OPENAXIOM_EXPORT void init_purpose_table(void) { int i; @@ -883,14 +894,14 @@ init_purpose_table(void) } -int +OPENAXIOM_EXPORT int make_server_number(void) { spad_server_number = getpid(); return spad_server_number; } -void +OPENAXIOM_EXPORT void close_socket(axiom_socket socket_num, char *name) { axiom_close_socket(socket_num); @@ -899,7 +910,7 @@ close_socket(axiom_socket socket_num, char *name) #endif } -int +OPENAXIOM_EXPORT int make_server_name(char *name,char * base) { char *num; @@ -920,7 +931,7 @@ make_server_name(char *name,char * base) /* client Spad server sockets. Two sockets are created: server[0] is the internet server socket, and server[1] is a local domain socket. */ -int +OPENAXIOM_EXPORT int open_server(char *server_name) { char *s, name[256]; @@ -986,7 +997,7 @@ open_server(char *server_name) return 0; } -int +OPENAXIOM_EXPORT int accept_connection(Sock *sock) { int client; @@ -1007,7 +1018,7 @@ accept_connection(Sock *sock) } /* reads a the socket purpose declaration for classification */ -void +OPENAXIOM_EXPORT void get_socket_type(Sock *sock) { sock->pid = get_int(sock); @@ -1029,7 +1040,7 @@ get_socket_type(Sock *sock) } } -int +OPENAXIOM_EXPORT int sock_accept_connection(int purpose) { fd_set rd; @@ -1053,7 +1064,7 @@ sock_accept_connection(int purpose) } /* direct stdin and stdout from the given socket */ -void +OPENAXIOM_EXPORT void redirect_stdio(Sock *sock) { int fd; @@ -1072,7 +1083,7 @@ redirect_stdio(Sock *sock) FD_CLR(sock->socket, &socket_mask); } -void +OPENAXIOM_EXPORT void init_socks(void) { int i; @@ -1085,7 +1096,7 @@ init_socks(void) /* Socket I/O selection called from the BOOT serverLoop function */ -int +OPENAXIOM_EXPORT int server_switch(void) { int ret_val, i, cmd = 0; @@ -1132,7 +1143,7 @@ server_switch(void) } } -void +OPENAXIOM_EXPORT void flush_stdout(void) { static FILE *fp = NULL; @@ -1146,14 +1157,14 @@ flush_stdout(void) fflush(fp); } -void +OPENAXIOM_EXPORT void print_line(char *s) { printf("%s\n", s); } -double +OPENAXIOM_EXPORT double plus_infinity(void ) { #ifdef INFINITY @@ -1165,13 +1176,13 @@ plus_infinity(void ) #endif } -double +OPENAXIOM_EXPORT double minus_infinity(void) { return -plus_infinity(); } -double +OPENAXIOM_EXPORT double NANQ(void) { #ifdef NAN diff --git a/src/lisp/Makefile.in b/src/lisp/Makefile.in index 58a2b489..5bf625d4 100644 --- a/src/lisp/Makefile.in +++ b/src/lisp/Makefile.in @@ -1,4 +1,4 @@ -# Copyright (C) 2007, Gabriel Dos Reis. +# Copyright (C) 2007-2008, Gabriel Dos Reis. # All rights reserved. # # Redistribution and use in source and binary forms, with or without @@ -38,11 +38,6 @@ pamphlets = Makefile.pamphlet build_libdir = ./$(top_builddir)/src/lib -lisp_DEPENDENCIES = $(build_libdir)/cfuns-c.lo \ - $(build_libdir)/sockio-c.lo \ - $(build_libdir)/libspad.la - - ## Ideally, we would like to use Libtool for producing, and linking with, ## object files from C codes. That means any C source code ## explicitly included in OpenAxiom, or produced internally by a Lisp diff --git a/src/sman/Makefile.in b/src/sman/Makefile.in index d751da48..e416807e 100644 --- a/src/sman/Makefile.in +++ b/src/sman/Makefile.in @@ -45,7 +45,8 @@ bin_PROGRAMS = session$(EXEEXT) \ spadclient$(EXEEXT) \ sman$(EXEEXT) -libspad_la = $(axiom_target_libdir)/libspad.la +libspad_la = $(axiom_target_libdir)/libspad.la \ + $(axiom_target_libdir)/libopen-axiom-core.la session_SOURCES = session.c session_objects = $(session_SOURCES:.c=.lo) diff --git a/src/sman/session.c b/src/sman/session.c index cd1b2697..73868a19 100644 --- a/src/sman/session.c +++ b/src/sman/session.c @@ -51,7 +51,6 @@ #include "com.h" #include "bsdsignal.h" #include "sockio.h" -#include "bsdsignal.H1" #include "session.H1" #define BufSize 4096 /* size of communication buffer */ diff --git a/src/sman/sman.c b/src/sman/sman.c index 0bc443e9..41beebba 100644 --- a/src/sman/sman.c +++ b/src/sman/sman.c @@ -53,7 +53,6 @@ #include "bsdsignal.h" #include "sman.h" -#include "bsdsignal.H1" #include "sockio.h" #include "openpty.H1" #include "utils.h" diff --git a/src/sman/spadclient.c b/src/sman/spadclient.c index 94b3bc9c..1d74dabf 100644 --- a/src/sman/spadclient.c +++ b/src/sman/spadclient.c @@ -44,7 +44,6 @@ #include "com.h" #include "bsdsignal.h" -#include "bsdsignal.H1" #include "sockio.h" #include "spadclient.H1" |