Commit graph

86 commits

Author SHA1 Message Date
Marius Vollmer
baff2bd54a * fluids.c, fluid.h: New files.
* Makefile.am (libguile_la_SOURCES): Added "fluids.c".
(modinclude_HEADERS): Added "fluids.h"
1997-07-18 14:30:36 +00:00
Tim Pierce
4a5fa91c06 alloca configure fixes 1997-06-28 21:32:46 +00:00
Tim Pierce
9159ebecb4 Build fixes 1997-06-28 02:19:29 +00:00
Jim Blandy
b9c307315a * Makefile.am (libguile_la_LDFLAGS): Bump library version.
* Makefile.in: Regenerated.
1997-06-24 17:22:04 +00:00
Jim Blandy
e151bee62a * Makefile.am (libpath.h): Include the values of all the standard
Makefile directory variables.  Print a message, but don't print
all the commands.
(versiondat.h): Print a message, but don't print all the commands.
* load.c: #include "alist.h".
(init_build_info): New function.
(scm_init_load): Call it.
* Makefile.in: Regenerated.
1997-06-23 23:48:39 +00:00
Jim Blandy
fef07353a8 Try to detect when people are using one version of libguile and a
different version of ice-9.  People have been skewing things and
sending in bug reports.
* Makefile.am (versiondat.h): New file to generate.
* version.c: #include "versiondat.h", to get version info.
(scm_libguile_config_stamp): New function.
* script.c: #include "version.h".
(scm_compile_switches): Call scm_version to get version number.
* scmconfig.h.in, Makefile.in: Regenerated.
* Makefile.in: Regenerated.

* Makefile.am (ETAGS_ARGS): Catch SCM_PROC, etc. so we can find
primitive definitions under their Scheme names.

* Makefile.am (libguile_la_LDFLAGS): Update library version to
1:2.  Helps avoid confusion between installed and uninstalled libs.
1997-06-22 23:42:40 +00:00
Jim Blandy
1773993b8f * Makefile.am (EXTRA_DIST): Include ChangeLog-gh and
ChangeLog-threads in the distribution.
* Makefile.in: Regenerated.
1997-06-21 05:25:12 +00:00
Jim Blandy
34765ae7e1 * Makefile.in: Regenerated after xtra_PLUGIN_guile_libs change in
../configure.in.
1997-06-11 05:35:09 +00:00
Jim Blandy
f255378e9a Add support for POSIX regular expressions.
* regex-posix.c, regex-posix.h: New files. (Some code
is taken liberally from rx/rgx.c in the old Guile dist.)

* init.c: Include regex-posix.h.
(scm_boot_guile_1): Call scm_init_regex_posix.

* Makefile.am (EXTRA_libguile_la_SOURCES, modinclude_HEADERS):
Add regex-posix.[ch] sources.
* Makefile.in: Regenerated.

* scmconfig.h.in: Add HAVE_REGCOMP macro.  (automake is supposed
to do this automatically?  It didn't for me, bleh.)
1997-05-27 23:16:42 +00:00
Jim Blandy
2221ecf5ee * Makefile.am: Increment shared lib revision number. I think
sometimes the uninstalled Guile finds the installed shared lib;
Gord says doing this might help.  As things turned out, I can't
say whether it does.
* Makefile.in: Regenerated.
1997-05-27 02:38:20 +00:00
Jim Blandy
20cd54a08d * Makefile.am (libguile_la_LDFLAGS): Update libguile's shared
library version info to 1:0.
* Makefile.in: Regenerated.
1997-05-16 09:25:50 +00:00
Jim Blandy
de185a275e * Makefile.in: Regenerated, using automake-1.1p. 1997-05-13 21:42:11 +00:00
Jim Blandy
52f980e486 * Makefile.am (check-local): New target, which causes 'make check'
to run gh_test_c and gh_test_repl, with some trivial input.
* Makefile.in: Rgnrtd.
1997-05-01 22:08:29 +00:00
Jim Blandy
593d151f4b * Makefile.am (libpath.h, cpp_err_symbols.c, cpp_sig_symbols.c):
Don't screw up if we're interrupted.
* Makefile.in: Regeneradet.
1997-04-29 00:29:40 +00:00
Jim Blandy
5380de6b99 * Makefile.am (modincludedir): Use "ice-9" instead of "@module@";
we're not using AM_INIT_GUILE_MODULE any more.
* Makefile.in: Reneregated.
1997-04-27 22:59:39 +00:00
Jim Blandy
26543e6162 Get 'make dist' to work again.
* Makefile.am (EXTRA_DIST): Remove PLUGIN files.
* Makefile.in: Regenerated, like a surry without a fringe on top.
1997-04-24 08:17:48 +00:00
Jim Blandy
b1e9e9d1f0 Changes for reduced Guile distribution: one configure script,
no plugins.
* configure.in, configure: Removed.
* acconfig.h, acinclude.m4: Moved to parent directory, where the
real configure script lives.
* Makefile.in, scmconfig.h.in: Regenerated.
1997-04-24 06:36:50 +00:00
Jim Blandy
0487b82f9f Move most of the guts of shell command processing into libguile,
so guile.c can be very small (and eventuallly auto-generated.  (I
mean, generated mechanically, not self-generated.  Hmm.))
* guile.c, script.c, script.h: New source files.
* init.c (scm_boot_guile_1): Call scm_init_script.
* libguile.h: #include "script.h".
* Makefile.am (bin_PROGRAMS, guile_SOURCES, guile_LDADD): New
targets, for new executable.
(libguile_la_SOURCES): Mention script.c.
(modinclude_HEADERS): Add script.h.
* configure.in: Always check for -lm, -lsocket, -lnsl, whether or
not dynamic linking is enabled.  This is because we're generating
executables now.  Move CY_AC_WITH_THREADS call after those, so the
values of cy_cv_threads_libs captures the libs chosen above.
* Makefile.in, configure, aclocal.m4: Regenerated.
1997-04-19 13:25:21 +00:00
Jim Blandy
7bfd3b9e94 Merge threads directory into libguile.
* coop-defs.h, coop-threads.c, coop-threads.h, coop.c, threads.c,
threads.h: New source files.
* Makefile.am (EXTRA_libguile_la_SOURCES): Add threads.c.
(noinst_HEADERS): Add coop-threads.c, coop-threads.h, coop.c
here; see comment.
(modinclude_HEADERS): Add threads.h, coop-defs.h.
(EXTRA_DIST): Add fsu-pthreads.h, mit-pthreads.c, mit-pthreads.h,
coop-threads.c.cygnus, coop-threads.h.cygnus.
* configure.in: If we're using threads, include threads.o in
LIBOBJS.
* _scm.h, libguile.h: threads.h lives in this directory now.
* fsu-pthreads.h, mit-pthreads.c, mit-pthreads.h,
coop-threads.c.cygnus, coop-threads.h.cygnus: New files, not
currently used, but brought along for information's sake.
* ChangeLog-threads: log from old 'threads' directory.
* Makefile.in, configure: Rebuilt.
1997-04-15 01:34:36 +00:00
Jim Blandy
ee2a8b9bdd * gh_init.c (gh_standard_handler): Return SCM_BOOL_F, not garbage.
Merge GH interface library into libguile.
* gh.h, gh_data.c, gh_eval.c, gh_funcs.c, gh_init.c, gh_io.c,
gh_list.c, gh_predicates.c, gh_test_c, gh_test_c.c, gh_test_repl,
gh_test_repl.c: New files.
* Makefile.am (libguile_la_SOURCES): Add gh_data.c, gh_eval.c,
gh_funcs.c, gh_init.c, gh_io.c, gh_list.c, gh_predicates.c.  Move
_scm.h to ...
(EXTRA_libguile_la_SOURCES): ... here.
(pkginclude_HEADERS): Add variable, to get gh.h installed.
(THREAD_LIBS, check_ldadd, check_PROGRAMS, gh_test_c_SOURCES,
gh_test_c_LDADD, gh_test_repl_SOURCES, gh_test_repl_LDADD):
New variables, describing how to build the gh test programs.
* configure.in: Check for -lm, -lsocket, -lnsl; we need this to
build the test programs, and we probably should have been linking
libguile.la against them all along, to support AIX shared libs.
Add cflags for threads to CFLAGS; add libs for threads to new
variable THREAD_LIBS, used in Makefile.am.
* ChangeLog-gh: log from old `gh' subdirectory.
* Makefile.in, configure, scmconfig.h.in: Rebuilt.
1997-04-14 06:42:27 +00:00
Gary Houston
b9525b92bb * stime.c (scm_mktime): take an optional zone argument.
(scm_localtime): check putenv return value.
	(scm_strftime, scm_strptime): moved from posix.c.  move #include
	sequences.h too.
	stime.h, posix.h: update prototypes.
	(bdtime2c, setzone, restorezone): new static procedures.
	(scm_mktime, scm_strftime): use them.
	(scm_strftime): don't call mktime before strftime.  Use
	filltime for return value.
	(filltime): convert NULL zname to #f.
*	(scm_strptime): return a count of characters consumed, not
	the remaining string.

	* stime.c (scm_localtime): check HAVE_TM_ZONE and HAVE_TZNAME.
	(scm_mktime): likewise.
	Declare *tzname[].
	Uncomment localtime and mktime.

	* configure.in: add AC_STRUCT_TIMEZONE.
1997-04-12 20:18:12 +00:00
Jim Blandy
7ec57e82da Rebuild using newly patched automake... argh. 1997-04-10 01:14:47 +00:00
Jim Blandy
e13d8dc0e0 Changes to work with automake-1.1n, which has better libtool support.
* Makefile.am: Use lib_LTLIBRARIES instead of lib_PROGRAMS.
Use libguile_la_LIBADD instead of libguile_la_LDADD.  (What's the
difference here?)
(libguile_la_SOURCES, modinclude_HEADERS, EXTRA_DIST): Format for
readability.
* Makefile.in: Rebuild.
1997-04-09 23:03:13 +00:00
Jim Blandy
a0e90145a3 * cpp_err_symbols.in: Renamed from cpp_err_symbols, to avoid
make's implicit cpp_err_symbols: cpp_err_symbols.c rule.
* cpp_sig_symbols.in: Renamed from cpp_sig_symbols.
* Makefile.am (check_errnos, check_signals, cpp_sig_symbols.c,
cpp_err_symbols.c): Corresponding changes.
* Makefile.in: Regenerated.
1997-04-05 23:35:03 +00:00
Gary Houston
19468effd0 * posix.c (scm_putenv): don't check HAVE_PUTENV.
* Makefile.am (EXTRA_libguile_la_SOURCES): add putenv.c.
* configure.in: move putenv from AC_CHECK_FUNCS to AC_REPLACE_FUNCS.
* putenv.c: new file, from sh-utils 1.12.

* posix.c (scm_environ): use malloc in place of scm_must_malloc
since allocation isn't for Scheme objects.
(scm_putenv): copy strings before placing in the environment.

* stime.c (scm_current_time): throw an error if time returns -1,
instead of returning #f.
(scm_get_internal_real_time, scm_get_internal_real_time): use
scm_long2num for return value instead of SCM_MAKINUM.

* stime.h: prototypes updated.

* stime.c (scm_time_in_msec): apparently unused, deleted.

	* configure.in: check for gettimeofday.

	* stime.c (scm_time_plus_ticks): new procedure, an scsh interface
	which may be more usefully portable than a gettimeofday interface.

	* stime.c (filltime): recovered static procedure.
	(scm_localtime, scm_gmtime, scm_mktime, scm_tzset): recovered from
	an earlier Guile.

	* posix.h: add prototype for scm_close_pipe, remove prototypes for
	scm_open_input_pipe, scm_open_output_pipe, change scm_mknod prototype.

*	* posix.c (scm_mknod): split the mode argument into type and perms
	arguments, like the extra fields returned by stat.

	* fports.c (scm_pipob): set the close, free and print procedures.
	(scm_close_pipe): new procedure.

	* posix.c (scm_open_input_pipe, scm_open_output_pipe): deleted,
	define them in boot-9.scm
1997-04-05 21:50:31 +00:00
Jim Blandy
ec8c8a5433 * Makefile.am (EXTRA_DIST): It's cpp_err_symbols, not
cpp_err_signals.
* Makefile.in: Regenerated.
1997-04-02 22:13:11 +00:00
Gary Houston
2366f4453e fix typo 1997-03-29 21:09:59 +00:00
Gary Houston
67ec36676e * ioext.c (scm_setfileno): throw a runtime error if SET_FILE_FD_FIELD
wan't defined.  Don't include fd.h.

* Previously fd.h was regenerated whenever configure was run,
forcing a couple of files to be recompiled.

* fd.h.in: deleted, SET_FILE_FD_FIELD moved to ioext.c.
* configure.in: AC_DEFINE FD_SETTER instead of HAVE_FD_SETTER.
Check for _fileno as well as _file.
Don't output fd.h.
* ioext.c: don't fd.h.
* acconfig.h: remove duplicate HAVE_FD_SETTER and change the
other to FD_SETTER.

* Change the stratigy for getting information about errno
(and now signal number) values, e.g., ENOSYS, SIGKILL.  Instead of
generating lists of symbols during the build process, which will
not always work, include comprehensive lists in the distribution.
To help keep the lists up to date, the "check_signals" and
"check_errnos" make targets can be used.

* configure.in: don't check for a command to extract errno codes.
* Makefile.am: update file lists, remove errnos.list and errnos.c
targets, add cpp_err_symbols.c, cpp_sig_symbols.c, check_signals,
check_errnos targets.
(CLEANFILES): remove errnos.c and errnos.list, add
cpp_err_symbols_here cpp_err_symbols_diff cpp_err_symbols_new
cpp_sig_symbols_here cpp_sig_symbols_diff cpp_sig_symbols_new
* errnos.default: deleted.
* cpp_signal.c: new file.
* cpp_errno.c: renamed from errnos_get.c.
* cpp_err_symbols, cpp_sig_symbols: new files.
* cpp_cnvt.awk: renamed from errnos_cnvt_awk.
* error.c (scm_init_error): #include cpp_err_symbols instead of
errnos.c.
* posix.c (scm_init_posix): don't intern signal symbols.  #include
cpp_sig_symbols.c.
* strop.c (scm_i_index): allow the lower bound to be equal to the
length of the string, so a null string doesn't always give an error.

* posix.h: new prototypes.
* posix.c (scm_status_exit_val, scm_status_term_sig,
scm_status_stop_sig): new functions, as in scsh.  They break down
process status values as returned by waitpid.
1997-03-29 18:42:43 +00:00
Gary Houston
ef12d978bb * net_db.c (scm_gethost): don't check HAVE_GETHOSTENT, since
configure doesn't know about it.
1997-03-22 18:24:31 +00:00
Mikael Djurfeldt
7f52af6567 Regenerated. 1997-03-15 01:15:22 +00:00
Gary Houston
fed9c9a2d4 * read.c (scm_init_read): intitialise scm_read_hash_procedures
(idea from Mikael: make it a pair so scm_permanent object only
	called once.)
	(scm_read_hash_extend): don't call scm_permanent_object.
	(ideas from Mikael): if chr is already in the list, replace its
	procedure instead of appending it again.  If chr is #f, remove
	it from the list.
	(scm_get_hash_procedure): take CDR of scm_read_hash_procedures.
1997-03-08 22:52:56 +00:00
Mikael Djurfeldt
a1e2cfe360 *** empty log message *** 1997-03-07 21:43:46 +00:00
Mark Galassi
b5522b48d2 started out the new reference manual organization 1997-03-06 17:13:31 +00:00
Mikael Djurfeldt
15ae1beecf * configure.in: Added AM_MAINTAINER_MODE
Makefile.in, aclocal.m4, configure: Regenerated
1997-02-24 23:35:55 +00:00
Marius Vollmer
78bda5f34f * Makefile.am (EXTRA_libguile_la_SOURCES): New variable to hold
source files that are not always included in libguile but should
have their dependencies calculated by automake.  This variable is
recognized by automake, no further magic is needed.
(libguile_la_DEPENDENCIES): Changed to @LIBLOBJS@.  Libtool wants
to deal exclusively with *.lo files, as it seems.  The *.o files
are built automatically when the corresponding *.lo file gets
built.
1997-02-21 18:21:53 +00:00
Jim Blandy
9dcf6a0294 * Makefile.am (libguile_la_SOURCES): Remove backtrace.c, debug.c,
inet_aton.c, srcprop.c, stacks.c, and strerror.c from this list.
They should only be included in the library at configure.in's
discretion.
(libguile_la_LDADD): Include the appropriate .lo files here.
(libguile_la_DEPENDENCIES): List the corresponding .o files here,
so we know when to build them (and their .lo bretheren).
* configure.in (LIBLOBJS): New substituted variable.  We let
configure decide which .o files to include in LIBOBJS, and then
put the corresponding list of .lo files in LIBLOBJS.  The latter
is what we pass to libtool.
* Makefile.in, configure: regenerated.
1997-02-11 23:25:55 +00:00
Gary Houston
1146b6cda2 * ports.c: add SCM_PROC declarations for pt-size and pt-member.
* Makefile.am: remove AWK=@AWK@.
	Add a rule for generating errnos.list.
	(CLEANFILES): put errnos.list here instead of in DISTCLEANFILES.

	* configure.in: add AC_SUBST(AWK) and AC_SUBST(ERRNO_EXTRACT).
	don't extract errnos, just set a variable (avoids the
	need to recompile error.c just because configure is run.)

	* unif.h: update prototypes.
	* unif.c (scm_uniform_array_read,write): change the offset and
	length arguments to start and end, for consistency.

	* __scm.h: uncomment SCM_ARG6 and SCM_ARG7, I needed SCM_ARG6.

	* ioext.h: update prototypes.
*	* ioext.c (scm_read_delimited_x): replaces scm_read_line and
	scm_read_line_x, it's a more general procedure using an
	interface from scsh.  read-line and read-line! are now defined
	in boot-9.scm.
*  	Note that the new read-line trims the terminator
	by default, previously it was appended to the returned string.  An
	optional argument specifies how to process the terminator (scsh
	compatible).  For the old behaviour: (read-line port 'concat).
	scm_read_line, scm_read_line_x: deleted.  (read-line port 'split)
	returns a pair, but is converted to multiple values if the scsh
	module is loaded.

	socket.h: update prototypes.
	* socket.c (scm_recvfrom): for consistency with other procedures,
	take start and end as separate optional arguments.
*	(scm_recv, scm_recvfrom): don't allow the second argument
	to be a size, only a buffer.  Change the scheme names to
	recv! and recvfrom!.  Don't return the buffer.

	* ioext.h, posix.h: move prototypes too.
	* ioext.c, posix.c (scm_read_line, scm_read_line_x, scm_write_line:
	moved back from posix.c to ioext.c.  Also move #includes of "genio.h"
	"read.h" and "unif.h".
	* ioext.c: include "chars.h"
1997-01-25 18:23:49 +00:00
Gary Houston
be9edf15fb * Makefile.am: add AWK=@AWK@ (?) 1997-01-13 06:22:51 +00:00
Gary Houston
ee78fbb067 * Makefile.am (EXTRA_DIST): add errnos_cnvt.awk, errnos.default,
errnos_get.c.
Add a rule to generate errnos.c from errnos.
* error.c (scm_init_error): include errnos.c.
* errnos_cnvt.awk: new file, converts the list of errno codes to
C expressions.
* errnos_get.c: new file.
* errnos.default: new file, contains errnos to try if they can't
be extracted from errno.h.
* configure.in: if using GCC, try and extract errno codes from
errno.h.
Added AC_PROG_AWK.
1997-01-13 04:05:27 +00:00
Marius Vollmer
1bb9f4dbf6 * configure.in: Replaced AC_PROG_RANLIB with AM_PROG_LIBTOOL.
* Makefile.am: Made libguile into a libtool library.
* PLUGIN/guile.config: Removed "-L ../libguile" from xtra_cflags.
Set libtool_libs to indicate that libguile is a libtool library.
See guile/ChangeLog for details.
* .cvsignore: ignore "*.lo", the libtool library objects.
1997-01-11 19:00:04 +00:00
Marius Vollmer
bf5f77277b * Makefile.am (EXTRA_DIST): Added DYNAMIC-LINKING 1997-01-02 01:03:04 +00:00
Marius Vollmer
8f3baf5a7f * configure.in: Create PLUGIN/guile.libs from
PLUGIN/guile.libs.in.  This is for including additonal libraries
needed for dynamic linking.
* Makefile.am (EXTRA_DIST): Distribute PLUGIN/guile.libs.in
instead of PLUGIN/guile.libs.

* Makefile.am: Added explicit dependency "dynl.o: dynl.x".
1996-12-27 15:42:03 +00:00
Gary Houston
370312ae6e * filesys.c (scm_input_waiting_p): use select in preference to
FIONREAD, since the latter doesn't detect EOF.
Throw error if neither select nor FIONREAD available.

* socket.c (scm_connect): take a port, not a fd object.
(scm_fill_sockaddr): throw an error if fam is not recognised.
(scm_bind): use scm_fill_sockaddr.
(scm_listen): take a port, not a fd object.
(scm_accept): take and return a port.  return CDR in the car if
address can't be got
(scm_sock_fd_to_port): new procedure.
(scm_socket): use scm_sock_fd_to_port.
(scm_addr_vector): throw error if unrecognised address type.
take an extra argument with the calling procedure name.
(scm_getsockname): take a port.  return #f if address can't be got.
(scm_getpeername): take a port.  return #f if address can't be got.
(scm_recvfrom): take a port.  return #f for address component if can't
be got.
(scm_sendto, scm_socketpair, scm_getsockopt scm_shutdown,
scm_setsockopt, scm_recv, scm_send): take a port not a fd object.
* socket.h (SCM_P): update bind prototype.
* socket.c (scm_init_socket): intern PF_UNSPEC, PF_UNIX, PF_INET.
include "feature.h".
(scm_socket): return a port, not a file descriptor object.
include "fports.h" and <unistd.h>
(scm_bind): take a port, not a file descriptor object.
take an extra argument for address args.

* net_db.c (scm_init_net_db): intern INADDR_ANY, INADDR_BROADCAST,
INADDR_NONE, INADDR_LOOPBACK.
* init.c: include net_db.h and not fdsocket.h.
(scm_boot_guile_1): call scm_init_net_db and not scm_init_fdsocket.

* Makefile.am: corresponding changes.
* socket.h: renamed from fdsocket.h, fix names.
* net_db.h: renamed from socket.h, fix names.
* socket.c: renamed from fdsocket.c.
remove _sys from procedure names.
(scm_init_socket): rename from scm_init_fdsocket.  include socket.x.
add "socket" to features list.
* net_db.c: renamed from socket.c.
remove _sys from procedure names.
(scm_init_net_db): rename from scm_init_socket.  include net_db.x.
add "net-db" to features list.
include "net_db.h".  don't include <sys/socket.h> or
<sys/un.h>.
1996-12-21 04:13:54 +00:00
Mikael Djurfeldt
74f17710af Regenerated by automake-1.1l. 1996-12-14 14:46:02 +00:00
Mark Galassi
f9d81b6bcb updated the Makefile.in files with the right automake 1.1l 1996-12-13 02:50:04 +00:00
Mark Galassi
0fedd45c50 some more work on handlers for gh 1996-12-12 02:59:15 +00:00
Tom Tromey
adb75a4155 guile-snarf script once again used for creating .x files 1996-12-10 06:25:08 +00:00
Jim Blandy
f8d0b1924e Rebuilt from Makefile.am. 1996-12-09 02:22:44 +00:00
Mark Galassi
10f74a138b little stuff 1996-12-08 20:28:36 +00:00
Marius Vollmer
496f55cd25 * Makefile.am (libguile_a_SOURCES):
Added "dynl.c".
(modinclude_HEADERS): Added "dynl.h".
(EXTRA_DIST): Added "dynl-dl.c", "dynl-dld.c", "dynl-shl.c" and
"dynl-vms.c".
1996-12-08 17:04:08 +00:00