From dee51391315e2bb819409a6b3eb23ee6ef6d3c59 Mon Sep 17 00:00:00 2001 From: Jeff Johnston Date: Wed, 17 Jul 2002 23:25:44 +0000 Subject: 2002-07-17 Jeff Johnston * configure.host(stdio64_dir): New setting that is used to enable building of new stdio64 directory. * libc/Makefile.am[HAVE_STDIO64_DIR]: Add support for large files. (stmp-stdio64,stdio64.texi): New targets to optionally add in stdio64 info to info files. * libc/Makefile.in: Regenerated. * libc/configure: Ditto. * libc/configure.in: Add configuration variables that are set when stdio64 is selected as subdir in configure.host. * libc/libc.texinfo: Add optional menu item for Stdio64, based on whether STDIO64 flag is set or not. * libc/sys.tex: Add optional stdio64 syscalls based on whether STDIO64 flag is set or not. * libc/include/reent.h[__LARGE64_FILES]: Add new stdio64 _r sycall routines. * libc/include/stdio.h[__LARGE64_FILES]: Add new stdio64 prototypes. (FILE): Typedef'd to __FILE instead of struct __sFILE directly. (__SL64): New file flag indicating file is opened via fopen64. * libc/include/sys/_types.h(_off64_t): Added. * libc/include/sys/config.h: For x86-linux, define __LARGE64_FILES. * libc/include/sys/reent.h(struct __sFILE64): New file structure for 64-bit offset large file support. (__FILE): New intermediate type either set to struct __sFILE64 or struct __sFILE, depending on whether __LARGE64_FILES is set or not. * libc/reent/Makefile.am[HAVE_STDIO64_DIR]: Add new files. * libc/reent/Makefile.in: Regenerated. * libc/reent/fstat64r.c: New file. * libc/reent/lseek64r.c: Ditto. * libc/reent/open64r.c: Ditto. * libc/reent/reent.tex: Optionally add stdio64 reentrant syscalls based on whether STDIO64 flag is set. * libc/stdio/stdio.tex: Add blank line. * libc/stdio64/Makefile.am: New file. * libc/stdio64/Makefile.in: Ditto. * libc/stdio64/fgetpos64.c: Ditto. * libc/stdio64/fopen64.: Ditto. * libc/stdio64/freopen64.c: Ditto. * libc/stdio64/fseeko64.c: Ditto. * libc/stdio64/fsetpos64.c: Ditto. * libc/stdio64/ftello64.c: Ditto. * libc/stdio64/local64.h: Ditto. * libc/stdio64/stdio64.c: Ditto. * libc/stdio64/stdio64.tex: Ditto. * libc/stdio64/tmpfile64.c: Ditto. * libc/sys/linux/io64.c: Add weak aliases for lseek64, fstat64, and open64. --- newlib/libc/Makefile.am | 25 ++++++++++++++++++++++--- 1 file changed, 22 insertions(+), 3 deletions(-) (limited to 'newlib/libc/Makefile.am') diff --git a/newlib/libc/Makefile.am b/newlib/libc/Makefile.am index 7e8bdba1d..3f631e94c 100644 --- a/newlib/libc/Makefile.am +++ b/newlib/libc/Makefile.am @@ -18,9 +18,13 @@ if HAVE_UNIX_DIR UNIX_SUBDIR = unix endif +if HAVE_STDIO64_DIR +STDIO64_SUBDIR = stdio64 +endif + # The order of SUBDIRS is important for the integrated documentation. # Do not change the order without considering the doc impact. -SUBDIRS = argz stdlib ctype search stdio string $(SIGNAL_SUBDIR) time locale sys reent \ +SUBDIRS = argz stdlib ctype search stdio $(STDIO64_SUBDIR) string $(SIGNAL_SUBDIR) time locale sys reent \ $(extra_dir) errno misc machine $(UNIX_SUBDIR) $(POSIX_SUBDIR) $(SYSCALLS_SUBDIR) . noinst_DATA = $(CRT0) @@ -33,6 +37,7 @@ SUBLIBS = \ ctype/libctype.$(aext) \ search/libsearch.$(aext) \ stdio/libstdio.$(aext) \ + $(LIBC_STDIO64_LIB) \ string/libstring.$(aext) \ $(LIBC_SIGNAL_LIB) \ time/libtime.$(aext) \ @@ -54,6 +59,7 @@ SUBLIBS = \ ctype/lib.$(aext) \ search/lib.$(aext) \ stdio/lib.$(aext) \ + $(LIBC_STDIO64_LIB) \ string/lib.$(aext) \ $(LIBC_SIGNAL_LIB) \ time/lib.$(aext) \ @@ -106,6 +112,7 @@ SUBDEFS = \ stdlib/stmp-def \ ctype/stmp-def \ stdio/stmp-def \ + $(LIBC_STDIO64_DEF) \ string/stmp-def \ $(LIBC_SIGNAL_DEF) \ time/stmp-def \ @@ -114,7 +121,7 @@ SUBDEFS = \ $(LIBC_EXTRA_DEF) \ misc/stmp-def -libc.info: sigset.texi extra.texi targetdep.tex $(SUBDEFS) +libc.info: sigset.texi extra.texi stdio64.texi targetdep.tex $(SUBDEFS) stmp-sigset: config.status if test -n "$(LIBC_SIGNAL_LIB)"; then \ @@ -138,6 +145,17 @@ stmp-extra: config.status extra.texi: stmp-extra ; @true +stmp-stdio64: config.status + if test -n "$(LIBC_STDIO64_LIB)"; then \ + echo "@set STDIO64" >tmp.texi; \ + else \ + echo "@clear STDIO64" >tmp.texi; \ + fi + $(SHELL) $(newlib_basedir)/../move-if-change tmp.texi stdio64.texi + touch $@ + +stdio64.texi: stmp-stdio64 ; @true + stmp-targetdep: force rm -f tmp.texi targetdoc=`pwd`/tmp.texi; \ @@ -158,7 +176,8 @@ $(SUBDEFS): stmp-targetdep ; @true force: CLEANFILES = $(CRT0) \ - sigset.texi stmp-sigset tmp.texi targetdep.tex stmp-targetdep + sigset.texi stmp-sigset extra.texi stmp-extra \ + stdio64.texi stmp-stdio64 tmp.texi targetdep.tex stmp-targetdep ACLOCAL_AMFLAGS = -I .. CONFIG_STATUS_DEPENDENCIES = $(newlib_basedir)/configure.host -- cgit v1.2.3