mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-17 01:00:20 +02:00
Handle lack of struct dirent64' and
readdir64_r ()' on HP-UX 11.11.
This commit is contained in:
parent
9143131b27
commit
dc329592ff
7 changed files with 72 additions and 4 deletions
|
@ -1,3 +1,13 @@
|
|||
2008-07-16 Ludovic Courtès <ludo@gnu.org>
|
||||
|
||||
* gen-scmconfig.h.in (SCM_I_GSC_HAVE_STRUCT_DIRENT64): New.
|
||||
* gen-scmconfig.c (main): Produce definitions of
|
||||
`SCM_HAVE_STRUCT_DIRENT64' and `SCM_HAVE_READDIR64_R'.
|
||||
* _scm.h (dirent_or_dirent64): Depend on
|
||||
`SCM_HAVE_STRUCT_DIRENT64', for the sake of HP-UX 11.11.
|
||||
(readdir_r_or_readdir64_r): Depend on `SCM_HAVE_READDIR64_R',
|
||||
for HP-UX 11.11.
|
||||
|
||||
2008-07-05 Ludovic Courtès <ludo@gnu.org>
|
||||
|
||||
* strings.c (scm_c_symbol_length): New function.
|
||||
|
|
|
@ -113,7 +113,11 @@
|
|||
#endif
|
||||
|
||||
/* These names are a bit long, but they make it clear what they represent. */
|
||||
#define dirent_or_dirent64 CHOOSE_LARGEFILE(dirent,dirent64)
|
||||
#if SCM_HAVE_STRUCT_DIRENT64 == 1
|
||||
# define dirent_or_dirent64 CHOOSE_LARGEFILE(dirent,dirent64)
|
||||
#else
|
||||
# define dirent_or_dirent64 dirent
|
||||
#endif
|
||||
#define fstat_or_fstat64 CHOOSE_LARGEFILE(fstat,fstat64)
|
||||
#define ftruncate_or_ftruncate64 CHOOSE_LARGEFILE(ftruncate,ftruncate64)
|
||||
#define lseek_or_lseek64 CHOOSE_LARGEFILE(lseek,lseek64)
|
||||
|
@ -121,7 +125,11 @@
|
|||
#define off_t_or_off64_t CHOOSE_LARGEFILE(off_t,off64_t)
|
||||
#define open_or_open64 CHOOSE_LARGEFILE(open,open64)
|
||||
#define readdir_or_readdir64 CHOOSE_LARGEFILE(readdir,readdir64)
|
||||
#define readdir_r_or_readdir64_r CHOOSE_LARGEFILE(readdir_r,readdir64_r)
|
||||
#if SCM_HAVE_READDIR64_R == 1
|
||||
# define readdir_r_or_readdir64_r CHOOSE_LARGEFILE(readdir_r,readdir64_r)
|
||||
#else
|
||||
# define readdir_r_or_readdir64_r readdir_r
|
||||
#endif
|
||||
#define stat_or_stat64 CHOOSE_LARGEFILE(stat,stat64)
|
||||
#define truncate_or_truncate64 CHOOSE_LARGEFILE(truncate,truncate64)
|
||||
#define scm_from_off_t_or_off64_t CHOOSE_LARGEFILE(scm_from_off_t,scm_from_int64)
|
||||
|
|
|
@ -387,6 +387,19 @@ main (int argc, char *argv[])
|
|||
pf ("#define SCM_NEED_BRACES_ON_PTHREAD_MUTEX_INITIALIZER %d /* 0 or 1 */\n",
|
||||
SCM_I_GSC_NEED_BRACES_ON_PTHREAD_MUTEX_INITIALIZER);
|
||||
|
||||
pf ("\n\n/*** File system access ***/\n");
|
||||
|
||||
pf ("/* Define to 1 if `struct dirent64' is available. */\n");
|
||||
pf ("#define SCM_HAVE_STRUCT_DIRENT64 %d /* 0 or 1 */\n",
|
||||
SCM_I_GSC_HAVE_STRUCT_DIRENT64);
|
||||
|
||||
pf ("/* Define to 1 if `readdir64_r ()' is available. */\n");
|
||||
#ifdef HAVE_READDIR64_R
|
||||
pf ("#define SCM_HAVE_READDIR64_R 1 /* 0 or 1 */\n");
|
||||
#else
|
||||
pf ("#define SCM_HAVE_READDIR64_R 0 /* 0 or 1 */\n");
|
||||
#endif
|
||||
|
||||
#if USE_DLL_IMPORT
|
||||
pf ("\n");
|
||||
pf ("/* Define some additional CPP macros on Win32 platforms. */\n");
|
||||
|
|
|
@ -30,6 +30,7 @@
|
|||
#define SCM_I_GSC_USE_NULL_THREADS @SCM_I_GSC_USE_NULL_THREADS@
|
||||
#define SCM_I_GSC_NEED_BRACES_ON_PTHREAD_ONCE_INIT @SCM_I_GSC_NEED_BRACES_ON_PTHREAD_ONCE_INIT@
|
||||
#define SCM_I_GSC_NEED_BRACES_ON_PTHREAD_MUTEX_INITIALIZER @SCM_I_GSC_NEED_BRACES_ON_PTHREAD_MUTEX_INITIALIZER@
|
||||
#define SCM_I_GSC_HAVE_STRUCT_DIRENT64 @SCM_I_GSC_HAVE_STRUCT_DIRENT64@
|
||||
|
||||
/*
|
||||
Local Variables:
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue