X-Git-Url: https://git.hcoop.net/bpt/guile.git/blobdiff_plain/df3d365a99311ecfe921d1dfd1848ff65112e572..a5cbbaa66a2491453db0edff9b0cb592a98f61bf:/configure.ac diff --git a/configure.ac b/configure.ac index 1ba6f3d81..d0d9851c1 100644 --- a/configure.ac +++ b/configure.ac @@ -734,8 +734,6 @@ AC_CHECK_HEADERS([assert.h crt_externs.h]) # has it as an inline for chsize) # ioctl - not in mingw. # gmtime_r - recent posix, not on old systems -# pipe - not in mingw -# _pipe - specific to mingw, taking 3 args # readdir_r - recent posix, not on old systems # readdir64_r - not available on HP-UX 11.11 # stat64 - SuS largefile stuff, not on old systems @@ -751,10 +749,10 @@ AC_CHECK_HEADERS([assert.h crt_externs.h]) # AC_CHECK_FUNCS([DINFINITY DQNAN cexp chsize clog clog10 ctermid \ fesetround ftime ftruncate fchown fchmod getcwd geteuid getsid \ - gettimeofday gmtime_r ioctl lstat mkdir mknod nice pipe _pipe \ - readdir_r readdir64_r readlink rename rmdir select setegid seteuid \ - setlocale setpgid setsid sigaction siginterrupt stat64 strftime \ - strptime symlink sync sysconf tcgetpgrp tcsetpgrp times uname waitpid \ + gettimeofday gmtime_r ioctl lstat mkdir mknod nice \ + readdir_r readdir64_r readlink rename rmdir setegid seteuid \ + setlocale setpgid setsid sigaction siginterrupt stat64 \ + strptime symlink sync sysconf tcgetpgrp tcsetpgrp uname waitpid \ strdup system usleep atexit on_exit chown link fcntl ttyname getpwent \ getgrent kill getppid getpgrp fork setitimer getitimer strchr strcmp \ index bcopy memcpy rindex truncate unsetenv isblank _NSGetEnviron \ @@ -1302,6 +1300,29 @@ if test $scm_cv_struct_linger = yes; then getsockopt and setsockopt system calls.]) fi + +dnl Check for `struct timespec', for the sake of `gen-scmconfig'. When +dnl building Guile, we always have it, thanks to Gnulib; but scmconfig.h +dnl must tell whether the system has it. +dnl +dnl On MinGW, struct timespec is in . +AC_MSG_CHECKING(for struct timespec) +AC_CACHE_VAL(scm_cv_struct_timespec, + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ +#include +#if HAVE_PTHREAD_H +#include +#endif]], [[struct timespec t; t.tv_nsec = 100]])], + [scm_cv_struct_timespec="yes"], + [scm_cv_struct_timespec="no"])) +AC_MSG_RESULT($scm_cv_struct_timespec) +if test $scm_cv_struct_timespec = yes; then + dnl Don't call it `HAVE_STRUCT_TIMESPEC' because pthread-win32's + dnl checks whether that macro is defined. + AC_DEFINE([HAVE_SYSTEM_STRUCT_TIMESPEC], 1, + [Define this if your system defines struct timespec via either or .]) +fi + #-------------------------------------------------------------------- # # Flags for thread support @@ -1529,10 +1550,11 @@ AC_SUBST(GCC_CFLAGS) GUILE_GNU_LD_RELRO -## If we're creating a shared library (using libtool!), then we'll -## need to generate a list of .lo files corresponding to the .o files -## given in LIBOBJS. We'll call it LIBLOBJS. -LIBLOBJS="`echo ${LIB@&t@OBJS} | sed 's,\.[[^.]]* ,.lo ,g;s,\.[[^.]]*$,.lo,'`" +LIBLOBJS="" +for file in $LIBOBJS; do + file=`echo "$file" | sed 's,\.[[^.]]*$,.lo,'` + LIBLOBJS="$LIBLOBJS libguile_${GUILE_EFFECTIVE_VERSION}_la-$file" +done ## We also need to create corresponding .doc and .x files EXTRA_DOT_DOC_FILES="`echo ${LIB@&t@OBJS} | sed 's,\.[[^.]]* ,.doc ,g;s,\.[[^.]]*$,.doc,'`"