main #include path; put most of them in a subdirectory called
'libguile'. This avoids naming conflicts between Guile header
files and system header files (of which there were a few).
* Makefile.in (pkgincludedir): Deleted.
(innerincludedir): New variable; this and $(includedir) are enough.
(INCLUDE_CFLAGS): Search for headers in "-I$(srcdir)/..".
(installed_h_files): Divide this up. Now this variable lists
those header files which should go into $(includedir) (i.e. appear
directly in the #include path), and ...
(inner_h_files): ... this new variable says which files appear in
a subdirectory, and are referred to as <libguile/mumble.h>.
(h_files): List them both.
(install): Create innerincludedir, not pkgincludedir. Put
the installed_h_files and inner_h_files in their proper places.
(uninstall): Corresponding changes.
* alist.h, append.h, arbiters.h, async.h, boolean.h, chars.h,
continuations.h, debug.h, dynwind.h, error.h, eval.h, fdsocket.h,
feature.h, fports.h, gc.h, genio.h, gsubr.h, hash.h, init.h,
ioext.h, kw.h, libguile.h, list.h, markers.h, marksweep.h,
mbstrings.h, numbers.h, options.h, pairs.h, ports.h, posix.h,
print.h, procprop.h, procs.h, ramap.h, read.h, root.h,
sequences.h, smob.h, socket.h, srcprop.h, stackchk.h, stime.h,
strings.h, strop.h, strorder.h, strports.h, struct.h, symbols.h,
tag.h, throw.h, unif.h, variable.h, vectors.h, version.h,
vports.h, weaks.h: Find __scm.h in its new location.
* __scm.h: Find scmconfig.h and tags.h in their new locations
(they're both "inner" files).
* Makefile.in (ALL_CFLAGS): Don't mention CFLAGS here; it's
implicit in the .c.o rule.
(.c.x): Don't mention ALL_CFLAGS here; its value is included in
$(CC) already.
Put the library path in a header file, instead of passing it on
the command line in every compilation.
* Makefile.in (libpath.h): New target.
(feature.o): Depend on libpath.h.
(clean): Delete libpath.h.
(ALL_CFLAGS): Don't use -DLIBRARY_PATH here. Instead ...
* feature.c: ... #include "libpath.h" here.
* .cvsignore: Ignore libpath.h.
Don't install the unwashed masses of Guile header files in the
main #include path; put most of them in a subdirectory called
'libguile'. This avoids naming conflicts between Guile header
files and system header files (of which there were a few).
* Makefile.in (pkgincludedir): Deleted.
(innerincludedir): New variable; this and $(includedir) are enough.
(INCLUDE_CFLAGS): Search for headers in "-I$(srcdir)/..".
(installed_h_files): Divide this up. Now this variable lists
those header files which should go into $(includedir) (i.e. appear
directly in the #include path), and ...
(inner_h_files): ... this new variable says which files appear in
a subdirectory, and are referred to as <libguile/mumble.h>.
(h_files): List them both.
(install): Create innerincludedir, not pkgincludedir. Put
the installed_h_files and inner_h_files in their proper places.
(uninstall): Corresponding changes.
* alist.h, append.h, arbiters.h, async.h, boolean.h, chars.h,
continuations.h, debug.h, dynwind.h, error.h, eval.h, fdsocket.h,
feature.h, fports.h, gc.h, genio.h, gsubr.h, hash.h, init.h,
ioext.h, kw.h, libguile.h, list.h, markers.h, marksweep.h,
mbstrings.h, numbers.h, options.h, pairs.h, ports.h, posix.h,
print.h, procprop.h, procs.h, ramap.h, read.h, root.h,
sequences.h, smob.h, socket.h, srcprop.h, stackchk.h, stime.h,
strings.h, strop.h, strorder.h, strports.h, struct.h, symbols.h,
tag.h, throw.h, unif.h, variable.h, vectors.h, version.h,
vports.h, weaks.h: Find __scm.h in its new location.
* __scm.h: Find scmconfig.h and tags.h in their new locations
(they're both "inner" files).
the command line in every compilation.
* Makefile.in (libpath.h): New target.
(feature.o): Depend on libpath.h.
(clean): Delete libpath.h.
(ALL_CFLAGS): Don't use -DLIBRARY_PATH here. Instead ...
* feature.c: ... #include "libpath.h" here.
* .cvsignore: Ignore libpath.h.
the command line in every compilation.
* Makefile.in (libpath.h): New target.
(features.o): Depend on libpath.h.
(clean): Delete libpath.h.
(ALL_CFLAGS): Don't use -DLIBRARY_PATH here. Instead ...
* features.c: ... #include "libpath.h" here.
* .cvsignore: Ignore libpath.h.
#define _POSIX_SOURCE before #including it.
* aclocal.m4 (GUILE_STRUCT_UTIMBUF): New test.
* acconfig.h: New comment text for above CPP symbol.
* configure.in: Call it.
* posix.c: #define _POSIX_SOURCE if it seems necessary.
#define _POSIX_SOURCE before #including it.
* aclocal.m4 (GUILE_STRUCT_UTIMBUF): New test.
* acconfig.h: New comment text for above CPP symbol.
* configure.in: Call it.
* posix.c: #define _POSIX_SOURCE if it seems necessary.
* configure.in (AC_CHECK_HEADERS): Include sys/utime.h and utime.h
in the list.
* posix.c: Check HAVE_SYS_UTIME_H and HAVE_UTIME_H, instead of
testing for __EMX__.
* posix.c: #include <libc.h>, if it exists.
* posix.c: Cast the return result to GETGROUPS_T, not gid_t; we
don't even know if the latter exists.
* posix.c (s_sys_setpgid, s_sys_setsid, s_sys_ctermid,
s_sys_tcgetpgrp, s_sys_tcsetpgrp): Renamed from s_setpgid,
s_setsid, s_ctermid, s_tcgetpgrp, s_tcsetpgrp, for consistency.
* posix.c (R_OK, W_OK, X_OK, F_OK): #define these if the system's
header files don't.
(scm_init_posix): Use them when initializing the Scheme constants
of the same name.
#define _POSIX_SOURCE before #including it.
* aclocal.m4 (GUILE_STRUCT_UTIMBUF): New test.
* acconfig.h: New comment text for above CPP symbol.
* configure.in: Call it.
* posix.c: #define _POSIX_SOURCE if it seems necessary.
* configure.in (AC_CHECK_HEADERS): Include sys/utime.h and utime.h
in the list.
* posix.c: Check HAVE_SYS_UTIME_H and HAVE_UTIME_H, instead of
testing for __EMX__.
autoconf-supplied values, instead of deriving them ourselves.
(pkgincludedir, datadir, pkgdatadir): New variables.
(install, uninstall): Put the header files in a special
subdirectory, not in the main search path.
* Makefile.in (IMPLPATH): Deleted; never used.
* Makefile.in (TCL_SRC_DIR, TK_SRC_DIR): Deleted; we don't depend
on the Tcl/Tk source any more.
(INCLUDE_CFLAGS): Remove references to the above.
* Makefile.in (version.o): Corrected dependencies.
array; use it appropriately. Since GCC is quite happy to
subscript functions, it never warned us about this; we should use
-Wpointer-arith in the future. I guess we never tested
case-insensitivity.
* Makefile.in (c_files): add strerror.c.
* strerror.c: new file from Emacs' sysdep.c.
maybe configure should also check for sys_errlist.
* configure.in (AC_REPLACE_FUNCS): add strerror.
(Mostly prefixing with SCM_.) Renamed "debug-options" -->
"debug-options-interface". See commentary in options.c.
* options.h, options.c: Options now have documentation strings.
Also added a long explanatory commentary.