diff --git a/src/cmd/ksh93/include/shell.h b/src/cmd/ksh93/include/shell.h index ccc1f555a..7db872d12 100644 --- a/src/cmd/ksh93/include/shell.h +++ b/src/cmd/ksh93/include/shell.h @@ -491,13 +491,8 @@ extern Shell_t sh; # define write(a,b,c) sh_write(a,b,c) # define umask(a) sh_umask(a) # define dup sh_dup -# if _lib_lseek64 -# define open64 sh_open -# define lseek64 sh_seek -# else -# define open sh_open -# define lseek sh_seek -# endif +# define open sh_open +# define lseek sh_seek #endif /* !defs_h_defined */ #define SH_SIGSET 4 diff --git a/src/lib/libast/Mamfile b/src/lib/libast/Mamfile index 13ae0fc24..df44e11a4 100644 --- a/src/lib/libast/Mamfile +++ b/src/lib/libast/Mamfile @@ -23,12 +23,15 @@ make install make ast make libast.a archive make ast.req - make FEATURE/standards - meta FEATURE/standards features/%>FEATURE/% features/standards standards - make features/standards - done features/standards - exec - iffe ${IFFEFLAGS} -v -X ast -X std -c "${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${CCFLAGS} ${LDFLAGS}" run features/standards - done FEATURE/standards generated + make ast_standards.h implicit + make FEATURE/standards + meta FEATURE/standards features/%>FEATURE/% features/standards standards + make features/standards + done features/standards + exec - iffe ${IFFEFLAGS} -v -X ast -X std -c "${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${CCFLAGS} ${LDFLAGS}" run features/standards + done FEATURE/standards generated + exec - cmp 2>/dev/null -s FEATURE/standards ast_standards.h || { rm -f ast_standards.h; ${STDCP} FEATURE/standards ast_standards.h; } + done ast_standards.h generated make FEATURE/lib meta FEATURE/lib features/%>FEATURE/% features/lib lib make features/lib @@ -262,6 +265,7 @@ make install exec - iffe ${IFFEFLAGS} -v -X ast -X std -c "${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${CCFLAGS} ${LDFLAGS}" run features/fs done FEATURE/fs generated prev FEATURE/lib implicit + prev FEATURE/standards implicit done features/fcntl.c exec - iffe ${IFFEFLAGS} -v -X ast -X std -c "${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${CCFLAGS} -I. -Icomp -Iinclude -Istd ${LDFLAGS}" run features/fcntl.c make ast_fs.h implicit @@ -282,6 +286,7 @@ make install exec - cmp 2>/dev/null -s FEATURE/lib ast_lib.h || { rm -f ast_lib.h; silent test -d . || mkdir .; ${STDCP} FEATURE/lib ast_lib.h; } done ast_lib.h dontcare generated prev ast_common.h implicit + prev ast_standards.h implicit done include/ast_std.h dontcare done FEATURE/stdio generated exec - cmp 2>/dev/null -s FEATURE/stdio ast_stdio.h || { rm -f ast_stdio.h; silent test -d . || mkdir .; ${STDCP} FEATURE/stdio ast_stdio.h; } @@ -1482,10 +1487,7 @@ make install done include/mc.h prev ast_wchar.h implicit prev port/lclib.h implicit - make ast_standards.h implicit - prev FEATURE/standards - exec - cmp 2>/dev/null -s FEATURE/standards ast_standards.h || { rm -f ast_standards.h; silent test -d . || mkdir .; ${STDCP} FEATURE/standards ast_standards.h; } - done ast_standards.h generated + prev ast_standards.h implicit done comp/setlocale.c meta setlocale.o %.c>%.o comp/setlocale.c setlocale prev comp/setlocale.c @@ -2104,7 +2106,6 @@ make install done include/wait.h dontcare prev sig.h implicit prev include/ast.h implicit - prev ast_standards.h implicit done misc/proclib.h done misc/procopen.c meta procopen.o %.c>%.o misc/procopen.c procopen @@ -3207,14 +3208,6 @@ make install prev comp/waitpid.c exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${CCFLAGS} -I. -Icomp -Iinclude -Istd -D_PACKAGE_ast -c comp/waitpid.c done waitpid.o generated - make creat64.o - make comp/creat64.c - prev include/ast.h implicit - done comp/creat64.c - meta creat64.o %.c>%.o comp/creat64.c creat64 - prev comp/creat64.c - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${CCFLAGS} -I. -Icomp -Iinclude -Istd -D_PACKAGE_ast -c comp/creat64.c - done creat64.o generated make fcntl.o make comp/fcntl.c prev include/error.h implicit @@ -4703,6 +4696,7 @@ make install make stdio/stdhdr.h implicit prev std/stdio.h implicit prev sfio/sfhdr.h implicit + prev ast_standards.h implicit done stdio/stdhdr.h done stdio/clearerr.c meta clearerr.o %.c>%.o stdio/clearerr.c clearerr @@ -6075,7 +6069,7 @@ make install exec - ${AR} rc libast.a state.o transition.o opendir.o readdir.o rewinddir.o seekdir.o telldir.o getcwd.o fastfind.o hashalloc.o hashdump.o hashfree.o hashlast.o hashlook.o hashscan.o hashsize.o hashview.o hashwalk.o memhash.o memsum.o strhash.o strkey.o strsum.o stracmp.o strnacmp.o ccmap.o ccmapid.o ccnative.o chresc.o chrtoi.o exec - ${AR} rc libast.a streval.o strexpr.o strmatch.o strcopy.o modei.o modex.o strmode.o strlcat.o strlcpy.o strlook.o strncopy.o strsearch.o strpsearch.o stresc.o stropt.o strtape.o strpcmp.o strnpcmp.o strvcmp.o strnvcmp.o tok.o tokline.o tokscan.o pathaccess.o pathcat.o pathcanon.o pathcheck.o pathpath.o pathexists.o pathfind.o pathicase.o pathkey.o pathprobe.o pathrepl.o pathnative.o pathposix.o pathtemp.o pathtmp.o pathstat.o pathgetlink.o pathsetlink.o pathbin.o pathshell.o pathcd.o pathprog.o ftwalk.o ftwflags.o fts.o astintercept.o conformance.o getenv.o setenviron.o optget.o optjoin.o optesc.o optctx.o strsort.o struniq.o magic.o mime.o mimetype.o signal.o sigflag.o systrace.o error.o errorf.o errormsg.o errorx.o localeconv.o setlocale.o translate.o catopen.o iconv.o lc.o lctab.o mc.o base64.o recfmt.o recstr.o reclen.o fmtrec.o fmtbase.o fmtbuf.o fmtclock.o fmtdev.o fmtelapsed.o fmterror.o fmtesc.o fmtfmt.o fmtfs.o fmtident.o fmtint.o fmtip4.o fmtip6.o fmtls.o fmtmatch.o fmtmode.o fmtnum.o fmtperm.o fmtre.o fmttime.o exec - ${AR} rc libast.a fmtuid.o fmtgid.o fmtsignal.o fmtscale.o fmttmx.o fmttv.o fmtversion.o strelapsed.o strperm.o struid.o strgid.o strtoip4.o strtoip6.o stack.o stk.o swapget.o swapmem.o swapop.o swapput.o sigdata.o sigcrit.o sigunblock.o procopen.o procclose.o procrun.o procfree.o tmdate.o tmequiv.o tmfix.o tmfmt.o tmform.o tmgoff.o tminit.o tmleap.o tmlex.o tmlocale.o tmmake.o tmpoff.o tmscan.o tmsleep.o tmtime.o tmtype.o tmweek.o tmword.o tmzone.o tmxdate.o tmxduration.o tmxfmt.o tmxgettime.o tmxleap.o tmxmake.o tmxscan.o tmxsettime.o tmxsleep.o tmxtime.o tmxtouch.o tvcmp.o tvgettime.o tvsettime.o tvsleep.o tvtouch.o cmdarg.o vecargs.o vecfile.o vecfree.o vecload.o vecstring.o univdata.o touch.o mnt.o debug.o memccpy.o memchr.o memcmp.o memcpy.o memdup.o memmove.o memset.o mkdir.o mkfifo.o mknod.o rmdir.o remove.o rename.o link.o unlink.o strdup.o strchr.o strrchr.o strstr.o strtod.o strtold.o strtol.o strtoll.o strtoul.o strtoull.o strton.o strtonll.o strntod.o strntold.o strnton.o - exec - ${AR} rc libast.a strntonll.o strntol.o strntoll.o strntoul.o strntoull.o strcasecmp.o strncasecmp.o strerror.o mktemp.o tmpnam.o fsync.o execlp.o execve.o execvp.o execvpe.o spawnveg.o vfork.o killpg.o hsearch.o tsearch.o getlogin.o putenv.o setenv.o unsetenv.o lstat.o statvfs.o eaccess.o gross.o omitted.o readlink.o symlink.o getpgrp.o setpgid.o setsid.o waitpid.o creat64.o fcntl.o open.o atexit.o getdents.o getwd.o dup2.o errno.o getpreroot.o ispreroot.o realopen.o setpreroot.o getgroups.o mount.o system.o iblocks.o modedata.o tmdata.o memfatal.o sfkeyprintf.o sfdcdio.o sfdcdos.o sfdcfilter.o sfdcseekable.o sfdcslow.o sfdcsubstr.o sfdctee.o sfdcunion.o sfdcmore.o sfdcprefix.o wc.o wc2utf8.o basename.o closelog.o dirname.o fmtmsglib.o fnmatch.o ftw.o getdate.o getsubopt.o glob.o nftw.o openlog.o re_comp.o resolvepath.o realpath.o regcmp.o regexp.o setlogmask.o strftime.o strptime.o swab.o syslog.o tempnam.o wordexp.o mktime.o regalloc.o regclass.o regcoll.o regcomp.o regcache.o regdecomp.o regerror.o regexec.o regfatal.o reginit.o + exec - ${AR} rc libast.a strntonll.o strntol.o strntoll.o strntoul.o strntoull.o strcasecmp.o strncasecmp.o strerror.o mktemp.o tmpnam.o fsync.o execlp.o execve.o execvp.o execvpe.o spawnveg.o vfork.o killpg.o hsearch.o tsearch.o getlogin.o putenv.o setenv.o unsetenv.o lstat.o statvfs.o eaccess.o gross.o omitted.o readlink.o symlink.o getpgrp.o setpgid.o setsid.o waitpid.o fcntl.o open.o atexit.o getdents.o getwd.o dup2.o errno.o getpreroot.o ispreroot.o realopen.o setpreroot.o getgroups.o mount.o system.o iblocks.o modedata.o tmdata.o memfatal.o sfkeyprintf.o sfdcdio.o sfdcdos.o sfdcfilter.o sfdcseekable.o sfdcslow.o sfdcsubstr.o sfdctee.o sfdcunion.o sfdcmore.o sfdcprefix.o wc.o wc2utf8.o basename.o closelog.o dirname.o fmtmsglib.o fnmatch.o ftw.o getdate.o getsubopt.o glob.o nftw.o openlog.o re_comp.o resolvepath.o realpath.o regcmp.o regexp.o setlogmask.o strftime.o strptime.o swab.o syslog.o tempnam.o wordexp.o mktime.o regalloc.o regclass.o regcoll.o regcomp.o regcache.o regdecomp.o regerror.o regexec.o regfatal.o reginit.o exec - ${AR} rc libast.a regnexec.o regsubcomp.o regsubexec.o regsub.o regrecord.o regrexec.o regstat.o dtclose.o dtdisc.o dthash.o dtlist.o dtmethod.o dtopen.o dtstat.o dtstrhash.o dttree.o dtuser.o dtview.o dtwalk.o dtnew.o dtcomp.o sfclose.o sfclrlock.o sfdisc.o sfdlen.o sfexcept.o sfgetl.o sfgetu.o sfcvt.o sfecvt.o sffcvt.o sfextern.o sffilbuf.o sfflsbuf.o sfprints.o sfgetd.o sfgetr.o sfllen.o sfmode.o sfmove.o sfnew.o sfpkrd.o sfnotify.o sfnputc.o sfopen.o sfpeek.o sfpoll.o sfpool.o sfpopen.o sfprintf.o sfputd.o sfputl.o sfputr.o sfputu.o sfrd.o sfread.o sfreserve.o sfscanf.o sfseek.o sfset.o sfsetbuf.o sfsetfd.o sfsize.o sfsk.o sfstack.o sfstrtod.o sfsync.o sfswap.o sftable.o sftell.o sftmp.o sfungetc.o sfvprintf.o sfvscanf.o sfwr.o sfwrite.o sfpurge.o sfraise.o sfwalk.o sfgetm.o sfmutex.o sfputm.o sfresize.o _sfclrerr.o _sfeof.o _sferror.o _sffileno.o _sfopen.o _sfstacked.o _sfvalue.o _sfgetc.o _sfgetl.o _sfgetl2.o _sfgetu.o _sfgetu2.o _sfdlen.o _sfllen.o _sfslen.o _sfulen.o _sfputc.o _sfputd.o _sfputl.o _sfputm.o exec - ${AR} rc libast.a _sfputu.o clearerr.o fclose.o fdopen.o feof.o ferror.o fflush.o fgetc.o fgetpos.o fgets.o fileno.o fopen.o fprintf.o fpurge.o fputc.o fputs.o fread.o freopen.o fscanf.o fseek.o fseeko.o fsetpos.o ftell.o ftello.o fwrite.o flockfile.o ftrylockfile.o funlockfile.o getc.o getchar.o getw.o pclose.o popen.o printf.o putc.o putchar.o puts.o putw.o rewind.o scanf.o setbuf.o setbuffer.o setlinebuf.o setvbuf.o snprintf.o sprintf.o sscanf.o asprintf.o vasprintf.o tmpfile.o ungetc.o vfprintf.o vfscanf.o vprintf.o vscanf.o vsnprintf.o vsprintf.o vsscanf.o _doprnt.o _doscan.o _filbuf.o _flsbuf.o _stdfun.o _stdopen.o _stdprintf.o _stdscanf.o _stdsprnt.o _stdvbuf.o _stdvsnprnt.o _stdvsprnt.o _stdvsscn.o fgetwc.o fwprintf.o putwchar.o vfwscanf.o wprintf.o fgetws.o fwscanf.o swprintf.o vswprintf.o wscanf.o fputwc.o getwc.o swscanf.o vswscanf.o fputws.o getwchar.o ungetwc.o vwprintf.o fwide.o putwc.o vfwprintf.o vwscanf.o stdio_c99.o fcloseall.o fmemopen.o getdelim.o getline.o frexp.o frexpl.o astcopy.o exec - ${AR} rc libast.a astconf.o astdynamic.o astquery.o astwinsize.o conftab.o aststatic.o getopt.o getoptl.o aso.o asolock.o asometh.o asorelax.o aso-sem.o aso-fcntl.o vmbest.o vmclear.o vmclose.o vmdcheap.o vmdebug.o vmdisc.o vmexit.o vmlast.o vmopen.o vmpool.o vmprivate.o vmprofile.o vmregion.o vmsegment.o vmset.o vmstat.o vmstrdup.o vmtrace.o vmwalk.o vmmopen.o malloc.o vmgetmem.o a64l.o acosh.o asinh.o atanh.o cbrt.o crypt.o erf.o err.o exp.o exp__E.o expm1.o gamma.o getpass.o lgamma.o log.o log1p.o log__L.o rand48.o random.o rcmd.o rint.o support.o diff --git a/src/lib/libast/astsa/ast_common.h b/src/lib/libast/astsa/ast_common.h index 2e9462b92..692e233bc 100644 --- a/src/lib/libast/astsa/ast_common.h +++ b/src/lib/libast/astsa/ast_common.h @@ -50,9 +50,7 @@ #include #endif -#if _hdr_unistd #include -#endif #define _typ_int32_t 1 #ifdef _ast_int8_t diff --git a/src/lib/libast/comp/conf.tab b/src/lib/libast/comp/conf.tab index d42fb328e..e65e87659 100644 --- a/src/lib/libast/comp/conf.tab +++ b/src/lib/libast/comp/conf.tab @@ -170,26 +170,6 @@ KERNEL_STAMP SVID SI 1 O KERN_POINTERS C QQ 1 L KERN_SIM C QQ 1 L LEGACY XOPEN SC 1 FU -LFS_CFLAGS POSIX CS 1 MU cc{ -D_LARGEFILE_SOURCE "-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" -D_LARGEFILE64_SOURCE -64 - #include - int - main() - { - if (sizeof(off_t) >= sizeof(off_64_t)) - { - printf("-"); - return 0; - } - return 1; - } -} -LFS64_CFLAGS POSIX CS 1 MU : LFS_CFLAGS -LFS64_LDFLAGS POSIX CS 1 MU : LFS_CFLAGS -LFS64_LIBS POSIX CS 1 MU -LFS64_LINTFLAGS POSIX CS 1 MU : LFS_CFLAGS -LFS_LDFLAGS POSIX CS 1 MU : LFS_CFLAGS -LFS_LIBS POSIX CS 1 MU -LFS_LINTFLAGS POSIX CS 1 MU : LFS_CFLAGS LINE_MAX POSIX SC 2 LMN 2048 LINK_MAX POSIX PC 1 LMU MAXLINK SHRT_MAX 8 LLONG_MAX C XX 1 L diff --git a/src/lib/libast/comp/creat64.c b/src/lib/libast/comp/creat64.c deleted file mode 100644 index 252b1438b..000000000 --- a/src/lib/libast/comp/creat64.c +++ /dev/null @@ -1,38 +0,0 @@ -/*********************************************************************** -* * -* This software is part of the ast package * -* Copyright (c) 1985-2011 AT&T Intellectual Property * -* Copyright (c) 2020-2021 Contributors to ksh 93u+m * -* and is licensed under the * -* Eclipse Public License, Version 1.0 * -* by AT&T Intellectual Property * -* * -* A copy of the License is available at * -* http://www.eclipse.org/org/documents/epl-v10.html * -* (with md5 checksum b35adb5213ca9657e911e9befb180842) * -* * -* Information and Software Systems Research * -* AT&T Research * -* Florham Park NJ * -* * -* Glenn Fowler * -* David Korn * -* Phong Vo * -* * -***********************************************************************/ - -#include - -#if defined(_lib_creat64) || !defined(_lib_open64) - -NoN(creat64) - -#else - -int -creat64(const char* path, mode_t mode) -{ - return open64(path, O_WRONLY|O_CREAT|O_TRUNC, mode); -} - -#endif diff --git a/src/lib/libast/comp/gross.c b/src/lib/libast/comp/gross.c index 194969f63..7793110b4 100644 --- a/src/lib/libast/comp/gross.c +++ b/src/lib/libast/comp/gross.c @@ -62,37 +62,6 @@ extern int stat(const char* path, struct stat* st) #endif -#if _lcl_xstat64 - -extern int fstat64(int fd, struct stat64* st) -{ -#if _lib___fxstat64 - return __fxstat64(_STAT_VER, fd, st); -#else - return _fxstat64(_STAT_VER, fd, st); -#endif -} - -extern int lstat64(const char* path, struct stat64* st) -{ -#if _lib___lxstat64 - return __lxstat64(_STAT_VER, path, st); -#else - return _lxstat64(_STAT_VER, path, st); -#endif -} - -extern int stat64(const char* path, struct stat64* st) -{ -#if _lib___xstat64 - return __xstat64(_STAT_VER, path, st); -#else - return _xstat64(_STAT_VER, path, st); -#endif -} - -#endif - #if __sgi && _hdr_locale_attr #include "gross_sgi.h" diff --git a/src/lib/libast/dir/dirlib.h b/src/lib/libast/dir/dirlib.h index 3cf34822c..5cb2eae46 100644 --- a/src/lib/libast/dir/dirlib.h +++ b/src/lib/libast/dir/dirlib.h @@ -50,13 +50,7 @@ __STDPP__directive pragma pp:hide getdents getdirentries #ifndef _DIRENT_H #if _hdr_dirent -#if _typ_off64_t -#undef off_t -#endif #include -#if _typ_off64_t -#define off_t off64_t -#endif #else #if _hdr_ndir #include @@ -99,13 +93,7 @@ __STDPP__directive pragma pp:hide DIR closedir opendir readdir seekdir telldir #ifndef _DIRENT_H #if _hdr_dirent -#if _typ_off64_t -#undef off_t -#endif #include -#if _typ_off64_t -#define off_t off64_t -#endif #else #if _hdr_direntry #include diff --git a/src/lib/libast/features/dirent b/src/lib/libast/features/dirent index a261022f3..4644ab3b8 100644 --- a/src/lib/libast/features/dirent +++ b/src/lib/libast/features/dirent @@ -1,27 +1,8 @@ -set nodefine -lib stat64 -typ off64_t -set define - lib opendir hdr dirent,ndir sys dir nxt dirent -tst botch_d_ino_dirent64 note{ dirent64.d_ino vs. readdir64 mismatch }end compile{ - #if !__arm__ - ) - #endif - #include - int - main() - { - struct dirent64 ent; - char aha[5-((int)sizeof(ent.d_ino))]; - return sizeof(aha); - } -}end - if ( ! _lib_opendir ) { /* * for systems with no opendir() @@ -63,94 +44,6 @@ if ( ! _lib_opendir ) { #endif } -elif ( _nxt_dirent && _lib_stat64 && _typ_off64_t && _botch_d_ino_dirent64 ) pass{ -cat < for [fl]stat64 and off64_t with sizeof(ino64_t)==4 - */ - - #ifndef _AST_STD_H - - #include ${_nxt_dirent-_nxt_dirent} /* the native */ - - #else - - #ifndef _DIR64_H - #define _DIR64_H - - #include - - #if _typ_off64_t - #undef off_t - #endif - - #undef __ino64_t - #define __ino64_t int64_t - - #include ${_nxt_dirent-_nxt_dirent} /* the native */ - - #undef __ino64_t - #define __ino64_t __ino64_t - - #if _typ_off64_t - #define off_t off64_t - #endif - - #if _lib_readdir64 && _typ_struct_dirent64 - #ifndef dirent - #define dirent dirent64 - #endif - #ifndef readdir - #define readdir readdir64 - #endif - #endif - - #endif - - #endif -! -}end -elif ( _nxt_dirent && _lib_stat64 && _typ_off64_t ) pass{ -cat < for [fl]stat64 and off64_t - */ - - #ifndef _AST_STD_H - - #include ${_nxt_dirent-_nxt_dirent} /* the native */ - - #else - - #ifndef _DIR64_H - #define _DIR64_H - - #include - - #if _typ_off64_t - #undef off_t - #endif - - #include ${_nxt_dirent-_nxt_dirent} /* the native */ - - #if _typ_off64_t - #define off_t off64_t - #endif - - #if _lib_readdir64 && _typ_struct_dirent64 - #ifndef dirent - #define dirent dirent64 - #endif - #ifndef readdir - #define readdir readdir64 - #endif - #endif - - #endif - - #endif -! -}end elif ( _nxt_dirent && _hdr_dirent ) pass{ cat < #include "FEATURE/lib" @@ -35,17 +37,10 @@ #define getpagesize ______getpagesize #define ioctl ______ioctl -#if _typ_off64_t -#undef off_t -#define off_t off_t -#endif - #if _hdr_fcntl #include #endif -#if _hdr_unistd #include -#endif #include @@ -57,11 +52,6 @@ #include "FEATURE/tty" -#if _typ_off64_t -#undef off_t -#define off_t off64_t -#endif - int main() { @@ -69,18 +59,7 @@ main() int f_lck = 0; int o_local = 2; - printf("#if _typ_off64_t\n"); - printf("#undef off_t\n"); - printf("#define off_t off_t\n"); - printf("#endif\n"); - printf("\n"); printf("#include \n"); - printf("\n"); - printf("#if _typ_off64_t\n"); - printf("#undef off_t\n"); - printf("#define off_t off_t\n"); - printf("#endif\n"); - printf("\n"); printf("#include \n"); #if _hdr_mman printf("#include \n"); @@ -334,29 +313,6 @@ main() #endif printf("\n"); printf("#include \n"); - printf("#if _typ_off64_t\n"); - printf("#undef off_t\n"); - printf("#define off_t off64_t\n"); - printf("#endif\n"); - printf("#if _lib_fstat64\n"); - printf("#define fstat fstat64\n"); - printf("#endif\n"); - printf("#if _lib_lstat64\n"); - printf("#define lstat lstat64\n"); - printf("#endif\n"); - printf("#if _lib_stat64\n"); - printf("#define stat stat64\n"); - printf("#endif\n"); - printf("#if _lib_creat64\n"); - printf("#define creat creat64\n"); - printf("#endif\n"); - printf("#if _lib_mmap64\n"); - printf("#define mmap mmap64\n"); - printf("#endif\n"); - printf("#if _lib_open64\n"); - printf("#undef open\n"); - printf("#define open open64\n"); - printf("#endif\n"); return 0; } diff --git a/src/lib/libast/features/fs b/src/lib/libast/features/fs index d1b880d3e..18b11225b 100644 --- a/src/lib/libast/features/fs +++ b/src/lib/libast/features/fs @@ -1,11 +1,9 @@ lib _fxstat,__fxstat,_lxstat,__lxstat,_xmknod,__xmknod,_xstat,__xstat,lstat,mknod,sync sys/types.h sys/stat.h -lib _fxstat64,__fxstat64,_lxstat64,__lxstat64,_xstat64,__xstat64 sys/types.h sys/stat.h mac fstat,lstat,stat,mknod sys/types.h sys/stat.h lcl xstat link{ #include #include - struct stat64 { int xxx; }; /* disable if stat64 available */ extern int stat(const char* path, struct stat* st) { #if _lib___xstat @@ -22,25 +20,6 @@ lcl xstat link{ } }end -lcl xstat64 link{ - #include - #include - extern int stat64(const char* path, struct stat64* st) - { - #if _lib___xstat64 - return __xstat64(_STAT_VER, path, st); - #else - return _xstat64(_STAT_VER, path, st); - #endif - } - int - main() - { - struct stat64 st; - return stat64(".",&st) < 0; - } -}end - header sys/stat.h header sys/mkdev.h @@ -206,22 +185,6 @@ cat{ extern int fstatvfs(int, struct statvfs*); extern int statvfs(const char*, struct statvfs*); #endif - #if _typ_off64_t - #undef off_t - #define off_t off64_t - #if _lib_statvfs64 && !defined(statvfs) - #define statvfs statvfs64 - #if !defined(__USE_LARGEFILE64) - extern int statvfs64(const char*, struct statvfs64*); - #endif - #endif - #if _lib_fstatvfs64 && !defined(fstatvfs) - #define fstatvfs fstatvfs64 - #if !defined(__USE_LARGEFILE64) - extern int fstatvfs64(int, struct statvfs64*); - #endif - #endif - #endif /* _typ_off64_t */ }end str st_fstype sys/types.h sys/stat.h note{ stat.st_fstype is a string }end compile{ diff --git a/src/lib/libast/features/lib b/src/lib/libast/features/lib index 34b68fa05..6a8295f6b 100644 --- a/src/lib/libast/features/lib +++ b/src/lib/libast/features/lib @@ -41,9 +41,6 @@ lib strchr,strcoll,strdup,strerror,strcasecmp,strncasecmp,strrchr,strstr lib strmode,strxfrm,strftime,swab,symlink,sysconf,sysinfo,syslog lib telldir,tmpnam,tzset,universe,unlink,utime,wctype lib ftruncate,truncate -lib creat64,fstat64,fstatvfs64,ftruncate64 -lib lseek64,lstat64 -lib open64,readdir64,stat64,statvfs64,truncate64 lib,npt strtod,strtold,strtol,strtoll,strtoul,strtoull stdlib.h lib,npt sigflag signal.h @@ -57,9 +54,6 @@ mem inheritance.pgroup spawn.h sys dir,filio,jioctl,localedef,ptem,resource sys socket,stream,systeminfo,universe,vfork -typ ino64_t,off64_t -typ struct.dirent64 dirent.h - tst tst_errno note{ errno can be assigned }end link{ #define error ______error #define strerror ______strerror @@ -662,36 +656,3 @@ tst - output{ echo "$0: Output block failed to compile. Export IFFEFLAGS=-d1 to debug." >&2 exit 1 }end - -tst no64 note{ largefile 64 broken }end execute{ - #include - #include - int - main() - { - struct stat64 st; - return !stat64(".", &st) && st.st_mode && st.st_mtime; - } -}end pass{ - echo "/* can we at least agree that a successful return means success? */" - echo "#undef _lib_creat64" - echo "#undef _lib_fstat64" - echo "#undef _lib_fstatvfs64" - echo "#undef _lib_ftruncate64" - echo "#undef _lib_lseek64" - echo "#undef _lib_lstat64" - echo "#undef _lib_mmap64" - echo "#undef _lib_stat64" - echo "#undef _lib_statvfs64" - echo "#undef _lib_truncate64" -}end - -tst need64 note{ off64_t necessary }end nocompile{ - #include - typedef off64_t __ast_off64_t__; - typedef off_t __ast_off_t__; - extern __ast_off64_t__ x; - __ast_off_t__ x; -}end fail{ - echo "#undef _typ_off64_t" -}end diff --git a/src/lib/libast/features/limits.c b/src/lib/libast/features/limits.c index c0cc6ef75..69e0a746b 100644 --- a/src/lib/libast/features/limits.c +++ b/src/lib/libast/features/limits.c @@ -70,9 +70,7 @@ __STDPP__directive pragma pp:hide getpagesize getdtablesize #include "FEATURE/lib" #include "FEATURE/common" -#if _hdr_unistd #include -#endif #include "FEATURE/param" diff --git a/src/lib/libast/features/mmap b/src/lib/libast/features/mmap index 8ef44d978..fce79836c 100644 --- a/src/lib/libast/features/mmap +++ b/src/lib/libast/features/mmap @@ -115,71 +115,6 @@ tst lib_mmap note{ standard mmap interface that works }end execute{ } }end -tst lib_mmap64 note{ mmap64 interface and implementation work }end execute{ - #if !_lib_mmap - ( - #endif - - #include - #include - #include - #include - #include - #include - #include - - int - main() - { - off64_t off; - int fd; - int n; - char* s; - struct stat64 st; - char file[32] = {'/','t','m','p','/','m','m','X','X','X','X','X','X'}; - - /* hey, stubs are supposed to fail! */ - if (stat64(".", &st) || !st.st_mode || !st.st_mtime) - return 1; - if (!mktemp(file) || (fd = open64(file, O_CREAT|O_WRONLY, 0600)) < 0) - { - remove(file); - return 1; - } - off = (1<<8); - off *= off; - if (lseek64(fd, off, SEEK_SET) != off) - { - remove(file); - return 1; - } - n = strlen(file) + 1; - if (write(fd, file, n) != n) - { - remove(file); - return 1; - } - if (close(fd) < 0 || (fd = open64(file, O_RDWR)) < 0) - { - remove(file); - return 1; - } - if (!(s = mmap64((caddr_t)0, (size_t)n, PROT_READ|PROT_WRITE, MAP_PRIVATE, fd, off))) - { - remove(file); - return 1; - } - if (strcmp(s, file)) - { - remove(file); - return 1; - } - close(fd); - remove(file); - return 0; - } -}end - tst mmap_anon note{ use mmap MAP_ANON to get raw memory }end execute{ #if !_lib_mmap ( @@ -328,7 +263,6 @@ cat{ #if _NO_MMAP #undef _lib_mmap - #undef _lib_mmap64 #undef _mmap_anon #undef _mmap_devzero #undef _mmap_worthy diff --git a/src/lib/libast/features/omitted b/src/lib/libast/features/omitted index 22e7e5d8c..9c79af010 100644 --- a/src/lib/libast/features/omitted +++ b/src/lib/libast/features/omitted @@ -65,11 +65,7 @@ tst note{ check for Win32 .exe botches }end output{ else _rename("foo.exe", "aha.exe"); if (_stat("bar", &st)) - { fix++,printf("#define _win32_botch_stat 1\n"); - if (sizeof(st.st_ino) == 8) - printf("#define _stat _stat64\n"); - } if (_truncate("aha", 0)) fix++,printf("#define _win32_botch_truncate 1\n"); if (_unlink("bar")) diff --git a/src/lib/libast/features/standards b/src/lib/libast/features/standards index b0501fb29..4a595748d 100644 --- a/src/lib/libast/features/standards +++ b/src/lib/libast/features/standards @@ -128,23 +128,14 @@ elif tst note{ SunOS (Solaris, illumos) }end compile{ } elif tst note{ GNU (glibc) or Cygwin }end compile{ /* - * GNU (GNU's Not UNIX). From feature_test_macros(7) on a GNU/Linux system with glibc 2.32: - * - * _GNU_SOURCE - * Defining this macro (with any value) implicitly defines _ATFILE_SOURCE, _LARGE‐ - * FILE64_SOURCE, _ISOC99_SOURCE, _XOPEN_SOURCE_EXTENDED, _POSIX_SOURCE, - * _POSIX_C_SOURCE with the value 200809L (200112L in glibc versions before 2.10; - * 199506L in glibc versions before 2.5; 199309L in glibc versions before 2.1) and - * _XOPEN_SOURCE with the value 700 (600 in glibc versions before 2.10; 500 in - * glibc versions before 2.2). In addition, various GNU-specific extensions are - * also exposed. - * Since glibc 2.19, defining _GNU_SOURCE also has the effect of implicitly defin‐ - * ing _DEFAULT_SOURCE. In glibc versions before 2.20, defining _GNU_SOURCE also - * had the effect of implicitly defining _BSD_SOURCE and _SVID_SOURCE. - * - * Additionally, on Cygwin we must use _GNU_SOURCE to enable all features required by libast. + * On GNU (GNU's Not UNIX) and Cygwin, _GNU_SOURCE is the "everything and the kitchen sink" macro + * (see feature_test_macros(7)), but on GNU we also need to define _FILE_OFFSET_BITS to get large + * file support. We also need to define 'basename' to stop string.h from declaring a GNU-specific + * version of basename(3) which on Cygwin has a declaration that conflicts with AST basename(3). */ #define _GNU_SOURCE 1 + #define _FILE_OFFSET_BITS 64 + #define basename basename #include #include #include @@ -164,9 +155,9 @@ elif tst note{ GNU (glibc) or Cygwin }end compile{ return 0; } }end { - #ifndef _GNU_SOURCE #define _GNU_SOURCE 1 - #endif + #define _FILE_OFFSET_BITS 64 + #define basename basename /* avoid string.h defining this in conflict with AST basename(3) */ } elif tst note{ _ALL_SOURCE & _POSIX_SOURCE & _POSIX_C_SOURCE & _XOPEN_SOURCE & __EXTENSIONS__ works }end compile{ #define _ALL_SOURCE 1 diff --git a/src/lib/libast/features/stdio b/src/lib/libast/features/stdio index 1b25c71c3..3172d5b6e 100644 --- a/src/lib/libast/features/stdio +++ b/src/lib/libast/features/stdio @@ -16,7 +16,6 @@ cat{ #undef _FILE #undef __FILE_T #undef fpos_t - #undef fpos64_t typedef struct _sfio_s _sfio_FILE; @@ -63,18 +62,7 @@ cat{ #endif - #ifdef _NO_LARGEFILE64_SOURCE - #undef _LARGEFILE64_SOURCE - #endif - - #ifdef _LARGEFILE64_SOURCE - #undef off_t - #endif - #define fpos_t _ast_fpos_t - #if _typ_int64_t - #define fpos64_t _ast_fpos_t - #endif typedef struct _ast_fpos_s { @@ -138,7 +126,6 @@ output{ printf("#define fflush _ast_fflush\n"); printf("#define fgetc _ast_fgetc\n"); printf("#define fgetpos _ast_fgetpos\n"); - printf("#define fgetpos64 _ast_fgetpos64\n"); printf("#define fgets _ast_fgets\n"); printf("#define fopen _ast_fopen\n"); printf("#define fprintf _ast_fprintf\n"); @@ -148,15 +135,10 @@ output{ printf("#define freopen _ast_freopen\n"); printf("#define fscanf _ast_fscanf\n"); printf("#define fseek _ast_fseek\n"); - printf("#define fseek64 _ast_fseek64\n"); printf("#define fseeko _ast_fseeko\n"); - printf("#define fseeko64 _ast_fseeko64\n"); printf("#define fsetpos _ast_fsetpos\n"); - printf("#define fsetpos64 _ast_fsetpos64\n"); printf("#define ftell _ast_ftell\n"); - printf("#define ftell64 _ast_ftell64\n"); printf("#define ftello _ast_ftello\n"); - printf("#define ftello64 _ast_ftello64\n"); printf("#define fwrite _ast_fwrite\n"); printf("#define gets _ast_gets\n"); printf("#define getw _ast_getw\n"); @@ -322,44 +304,6 @@ cat{ extern int vsprintf(char*, const char*, va_list); extern int vsscanf(const char*, const char*, va_list); - #if _typ_int64_t - - extern int fgetpos64(FILE*, fpos64_t*); - extern int fsetpos64(FILE*, const fpos64_t*); - extern int fseek64(FILE*, int64_t, int); - extern int fseeko64(FILE*, int64_t, int); - extern int64_t ftell64(FILE*); - extern int64_t ftello64(FILE*); - - #ifdef _LARGEFILE64_SOURCE - - #undef fpos_t - #undef off_t - #undef fgetpos - #undef fsetpos - #undef fseek - #undef fseeko - #undef ftell - #undef ftello - - #define fpos_t fpos64_t - #if _typ_off64_t - #define off_t off64_t - #else - #define off_t int64_t - #endif - - #define fgetpos fgetpos64 - #define fsetpos fsetpos64 - #define fseek fseek64 - #define fseeko fseeko64 - #define ftell ftell64 - #define ftello ftello64 - - #endif - - #endif - extern void clearerr_unlocked(FILE*); extern int feof_unlocked(FILE*); extern int ferror_unlocked(FILE*); diff --git a/src/lib/libast/features/sys b/src/lib/libast/features/sys index 0da3e2118..6bab48802 100644 --- a/src/lib/libast/features/sys +++ b/src/lib/libast/features/sys @@ -1,43 +1,6 @@ iff AST_SYS ref -D_def_map_ast -print #if __mips == 2 && !defined(_NO_LARGEFILE64_SOURCE) -print #define _NO_LARGEFILE64_SOURCE 1 -print #endif -print #if !defined(_NO_LARGEFILE64_SOURCE) && _typ_off64_t && _lib_lseek64 && _lib_stat64 -print #if !defined(_LARGEFILE64_SOURCE) -print #define _LARGEFILE64_SOURCE 1 -print #endif -print #if !defined(_LARGEFILE_SOURCE) -print #define _LARGEFILE_SOURCE 1 -print #endif -print #if !defined(_LARGE_FILE_API) -print #define _LARGE_FILE_API 1 -print #endif -print #else -print #undef _LARGEFILE64_SOURCE -print #undef _LARGEFILE_SOURCE -print #undef _LARGE_FILE_API -print #undef _typ_ino64_t -print #undef _typ_off64_t -print #undef _typ_struct_dirent64 -print #undef _lib_creat64 -print #undef _lib_fstat64 -print #undef _lib_fstatvfs64 -print #undef _lib_ftruncate64 -print #undef _lib_lseek64 -print #undef _lib_lstat64 -print #undef _lib_mmap64 -print #undef _lib_open64 -print #undef _lib_readdir64 -print #undef _lib_stat64 -print #undef _lib_statvfs64 -print #undef _lib_truncate64 -print #endif -print #if !_lib_readdir64 -print #undef _typ_ino64_t -print #endif - header stdlib.h header stddef.h header sys/types.h diff --git a/src/lib/libast/include/ast_std.h b/src/lib/libast/include/ast_std.h index abbef303e..a6e8fd0d0 100644 --- a/src/lib/libast/include/ast_std.h +++ b/src/lib/libast/include/ast_std.h @@ -33,6 +33,7 @@ #define _AST_STD_H 1 #define _AST_STD_I 1 +#include #include #if _BLD_ast @@ -292,29 +293,6 @@ extern _Ast_info_t _ast_info; #undef extern -/* largefile hackery -- AST uses the large versions by default */ - -#if _typ_ino64_t -#undef ino_t -#define ino_t ino64_t -#endif -#if _typ_off64_t -#undef off_t -#define off_t off64_t -#endif -#if !defined(ftruncate) && _lib_ftruncate64 -#define ftruncate ftruncate64 -extern int ftruncate64(int, off64_t); -#endif -#if !defined(lseek) && _lib_lseek64 -#define lseek lseek64 -extern off64_t lseek64(int, off64_t, int); -#endif -#if !defined(truncate) && _lib_truncate64 -#define truncate truncate64 -extern int truncate64(const char*, off64_t); -#endif - /* direct macro access for bsd crossover */ #if !defined(memcpy) && !defined(_lib_memcpy) && defined(_lib_bcopy) diff --git a/src/lib/libast/misc/proclib.h b/src/lib/libast/misc/proclib.h index 3641c52e7..9280fd0f2 100644 --- a/src/lib/libast/misc/proclib.h +++ b/src/lib/libast/misc/proclib.h @@ -30,7 +30,6 @@ #ifndef _PROCLIB_H #define _PROCLIB_H -#include #include #include #include diff --git a/src/lib/libast/sfio/_sfopen.c b/src/lib/libast/sfio/_sfopen.c index 19ab0c954..3ecd14dcd 100644 --- a/src/lib/libast/sfio/_sfopen.c +++ b/src/lib/libast/sfio/_sfopen.c @@ -73,9 +73,9 @@ Sfio_t* _sfopen(Sfio_t* f, /* old stream structure */ if(f->file >= 0 ) { if ((oflags &= (O_TEXT|O_BINARY|O_APPEND)) != 0 ) { /* set file access control */ - int ctl = sysfcntlf(f->file, F_GETFL, 0); + int ctl = fcntl(f->file, F_GETFL, 0); ctl = (ctl & ~(O_TEXT|O_BINARY|O_APPEND)) | oflags; - sysfcntlf(f->file, F_SETFL, ctl); + fcntl(f->file, F_SETFL, ctl); } #if !O_cloexec if (fflags & SF_FD_CLOEXEC) @@ -96,10 +96,10 @@ Sfio_t* _sfopen(Sfio_t* f, /* old stream structure */ return NIL(Sfio_t*); #if _has_oflags /* open the file */ - while((fd = sysopenf((char*)file,oflags,SF_CREATMODE)) < 0 && errno == EINTR) + while((fd = open((char*)file,oflags,SF_CREATMODE)) < 0 && errno == EINTR) errno = 0; #else - while((fd = sysopenf(file,oflags&O_ACCMODE)) < 0 && errno == EINTR) + while((fd = open(file,oflags&O_ACCMODE)) < 0 && errno == EINTR) errno = 0; if(fd >= 0) { if((oflags&(O_CREAT|O_EXCL)) == (O_CREAT|O_EXCL) ) @@ -108,19 +108,19 @@ Sfio_t* _sfopen(Sfio_t* f, /* old stream structure */ } if(oflags&O_TRUNC ) /* truncate file */ { reg int tf; - while((tf = syscreatf(file,SF_CREATMODE)) < 0 && + while((tf = creat(file,SF_CREATMODE)) < 0 && errno == EINTR) errno = 0; CLOSE(tf); } } else if(oflags&O_CREAT) - { while((fd = syscreatf(file,SF_CREATMODE)) < 0 && errno == EINTR) + { while((fd = creat(file,SF_CREATMODE)) < 0 && errno == EINTR) errno = 0; if((oflags&O_ACCMODE) != O_WRONLY) { /* the file now exists, reopen it for read/write */ CLOSE(fd); - while((fd = sysopenf(file,oflags&O_ACCMODE)) < 0 && + while((fd = open(file,oflags&O_ACCMODE)) < 0 && errno == EINTR) errno = 0; } diff --git a/src/lib/libast/sfio/sfclose.c b/src/lib/libast/sfio/sfclose.c index 45b190421..9a3b1edec 100644 --- a/src/lib/libast/sfio/sfclose.c +++ b/src/lib/libast/sfio/sfclose.c @@ -116,7 +116,7 @@ int sfclose(Sfio_t* f) if(_Sfnotify) (*_Sfnotify)(f, SF_CLOSING, (void*)((long)f->file)); if(f->file >= 0 && !(f->flags&SF_STRING)) - { while(sysclosef(f->file) < 0 ) + { while(close(f->file) < 0 ) { if(errno == EINTR) errno = 0; else diff --git a/src/lib/libast/sfio/sfhdr.h b/src/lib/libast/sfio/sfhdr.h index 3b9f0cd13..a62511452 100644 --- a/src/lib/libast/sfio/sfhdr.h +++ b/src/lib/libast/sfio/sfhdr.h @@ -47,22 +47,6 @@ /* define va_list, etc. before including sfio_t.h (sfio.h) */ #if !_PACKAGE_ast -/* some systems don't know large files */ -#if defined(_NO_LARGEFILE64_SOURCE) || _mips == 2 /* || __hppa */ -#undef _NO_LARGEFILE64_SOURCE -#define _NO_LARGEFILE64_SOURCE 1 -#undef _LARGEFILE64_SOURCE -#undef _LARGEFILE_SOURCE -#endif - -#if !_NO_LARGEFILE64_SOURCE && _typ_off64_t && _lib_lseek64 && _lib_stat64 -#undef _LARGEFILE64_SOURCE -#undef _LARGEFILE_SOURCE -#undef _FILE_OFFSET_BITS -#define _LARGEFILE64_SOURCE 1 /* enabling the *64 stuff */ -#define _LARGEFILE_SOURCE 1 -#endif - #if _hdr_stdarg #include #else @@ -100,24 +84,6 @@ #define _lib_locale 1 #endif -#define sfoff_t off_t -#define sfstat_t struct stat -#define sysclosef close -#define syscreatf creat -#define sysdupf dup -#define sysfcntlf fcntl -#define sysfstatf fstat -#define sysftruncatef ftruncate -#define syslseekf lseek -#define sysmmapf mmap -#define sysmunmapf munmap -#define sysopenf open -#define syspipef pipe -#define sysreadf read -#define sysremovef remove -#define sysstatf stat -#define syswritef write - #else /*!_PACKAGE_ast*/ /* when building the binary compatibility package, a number of header files @@ -187,28 +153,9 @@ #endif /*_FIOCLEX*/ #endif /*F_SETFD*/ -#if _hdr_unistd #include -#endif - -#if !_LARGEFILE64_SOURCE /* turn off the *64 stuff */ -#undef _typ_off64_t -#undef _typ_struct_stat64 -#undef _lib_creat64 -#undef _lib_open64 -#undef _lib_close64 -#undef _lib_stat64 -#undef _lib_fstat64 -#undef _lib_ftruncate64 -#undef _lib_lseek64 -#undef _lib_mmap64 -#undef _lib_munmap64 -#endif /*!_LARGEFILE64_SOURCE */ /* see if we can use memory mapping for io */ -#if _LARGEFILE64_SOURCE && !_lib_mmap64 -#undef _mmap_worthy -#endif #if !_mmap_worthy #undef _hdr_mman #undef _sys_mman @@ -220,76 +167,9 @@ #include #endif -/* standardize system calls and types dealing with files */ -#if _typ_off64_t -#define sfoff_t off64_t -#else -#define sfoff_t off_t +#if !_lib_remove +#define remove unlink #endif -#if _typ_struct_stat64 -#define sfstat_t struct stat64 -#else -#define sfstat_t struct stat -#endif -#if _lib_lseek64 -#define syslseekf lseek64 -#else -#define syslseekf lseek -#endif -#if _lib_stat64 -#define sysstatf stat64 -#else -#define sysstatf stat -#endif -#if _lib_fstat64 -#define sysfstatf fstat64 -#else -#define sysfstatf fstat -#endif -#if _lib_mmap64 -#define sysmmapf mmap64 -#else -#define sysmmapf mmap -#endif -#if _lib_munmap64 -#define sysmunmapf munmap64 -#else -#define sysmunmapf munmap -#endif -#if _lib_open64 -#define sysopenf open64 -#else -#define sysopenf open -#endif -#if _lib_creat64 -#define syscreatf creat64 -#else -#define syscreatf creat -#endif -#if _lib_close64 -#define sysclosef close64 -#else -#define sysclosef close -#endif -#if _lib_ftruncate64 -#undef _lib_ftruncate -#define _lib_ftruncate 1 -#define sysftruncatef ftruncate64 -#endif -#if !_lib_ftruncate64 && _lib_ftruncate -#define sysftruncatef ftruncate -#endif -#if _lib_remove -#define sysremovef remove -#else -#define sysremovef unlink -#endif - -#define sysreadf read -#define syswritef write -#define syspipef pipe -#define sysdupf dup -#define sysfcntlf fcntl #endif /*_PACKAGE_ast*/ @@ -553,7 +433,7 @@ #define SECOND 1000 /* millisecond units */ -/* macros do determine stream types from sfstat_t data */ +/* macros do determine stream types from 'struct stat' data */ #ifndef S_IFDIR #define S_IFDIR 0 #endif @@ -851,12 +731,12 @@ typedef struct _sfextern_s #define SFMMSEQOFF(f,a,s) #endif -#define SFMUNMAP(f,a,s) (sysmunmapf((caddr_t)(a),(size_t)(s)), \ +#define SFMUNMAP(f,a,s) (munmap((caddr_t)(a),(size_t)(s)), \ ((f)->endb = (f)->endr = (f)->endw = (f)->next = \ (f)->data = NIL(uchar*)) ) /* safe closing function */ -#define CLOSE(f) { while(sysclosef(f) < 0 && errno == EINTR) errno = 0; } +#define CLOSE(f) { while(close(f) < 0 && errno == EINTR) errno = 0; } /* the bottomless bit bucket */ #define DEVNULL "/dev/null" @@ -1206,33 +1086,6 @@ extern Sfdouble_t ldexpl(Sfdouble_t, int); #if !_PACKAGE_ast -#if !_hdr_unistd -extern int sysclosef(int); -extern ssize_t sysreadf(int, void*, size_t); -extern ssize_t syswritef(int, const void*, size_t); -extern sfoff_t syslseekf(int, sfoff_t, int); -extern int sysdupf(int); -extern int syspipef(int*); -extern int sysaccessf(const char*, int); -extern int sysremovef(const char*); -extern int sysfstatf(int, sfstat_t*); -extern int sysstatf(const char*, sfstat_t*); - -extern int isatty(int); - -extern int wait(int*); -extern uint sleep(uint); -extern int execl(const char*, const char*,...); -extern int execv(const char*, char**); -#if !defined(fork) -extern int fork(void); -#endif -#if _lib_unlink -extern int unlink(const char*); -#endif - -#endif /*_hdr_unistd*/ - #if _lib_bcopy && !_proto_bcopy extern void bcopy(const void*, void*, size_t); #endif diff --git a/src/lib/libast/sfio/sfpkrd.c b/src/lib/libast/sfio/sfpkrd.c index 9f794d9b8..cd3614b42 100644 --- a/src/lib/libast/sfio/sfpkrd.c +++ b/src/lib/libast/sfio/sfpkrd.c @@ -61,7 +61,7 @@ ssize_t sfpkrd(int fd, /* file descriptor */ reg char *buf = (char*)argbuf, *endbuf; if(rc < 0 && tm < 0 && action <= 0) - return sysreadf(fd,buf,n); + return read(fd,buf,n); t = (action > 0 || rc >= 0) ? (STREAM_PEEK|SOCKET_PEEK) : 0; #if !_stream_peek @@ -94,7 +94,7 @@ ssize_t sfpkrd(int fd, /* file descriptor */ { t &= ~SOCKET_PEEK; if(r > 0 && (r = pbuf.databuf.len) <= 0) { if(action <= 0) /* read past eof */ - r = sysreadf(fd,buf,1); + r = read(fd,buf,1); return r; } if(r == 0) @@ -151,7 +151,7 @@ ssize_t sfpkrd(int fd, /* file descriptor */ if(r > 0) /* there is data now */ { if(action <= 0 && rc < 0) - return sysreadf(fd,buf,n); + return read(fd,buf,n); else r = -1; } else if(tm >= 0) /* timeout exceeded */ @@ -176,7 +176,7 @@ ssize_t sfpkrd(int fd, /* file descriptor */ break; else /* read past eof */ { if(action <= 0) - r = sysreadf(fd,buf,1); + r = read(fd,buf,1); return r; } } @@ -192,7 +192,7 @@ ssize_t sfpkrd(int fd, /* file descriptor */ if((action = action ? -action : 1) > (int)n) action = n; r = 0; - while((t = sysreadf(fd,buf,action)) > 0) + while((t = read(fd,buf,action)) > 0) { r += t; for(endbuf = buf+t; buf < endbuf;) if(*buf++ == rc) @@ -218,7 +218,7 @@ ssize_t sfpkrd(int fd, /* file descriptor */ /* advance */ if(action <= 0) - r = sysreadf(fd,buf,r); + r = read(fd,buf,r); return r; } diff --git a/src/lib/libast/sfio/sfpopen.c b/src/lib/libast/sfio/sfpopen.c index a6ec54c7a..b074b333a 100644 --- a/src/lib/libast/sfio/sfpopen.c +++ b/src/lib/libast/sfio/sfpopen.c @@ -192,9 +192,9 @@ Sfio_t* sfpopen(Sfio_t* f, /* make pipes */ parent[0] = parent[1] = child[0] = child[1] = -1; if(sflags&SF_RDWR) - { if(syspipef(parent) < 0) + { if(pipe(parent) < 0) goto error; - if((sflags&SF_RDWR) == SF_RDWR && syspipef(child) < 0) + if((sflags&SF_RDWR) == SF_RDWR && pipe(child) < 0) goto error; } @@ -251,7 +251,7 @@ Sfio_t* sfpopen(Sfio_t* f, /* must be careful so not to close something useful */ if((sflags&SF_RDWR) == SF_RDWR && pkeep == child[ckeep]) - if((child[ckeep] = sysdupf(pkeep)) < 0) + if((child[ckeep] = dup(pkeep)) < 0) _exit(EXIT_NOTFOUND); if(sflags&SF_RDWR) diff --git a/src/lib/libast/sfio/sfrd.c b/src/lib/libast/sfio/sfrd.c index dc9d3278a..c003743d5 100644 --- a/src/lib/libast/sfio/sfrd.c +++ b/src/lib/libast/sfio/sfrd.c @@ -124,7 +124,7 @@ ssize_t sfrd(Sfio_t* f, void* buf, size_t n, Sfdisc_t* disc) #ifdef MAP_TYPE if(f->bits&SF_MMAP) { reg ssize_t a, round; - sfstat_t st; + struct stat st; /* determine if we have to copy data to buffer */ if((uchar*)buf >= f->data && (uchar*)buf <= f->endb) @@ -140,7 +140,7 @@ ssize_t sfrd(Sfio_t* f, void* buf, size_t n, Sfdisc_t* disc) /* before mapping, make sure we have data to map */ if((f->flags&SF_SHARE) || (size_t)(r = f->extent-f->here) < n) - { if((r = sysfstatf(f->file,&st)) < 0) + { if((r = fstat(f->file,&st)) < 0) goto do_except; if((r = (f->extent = st.st_size) - f->here) <= 0 ) { r = 0; /* eof */ @@ -162,10 +162,10 @@ ssize_t sfrd(Sfio_t* f, void* buf, size_t n, Sfdisc_t* disc) SFMUNMAP(f, f->data, f->endb-f->data); for(;;) - { f->data = (uchar*) sysmmapf((caddr_t)0, (size_t)r, + { f->data = (uchar*) mmap((caddr_t)0, (size_t)r, (PROT_READ|PROT_WRITE), MAP_PRIVATE, - f->file, (sfoff_t)f->here); + f->file, (off_t)f->here); if(f->data && (caddr_t)f->data != (caddr_t)(-1)) break; else @@ -259,7 +259,7 @@ ssize_t sfrd(Sfio_t* f, void* buf, size_t n, Sfdisc_t* disc) else f->mode |= SF_RC; } } - else r = sysreadf(f->file,buf,n); + else r = read(f->file,buf,n); if(errno == 0 ) errno = oerrno; diff --git a/src/lib/libast/sfio/sfread.c b/src/lib/libast/sfio/sfread.c index effaf4b18..8cf272a08 100644 --- a/src/lib/libast/sfio/sfread.c +++ b/src/lib/libast/sfio/sfread.c @@ -64,7 +64,7 @@ ssize_t sfread(Sfio_t* f, /* read from this stream. */ { /* actually read the data now */ f->mode &= ~SF_PKRD; if(n > 0) - n = (r = sysreadf(f->file,f->data,n)) < 0 ? 0 : r; + n = (r = read(f->file,f->data,n)) < 0 ? 0 : r; f->endb = f->data+n; f->here += n; } diff --git a/src/lib/libast/sfio/sfresize.c b/src/lib/libast/sfio/sfresize.c index 781e04167..d3456e1e8 100644 --- a/src/lib/libast/sfio/sfresize.c +++ b/src/lib/libast/sfio/sfresize.c @@ -63,7 +63,7 @@ int sfresize(Sfio_t* f, Sfoff_t size) { if(f->next > f->data) SFSYNC(f); #if _lib_ftruncate - if(ftruncate(f->file, (sfoff_t)size) < 0) + if(ftruncate(f->file, (off_t)size) < 0) SFMTXRETURN(f, -1); #else SFMTXRETURN(f, -1); diff --git a/src/lib/libast/sfio/sfsetbuf.c b/src/lib/libast/sfio/sfsetbuf.c index c86f2f737..fa768cc48 100644 --- a/src/lib/libast/sfio/sfsetbuf.c +++ b/src/lib/libast/sfio/sfsetbuf.c @@ -51,8 +51,8 @@ struct stat { int st_mode; int st_size; }; -#undef sysfstatf -#define sysfstatf(fd,st) (-1) +#undef fstat +#define fstat(fd,st) (-1) #endif /*_sys_stat*/ #if _PACKAGE_ast && !defined(SFSETLINEMODE) @@ -107,7 +107,7 @@ void* sfsetbuf(Sfio_t* f, /* stream to be buffered */ int sf_malloc, oflags, init, okmmap, local; ssize_t bufsize, blksz; Sfdisc_t* disc; - sfstat_t st; + struct stat st; uchar* obuf = NIL(uchar*); ssize_t osize = 0; SFMTXDECL(f); @@ -227,7 +227,7 @@ void* sfsetbuf(Sfio_t* f, /* stream to be buffered */ } /* get file descriptor status */ - if(sysfstatf((int)f->file,&st) < 0) + if(fstat((int)f->file,&st) < 0) f->here = -1; else { @@ -243,7 +243,7 @@ void* sfsetbuf(Sfio_t* f, /* stream to be buffered */ #if O_TEXT /* no memory mapping with O_TEXT because read()/write() alter data stream */ if(okmmap && f->here >= 0 && - (sysfcntlf((int)f->file,F_GETFL,0) & O_TEXT) ) + (fcntl((int)f->file,F_GETFL,0) & O_TEXT) ) okmmap = 0; #endif } @@ -291,7 +291,7 @@ void* sfsetbuf(Sfio_t* f, /* stream to be buffered */ dev = (int)st.st_dev; ino = (int)st.st_ino; if(!null_checked) - { if(sysstatf(DEVNULL,&st) < 0) + { if(stat(DEVNULL,&st) < 0) null_checked = -1; else { null_checked = 1; diff --git a/src/lib/libast/sfio/sfsetfd.c b/src/lib/libast/sfio/sfsetfd.c index f7dcb6bf3..b7e591313 100644 --- a/src/lib/libast/sfio/sfsetfd.c +++ b/src/lib/libast/sfio/sfsetfd.c @@ -32,12 +32,12 @@ static int _sfdup(int fd, int newfd) reg int dupfd; #ifdef F_DUPFD /* the simple case */ - while((dupfd = sysfcntlf(fd,F_DUPFD,newfd)) < 0 && errno == EINTR) + while((dupfd = fcntl(fd,F_DUPFD,newfd)) < 0 && errno == EINTR) errno = 0; return dupfd; #else /* do it the hard way */ - if((dupfd = sysdupf(fd)) < 0 || dupfd >= newfd) + if((dupfd = dup(fd)) < 0 || dupfd >= newfd) return dupfd; /* dup() succeeded but didn't get the right number, recurse */ diff --git a/src/lib/libast/sfio/sfsize.c b/src/lib/libast/sfio/sfsize.c index a06fd7c88..9fde06028 100644 --- a/src/lib/libast/sfio/sfsize.c +++ b/src/lib/libast/sfio/sfsize.c @@ -61,8 +61,8 @@ Sfoff_t sfsize(Sfio_t* f) } #if _sys_stat else - { sfstat_t st; - if(sysfstatf(f->file,&st) < 0) + { struct stat st; + if(fstat(f->file,&st) < 0) f->extent = -1; else if((f->extent = st.st_size) < f->here) f->here = SFSK(f,(Sfoff_t)0,SEEK_CUR,disc); diff --git a/src/lib/libast/sfio/sfsk.c b/src/lib/libast/sfio/sfsk.c index 94b215da5..c398fef4f 100644 --- a/src/lib/libast/sfio/sfsk.c +++ b/src/lib/libast/sfio/sfsk.c @@ -70,7 +70,7 @@ Sfoff_t sfsk(Sfio_t* f, Sfoff_t addr, int type, Sfdisc_t* disc) { SFDCSK(f,addr,type,dc,p); } else - { p = syslseekf(f->file,(sfoff_t)addr,type); + { p = lseek(f->file,(off_t)addr,type); } if(p >= 0) SFMTXRETURN(f,p); diff --git a/src/lib/libast/sfio/sftmp.c b/src/lib/libast/sfio/sftmp.c index 2522fbe1d..9b0efabd5 100644 --- a/src/lib/libast/sfio/sftmp.c +++ b/src/lib/libast/sfio/sftmp.c @@ -85,7 +85,7 @@ static int _tmprmfile(Sfio_t* f, int type, void* val, Sfdisc_t* disc) (*_Sfnotify)(f,SF_CLOSING,f->file); CLOSE(f->file); f->file = -1; - while(sysremovef(ff->name) < 0 && errno == EINTR) + while(remove(ff->name) < 0 && errno == EINTR) errno = 0; free((void*)ff); @@ -130,7 +130,7 @@ static int _rmtmp(Sfio_t* f, char* file) (void)vtmtxunlock(_Sfmutex); #else /* can remove now */ - while(sysremovef(file) < 0 && errno == EINTR) + while(remove(file) < 0 && errno == EINTR) errno = 0; #endif @@ -253,22 +253,22 @@ static int _tmpfd(Sfio_t* f) if(!file) return -1; #if _has_oflags - if((fd = sysopenf(file,O_RDWR|O_CREAT|O_EXCL|O_TEMPORARY,SF_CREATMODE)) >= 0) + if((fd = open(file,O_RDWR|O_CREAT|O_EXCL|O_TEMPORARY,SF_CREATMODE)) >= 0) break; #else - if((fd = sysopenf(file,O_RDONLY)) >= 0) + if((fd = open(file,O_RDONLY)) >= 0) { /* file already exists */ CLOSE(fd); fd = -1; } - else if((fd = syscreatf(file,SF_CREATMODE)) >= 0) + else if((fd = creat(file,SF_CREATMODE)) >= 0) { /* reopen for read and write */ CLOSE(fd); - if((fd = sysopenf(file,O_RDWR)) >= 0) + if((fd = open(file,O_RDWR)) >= 0) break; /* don't know what happened but must remove file */ - while(sysremovef(file) < 0 && errno == EINTR) + while(remove(file) < 0 && errno == EINTR) errno = 0; } #endif /* _has_oflags */ diff --git a/src/lib/libast/sfio/sfwr.c b/src/lib/libast/sfio/sfwr.c index 2c95a4c45..ad2110351 100644 --- a/src/lib/libast/sfio/sfwr.c +++ b/src/lib/libast/sfio/sfwr.c @@ -87,7 +87,7 @@ static ssize_t sfoutput(Sfio_t* f, char* buf, size_t n) { buf = endbuf; n = s = 0; } - if((wr = syswritef(f->file,wbuf,buf-wbuf)) > 0) + if((wr = write(f->file,wbuf,buf-wbuf)) > 0) { w += wr; f->bits &= ~SF_HOLE; } @@ -192,7 +192,7 @@ ssize_t sfwr(Sfio_t* f, const void* buf, size_t n, Sfdisc_t* disc) else { do_write: - if((w = syswritef(f->file,buf,n)) > 0) + if((w = write(f->file,buf,n)) > 0) f->bits &= ~SF_HOLE; } diff --git a/src/lib/libast/sfio/sfwrite.c b/src/lib/libast/sfio/sfwrite.c index 24ba26f01..c118cf040 100644 --- a/src/lib/libast/sfio/sfwrite.c +++ b/src/lib/libast/sfio/sfwrite.c @@ -62,7 +62,7 @@ ssize_t sfwrite(Sfio_t* f, /* write to this stream. */ for(w = n; w > 0; ) { if((r = w) > sizeof(buf)) r = sizeof(buf); - if((r = sysreadf(f->file,buf,r)) <= 0) + if((r = read(f->file,buf,r)) <= 0) { n -= w; break; } diff --git a/src/lib/libast/stdio/fgetpos.c b/src/lib/libast/stdio/fgetpos.c index aa38fee38..ebcbec784 100644 --- a/src/lib/libast/stdio/fgetpos.c +++ b/src/lib/libast/stdio/fgetpos.c @@ -21,10 +21,6 @@ * * ***********************************************************************/ -#ifndef _NO_LARGEFILE64_SOURCE -#define _NO_LARGEFILE64_SOURCE 1 -#endif - #include "stdhdr.h" int @@ -34,15 +30,3 @@ fgetpos(Sfio_t* f, fpos_t* pos) return (pos->_sf_offset = sfseek(f, (Sfoff_t)0, SEEK_CUR)) >= 0 ? 0 : -1; } - -#ifdef _typ_int64_t - -int -fgetpos64(Sfio_t* f, fpos64_t* pos) -{ - STDIO_INT(f, "fgetpos64", int, (Sfio_t*, fpos64_t*), (f, pos)) - - return (pos->_sf_offset = sfseek(f, (Sfoff_t)0, SEEK_CUR)) >= 0 ? 0 : -1; -} - -#endif diff --git a/src/lib/libast/stdio/fseek.c b/src/lib/libast/stdio/fseek.c index cbbe7a0f3..cd9066c72 100644 --- a/src/lib/libast/stdio/fseek.c +++ b/src/lib/libast/stdio/fseek.c @@ -21,10 +21,6 @@ * * ***********************************************************************/ -#ifndef _NO_LARGEFILE64_SOURCE -#define _NO_LARGEFILE64_SOURCE 1 -#endif - #include "stdhdr.h" int @@ -34,15 +30,3 @@ fseek(Sfio_t* f, long off, int op) return sfseek(f, (Sfoff_t)off, op|SF_SHARE) >= 0 ? 0 : -1; } - -#ifdef _typ_int64_t - -int -fseek64(Sfio_t* f, int64_t off, int op) -{ - STDIO_INT(f, "fseek64", int, (Sfio_t*, int64_t, int), (f, off, op)) - - return sfseek(f, (Sfoff_t)off, op|SF_SHARE) >= 0 ? 0 : -1; -} - -#endif diff --git a/src/lib/libast/stdio/fseeko.c b/src/lib/libast/stdio/fseeko.c index c9a0b9f57..f6dca1c8a 100644 --- a/src/lib/libast/stdio/fseeko.c +++ b/src/lib/libast/stdio/fseeko.c @@ -21,10 +21,6 @@ * * ***********************************************************************/ -#ifndef _NO_LARGEFILE64_SOURCE -#define _NO_LARGEFILE64_SOURCE 1 -#endif - #include "stdhdr.h" int @@ -34,15 +30,3 @@ fseeko(Sfio_t* f, off_t off, int op) return sfseek(f, (Sfoff_t)off, op|SF_SHARE) >= 0 ? 0 : -1; } - -#ifdef _typ_int64_t - -int -fseeko64(Sfio_t* f, int64_t off, int op) -{ - STDIO_INT(f, "fseeko64", int, (Sfio_t*, int64_t, int), (f, off, op)) - - return sfseek(f, (Sfoff_t)off, op|SF_SHARE) >= 0 ? 0 : -1; -} - -#endif diff --git a/src/lib/libast/stdio/fsetpos.c b/src/lib/libast/stdio/fsetpos.c index 463af57d8..f72d46206 100644 --- a/src/lib/libast/stdio/fsetpos.c +++ b/src/lib/libast/stdio/fsetpos.c @@ -21,10 +21,6 @@ * * ***********************************************************************/ -#ifndef _NO_LARGEFILE64_SOURCE -#define _NO_LARGEFILE64_SOURCE 1 -#endif - #include "stdhdr.h" int @@ -34,15 +30,3 @@ fsetpos(Sfio_t* f, const fpos_t* pos) return sfseek(f, (Sfoff_t)pos->_sf_offset, SF_PUBLIC) == (Sfoff_t)pos->_sf_offset ? 0 : -1; } - -#ifdef _typ_int64_t - -int -fsetpos64(Sfio_t* f, const fpos64_t* pos) -{ - STDIO_INT(f, "fsetpos64", int, (Sfio_t*, const fpos64_t*), (f, pos)) - - return sfseek(f, (Sfoff_t)pos->_sf_offset, SF_PUBLIC) == (Sfoff_t)pos->_sf_offset ? 0 : -1; -} - -#endif diff --git a/src/lib/libast/stdio/ftell.c b/src/lib/libast/stdio/ftell.c index 2685792a9..5cd4ff616 100644 --- a/src/lib/libast/stdio/ftell.c +++ b/src/lib/libast/stdio/ftell.c @@ -21,10 +21,6 @@ * * ***********************************************************************/ -#ifndef _NO_LARGEFILE64_SOURCE -#define _NO_LARGEFILE64_SOURCE 1 -#endif - #include "stdhdr.h" long @@ -34,15 +30,3 @@ ftell(Sfio_t* f) return (long)sfseek(f, (Sfoff_t)0, SEEK_CUR); } - -#if _typ_int64_t - -int64_t -ftell64(Sfio_t* f) -{ - STDIO_INT(f, "ftell64", int64_t, (Sfio_t*), (f)) - - return (int64_t)sfseek(f, (Sfoff_t)0, SEEK_CUR); -} - -#endif diff --git a/src/lib/libast/stdio/ftello.c b/src/lib/libast/stdio/ftello.c index 6df88b7dc..09a5bb8e6 100644 --- a/src/lib/libast/stdio/ftello.c +++ b/src/lib/libast/stdio/ftello.c @@ -21,10 +21,6 @@ * * ***********************************************************************/ -#ifndef _NO_LARGEFILE64_SOURCE -#define _NO_LARGEFILE64_SOURCE 1 -#endif - #include "stdhdr.h" off_t @@ -34,15 +30,3 @@ ftello(Sfio_t* f) return sfseek(f, (Sfoff_t)0, SEEK_CUR); } - -#ifdef _typ_int64_t - -int64_t -ftello64(Sfio_t* f) -{ - STDIO_INT(f, "ftello64", int64_t, (Sfio_t*), (f)) - - return sfseek(f, (Sfoff_t)0, SEEK_CUR) >= 0 ? 0 : -1; -} - -#endif diff --git a/src/lib/libast/stdio/stdhdr.h b/src/lib/libast/stdio/stdhdr.h index 32205694c..1103b3d06 100644 --- a/src/lib/libast/stdio/stdhdr.h +++ b/src/lib/libast/stdio/stdhdr.h @@ -24,10 +24,7 @@ #ifndef _STDHDR_H #define _STDHDR_H 1 -#ifndef _NO_LARGEFILE64_SOURCE -#define _NO_LARGEFILE64_SOURCE 1 -#endif -#undef _LARGEFILE64_SOURCE +#include #define _ast_fseeko ______fseeko #define _ast_ftello ______ftello diff --git a/src/lib/libast/vmalloc/vmhdr.h b/src/lib/libast/vmalloc/vmhdr.h index dc42dd040..e4f92ff71 100644 --- a/src/lib/libast/vmalloc/vmhdr.h +++ b/src/lib/libast/vmalloc/vmhdr.h @@ -478,15 +478,7 @@ extern void* sbrk( ssize_t ); #else -#if _hdr_unistd #include -#else -extern void abort( void ); -extern ssize_t write( int, const void*, size_t ); -extern int getpagesize(void); -extern void* sbrk(ssize_t); -#endif - #include #include diff --git a/src/lib/libast/vmalloc/vmmopen.c b/src/lib/libast/vmalloc/vmmopen.c index ff9151d53..eefc7c1ec 100644 --- a/src/lib/libast/vmalloc/vmmopen.c +++ b/src/lib/libast/vmalloc/vmmopen.c @@ -30,9 +30,7 @@ void _STUB_vmmapopen(){} #include "vmhdr.h" #include #include -#if _hdr_unistd #include -#endif #undef ALIGN /* some sys/param.h define this */