Mercurial > hg > octave-nkf > gnulib-hg
annotate modules/ftruncate @ 16795:6a9ea5d7b466
Large File Support for native Windows platforms.
* m4/largefile.m4 (gl_LARGEFILE): New macro.
* modules/largefile (configure.ac): Require gl_LARGEFILE.
* lib/sys_types.in.h (off_t) [WINDOWS_64_BIT_OFF_T]: Define to a 64-bit
type.
* m4/sys_types_h.m4 (gl_SYS_TYPES_H): Set WINDOWS_64_BIT_OFF_T.
* modules/sys_types (Makefile.am): Substitute WINDOWS_64_BIT_OFF_T.
* doc/posix-headers/sys_types.texi: Mention the effect of the
'largefile' module.
* lib/fcntl.in.h: Add comments about off_t.
* modules/fcntl-h (Depends-on): Add sys_types.
* lib/unistd.in.h [WINDOWS_64_BIT_OFF_T]: Include <sys/types.h>.
(ftruncate): Replace it if REPLACE_FTRUNCATE is 1.
* m4/unistd_h.m4 (gl_UNISTD_H): Require gl_SYS_TYPES_H.
(gl_UNISTD_H_DEFAULTS): Initialize REPLACE_FTRUNCATE.
* modules/unistd (Depends-on): Add sys_types.
(Makefile.am): Substitute WINDOWS_64_BIT_OFF_T, REPLACE_FTRUNCATE.
* lib/lseek.c (rpl_lseek) [_GL_WINDOWS_64_BIT_OFF_T]: Use _lseeki64
instead of lseek.
* m4/lseek.m4 (gl_FUNC_LSEEK): Require gl_SYS_TYPES_H. Set
REPLACE_LSEEK if WINDOWS_64_BIT_OFF_T is 1.
* modules/lseek (Depends-on): Add sys_types.
* lib/ftruncate.c: Put under GPLv3+. Include <windows.h>,
msvc-nothrow.h.
(SetFileSize): New function.
(ftruncate) [_GL_WINDOWS_64_BIT_OFF_T]: New implementation.
* m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Set REPLACE_FTRUNCATE on Windows
if Large File Support is requested.
* modules/ftruncate (configure.ac): Consider REPLACE_FTRUNCATE.
(Depends-on): Add sys_types, msvc-nothrow. Update conditions.
* lib/stdio.in.h: Add comments about off_t.
* modules/stdio (Depends-on): Add sys_types.
* lib/ftello.c [_GL_WINDOWS_64_BIT_OFF_T]: Use _ftelli64 or ftello64
instead of ftello.
* m4/ftello.m4 (gl_FUNC_FTELLO): Require gl_SYS_TYPES_H. Set
REPLACE_FTELLO if WINDOWS_64_BIT_OFF_T is 1.
(gl_PREREQ_FTELLO): New macro.
* modules/ftello (Depends-on): Add sys_types.
(configure.ac): Incoke gl_PREREQ_FTELLO.
* lib/fseeko.c [_GL_WINDOWS_64_BIT_OFF_T]: Use _fseeki64 or fseeko64
instead of fseeko.
* m4/fseeko.m4 (gl_FUNC_FSEEKO): Require gl_SYS_TYPES_H. Set
REPLACE_FSEEKO if WINDOWS_64_BIT_OFF_T is 1.
(gl_PREREQ_FSEEKO): New macro.
* modules/fseeko (Depends-on): Add sys_types.
(configure.ac): Invoke gl_PREREQ_FSEEKO.
* lib/sys_stat.in.h: Add comments about off_t.
(stat, fstat) [WINDOWS_64_BIT_ST_SIZE]: Define to variants that use a
64-bit integer for st_size in 'struct stat'.
* m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Set WINDOWS_64_BIT_ST_SIZE.
Define _GL_WINDOWS_64_BIT_ST_SIZE.
* modules/sys_stat (Depends-on): Add sys_types.
(Makefile.am): Substitute WINDOWS_64_BIT_ST_SIZE.
* lib/stat.c (stat) [_GL_WINDOWS_64_BIT_ST_SIZE]: Define to _stati64
instead of stat or _stat.
* lib/fstat.c [_GL_WINDOWS_64_BIT_ST_SIZE]: Use _fstati64 and
'struct _stati64' instead of fstat and 'struct stat'.
* m4/fstat.m4 (gl_FUNC_FSTAT): Require gl_HEADER_SYS_STAT_H. Set
REPLACE_FSTAT if WINDOWS_64_BIT_ST_SIZE is 1.
Reported by Ray Satiro <raysatiro@yahoo.com>.
author | Bruno Haible <bruno@clisp.org> |
---|---|
date | Sat, 14 Apr 2012 23:27:45 +0200 |
parents | 402bb52d5f11 |
children |
rev | line source |
---|---|
4110 | 1 Description: |
4172 | 2 ftruncate() function: truncate an open file to a specified length. |
4110 | 3 |
4 Files: | |
5 lib/ftruncate.c | |
6 m4/ftruncate.m4 | |
7 | |
8 Depends-on: | |
8199
51d32a83a7df
Move more declarations into <unistd.h>.
Bruno Haible <bruno@clisp.org>
parents:
7497
diff
changeset
|
9 unistd |
16795
6a9ea5d7b466
Large File Support for native Windows platforms.
Bruno Haible <bruno@clisp.org>
parents:
15782
diff
changeset
|
10 sys_types |
15739
9f82d16d3139
ftruncate: Un-deprecate, concentrate on Win32 support.
Bruno Haible <bruno@clisp.org>
parents:
14950
diff
changeset
|
11 largefile |
16795
6a9ea5d7b466
Large File Support for native Windows platforms.
Bruno Haible <bruno@clisp.org>
parents:
15782
diff
changeset
|
12 msvc-nothrow [test $HAVE_FTRUNCATE = 0 || test $REPLACE_FTRUNCATE = 1] |
6a9ea5d7b466
Large File Support for native Windows platforms.
Bruno Haible <bruno@clisp.org>
parents:
15782
diff
changeset
|
13 msvc-inval [test $HAVE_FTRUNCATE = 0 || test $REPLACE_FTRUNCATE = 1] |
4110 | 14 |
15 configure.ac: | |
5016
7141ea4946af
Change jm_ to gl_ in AC_DEFINE'd names. Update all uses.
Jim Meyering <jim@meyering.net>
parents:
4197
diff
changeset
|
16 gl_FUNC_FTRUNCATE |
16795
6a9ea5d7b466
Large File Support for native Windows platforms.
Bruno Haible <bruno@clisp.org>
parents:
15782
diff
changeset
|
17 if test $HAVE_FTRUNCATE = 0 || test $REPLACE_FTRUNCATE = 1; then |
14950
94995b9f1d9a
ftruncate: Move AC_LIBOBJ invocations to module description.
Bruno Haible <bruno@clisp.org>
parents:
13188
diff
changeset
|
18 AC_LIBOBJ([ftruncate]) |
94995b9f1d9a
ftruncate: Move AC_LIBOBJ invocations to module description.
Bruno Haible <bruno@clisp.org>
parents:
13188
diff
changeset
|
19 gl_PREREQ_FTRUNCATE |
94995b9f1d9a
ftruncate: Move AC_LIBOBJ invocations to module description.
Bruno Haible <bruno@clisp.org>
parents:
13188
diff
changeset
|
20 fi |
8199
51d32a83a7df
Move more declarations into <unistd.h>.
Bruno Haible <bruno@clisp.org>
parents:
7497
diff
changeset
|
21 gl_UNISTD_MODULE_INDICATOR([ftruncate]) |
4110 | 22 |
23 Makefile.am: | |
24 | |
25 Include: | |
26 <unistd.h> | |
27 | |
5251
42b53a22aee5
Add a license tag to every module.
Bruno Haible <bruno@clisp.org>
parents:
5016
diff
changeset
|
28 License: |
42b53a22aee5
Add a license tag to every module.
Bruno Haible <bruno@clisp.org>
parents:
5016
diff
changeset
|
29 GPL |
42b53a22aee5
Add a license tag to every module.
Bruno Haible <bruno@clisp.org>
parents:
5016
diff
changeset
|
30 |
4197 | 31 Maintainer: |
32 Jim Meyering |