diff options
author | Paul Eggert <eggert@cs.ucla.edu> | 2006-08-21 07:30:45 +0000 |
---|---|---|
committer | Paul Eggert <eggert@cs.ucla.edu> | 2006-08-21 07:30:45 +0000 |
commit | 05e03fc6560278ba81f78f397a00319e9df5a5ca (patch) | |
tree | ab6aba763c2b2fa08236105ad511b3800f1df3ea /src | |
parent | 0f7a044109b860443ecaa4f8a37652b1b4423057 (diff) | |
download | coreutils-05e03fc6560278ba81f78f397a00319e9df5a5ca.tar.xz |
Add a bootstrap procedure, so that the CVS version contains fewer
files and we bootstrap the rest from gnulib, gettext, etc.
* README-cvs: New file.
* bootstrap: New file.
* bootstrap.conf: New file.
* .x-sc_trailing_blank: Remove config-log, .gdb-history. Add .po.
* configure.ac (AC_PREREQ): Move here from m4/*.m4, for benefit
of gnulib-tool.
(gl_DEFAULT_POSIX2_VERSION, gl_USE_SYSTEM_EXTENSIONS, gl_PERL):
(gl_IGNORE_UNUSED_LIBRARIES): Remove; now done by gnulib.
(gl_EARLY): Add.
(gl_MACROS): Call just after gl_EARLY, just for clarity.
* src/c99-to-c98.diff: Remove patch to ls.c; no longer needed.
* src/kill.c (strtoimax): Remove decl.
* src/ls.c: Include "wcwidth.h" instead of rolling it ourselves.
* src/wc.c: Likewise.
* src/ls.c (sort_files): Rewrite to avoid need for C99-style
declaration, so that we don't need to patch this file.
* src/printf.c (strtoimax, strtoumax): Remove decls.
* src/su.c: Include getpass.h.
(getpass): remove.
* src/system.h: Include mempcpy.h, stpcpy.h, strpbrk.h.
Include inttypes.h unconditionally; remove decls it handles.
* lib/Makefile.am: include gnulib.mk, so that we can remove most of
this file.
(AM_CPPFLAGS): Don't mention -I$(srcdir), since that's now done
for us.
(noinst_LIBRARIES, LDDADD, DEFS): Remove.
(libcoreutils_a_SOURCES): Trim down greatly, just to the files
that aren't in gnulib.
Remove defns gnulib does for us.
* m4/check-decl.m4 (gl_CHECK_DECLS):
Don't include stdio.h, string.h, stdlib.h, unistd.h, sys/time.h,
time.h. Use AC_CHECK_DECLS_ONCE for free, getenv, geteuid, getlogin,
getuid, lseek, malloc, memchr, realloc. Don't check for getutent,
memrchr, nanosleep, stpcpy, strndup, strnlen, strstr, strtoul,
strtoull.
(_gl_DECL_HEADERS): Remove; all uses removed.
* m4/jm-macros.m4 (gl_MACROS): Move AC_PREREQ into configure.ac
for the benefit of gnulib-tool. Call gl_INIT.
Do not call or require macros that gnulib will handle for us.
Don't check for fchmod, hasmntopt, isascii, lchown, listmntent,
mempcpy, realpath, wcrtomb, tzset.
(gl_CHECK_ALL_HEADERS): Don't check for sys/statvfs.h, sys/vfs.h,
sys/mount.h.
(gl_CHECK_ALL_TYPES): Require AC_TYPE_UNSIGNED_LONG_LONG_INT.
Don't check for struct stat.st_blksize.
Don't require AC_STRUCT_ST_DM_MODE, gt_TYPE_SSIZE_T,
gl_AC_TYPE_UINT32_T, gl_AC_TYPE_UINTMAX_T, gl_AC_TYPE_UINTPTR_T,
gl_AC_TYPE_UNSIGNED_LONG_LONG.
* m4/prereq.m4 (gl_PREREQ): Require gl_FUNC_XFTS, gl_ROOT_DEV_INO.
Don't require macros that gnulib does for us.
* m4/stat-prog.m4 (cu_PREREQ_STAT_PROG): Don't check for
sys/sysmacros.h. Don't check for statvfs. Use AC_CHECK_HEADERS_ONCE
for netinet/in.h, nfs/nfs_clnt.h, nfs/vfs.h.
Don't require gl_AC_TYPE_LONG_LONG, gt_HEADER_INTTYPES_H.
Diffstat (limited to 'src')
-rw-r--r-- | src/c99-to-c89.diff | 23 | ||||
-rw-r--r-- | src/kill.c | 4 | ||||
-rw-r--r-- | src/ls.c | 34 | ||||
-rw-r--r-- | src/printf.c | 7 | ||||
-rw-r--r-- | src/su.c | 2 | ||||
-rw-r--r-- | src/system.h | 119 | ||||
-rw-r--r-- | src/wc.c | 32 |
7 files changed, 12 insertions, 209 deletions
diff --git a/src/c99-to-c89.diff b/src/c99-to-c89.diff index 90b284818..22723b7b4 100644 --- a/src/c99-to-c89.diff +++ b/src/c99-to-c89.diff @@ -22,29 +22,6 @@ diff -u -p -r1.203 copy.c } } -Index: src/ls.c -=================================================================== -RCS file: /fetish/cu/src/ls.c,v -retrieving revision 1.435 -diff -u -p -r1.435 ls.c ---- src/ls.c 9 Aug 2006 09:45:17 -0000 1.435 -+++ src/ls.c 17 Aug 2006 09:18:52 -0000 -@@ -3139,13 +3139,14 @@ sort_files (void) - use_strcmp = true; - assert (sort_type != sort_version); - } -- -+ { - /* When sort_type == sort_time, use time_type as subindex. */ - int timeoffset = sort_type == sort_time ? time_type : 0; - - qsort (files, files_index, sizeof *files, - sort_functions[sort_type + timeoffset][use_strcmp][sort_reverse] - [directories_first]); -+ } - } - - /* List all the files now in the table. */ Index: src/remove.c =================================================================== RCS file: /fetish/cu/src/remove.c,v diff --git a/src/kill.c b/src/kill.c index ab5ae3c96..c59025fa0 100644 --- a/src/kill.c +++ b/src/kill.c @@ -42,10 +42,6 @@ #define AUTHORS "Paul Eggert" -#if ! (HAVE_DECL_STRTOIMAX || defined strtoimax) -intmax_t strtoimax (); -#endif - #if ! (HAVE_DECL_STRSIGNAL || defined strsignal) # if ! (HAVE_DECL_SYS_SIGLIST || defined sys_siglist) # if HAVE_DECL__SYS_SIGLIST || defined _sys_siglist @@ -73,34 +73,6 @@ # endif #endif -/* Get mbstate_t, mbrtowc(), mbsinit(), wcwidth(). */ -#if HAVE_WCHAR_H -# include <wchar.h> -#endif - -/* Get iswprint(). */ -#if HAVE_WCTYPE_H -# include <wctype.h> -#endif -#if !defined iswprint && !HAVE_ISWPRINT -# define iswprint(wc) 1 -#endif - -#ifndef HAVE_DECL_WCWIDTH -"this configure-time declaration test was not run" -#endif -#if !HAVE_DECL_WCWIDTH -int wcwidth (); -#endif - -/* If wcwidth() doesn't exist, assume all printable characters have - width 1. */ -#ifndef wcwidth -# if !HAVE_WCWIDTH -# define wcwidth(wc) ((wc) == 0 ? 0 : iswprint (wc) ? 1 : -1) -# endif -#endif - #include "system.h" #include <fnmatch.h> @@ -126,6 +98,7 @@ int wcwidth (); #include "stat-time.h" #include "strftime.h" #include "strverscmp.h" +#include "wcwidth.h" #include "xstrtol.h" #include "xreadlink.h" @@ -3141,10 +3114,9 @@ sort_files (void) } /* When sort_type == sort_time, use time_type as subindex. */ - int timeoffset = sort_type == sort_time ? time_type : 0; - qsort (files, files_index, sizeof *files, - sort_functions[sort_type + timeoffset][use_strcmp][sort_reverse] + sort_functions[sort_type + (sort_type == sort_time ? time_type : 0)] + [use_strcmp][sort_reverse] [directories_first]); } diff --git a/src/printf.c b/src/printf.c index 2f29bc080..ddced5af4 100644 --- a/src/printf.c +++ b/src/printf.c @@ -58,13 +58,6 @@ #include "quote.h" #include "unicodeio.h" -#if ! (HAVE_DECL_STRTOIMAX || defined strtoimax) -intmax_t strtoimax (); -#endif -#if ! (HAVE_DECL_STRTOUMAX || defined strtoumax) -uintmax_t strtoumax (); -#endif - /* The official name of this program (e.g., no `g' prefix). */ #define PROGRAM_NAME "printf" @@ -61,6 +61,7 @@ #include "system.h" #include "dirname.h" +#include "getpass.h" #undef getusershell @@ -120,7 +121,6 @@ #define DEFAULT_USER "root" char *crypt (); -char *getpass (); char *getusershell (); void endusershell (); void setusershell (); diff --git a/src/system.h b/src/system.h index b9c8ee2f9..ff1161943 100644 --- a/src/system.h +++ b/src/system.h @@ -96,7 +96,10 @@ you must include <sys/types.h> before including this file memcpy otherwise. */ #include <string.h> +#include "mempcpy.h" #include "memrchr.h" +#include "stpcpy.h" +#include "strpbrk.h" #include <errno.h> @@ -319,35 +322,9 @@ enum #include "timespec.h" -#if HAVE_INTTYPES_H -# include <inttypes.h> -#endif +#include <inttypes.h> #include <stdint.h> -#if ULONG_MAX_LT_ULLONG_MAX -# define LONGEST_MODIFIER "ll" -#else -# define LONGEST_MODIFIER "l" -#endif -#if PRI_MACROS_BROKEN -# undef PRIdMAX -# undef PRIoMAX -# undef PRIuMAX -# undef PRIxMAX -#endif -#ifndef PRIdMAX -# define PRIdMAX LONGEST_MODIFIER "d" -#endif -#ifndef PRIoMAX -# define PRIoMAX LONGEST_MODIFIER "o" -#endif -#ifndef PRIuMAX -# define PRIuMAX LONGEST_MODIFIER "u" -#endif -#ifndef PRIxMAX -# define PRIxMAX LONGEST_MODIFIER "x" -#endif - #include <ctype.h> #if ! (defined isblank || HAVE_DECL_ISBLANK) @@ -412,20 +389,6 @@ char *memchr (); char *realloc (); #endif -#if !HAVE_DECL_STPCPY -# ifndef stpcpy -char *stpcpy (); -# endif -#endif - -#if !HAVE_DECL_STRNDUP -char *strndup (); -#endif - -#if !HAVE_DECL_STRSTR -char *strstr (); -#endif - #if !HAVE_DECL_GETENV char *getenv (); #endif @@ -434,11 +397,6 @@ char *getenv (); off_t lseek (); #endif -/* This is needed on some AIX systems. */ -#if !HAVE_DECL_STRTOUL -unsigned long strtoul (); -#endif - #if !HAVE_DECL_GETLOGIN char *getlogin (); #endif @@ -480,11 +438,6 @@ uid_t getuid (); #define X2REALLOC(P, PN) ((void) verify_true (sizeof *(P) == 1), \ x2realloc (P, PN)) -#if ! defined HAVE_MEMPCPY && ! defined mempcpy -/* Be CAREFUL that there are no side effects in N. */ -# define mempcpy(D, S, N) ((void *) ((char *) memcpy (D, S, N) + (N))) -#endif - /* Include automatically-generated macros for unlocked I/O. */ #include "unlocked-io.h" #include "same-inode.h" @@ -567,74 +520,10 @@ enum #include "intprops.h" -#ifndef CHAR_MIN -# define CHAR_MIN TYPE_MINIMUM (char) -#endif - -#ifndef CHAR_MAX -# define CHAR_MAX TYPE_MAXIMUM (char) -#endif - -#ifndef SCHAR_MIN -# define SCHAR_MIN (-1 - SCHAR_MAX) -#endif - -#ifndef SCHAR_MAX -# define SCHAR_MAX (CHAR_MAX == UCHAR_MAX ? CHAR_MAX / 2 : CHAR_MAX) -#endif - -#ifndef UCHAR_MAX -# define UCHAR_MAX TYPE_MAXIMUM (unsigned char) -#endif - -#ifndef SHRT_MIN -# define SHRT_MIN TYPE_MINIMUM (short int) -#endif - -#ifndef SHRT_MAX -# define SHRT_MAX TYPE_MAXIMUM (short int) -#endif - -#ifndef INT_MAX -# define INT_MAX TYPE_MAXIMUM (int) -#endif - -#ifndef INT_MIN -# define INT_MIN TYPE_MINIMUM (int) -#endif - -#ifndef INTMAX_MAX -# define INTMAX_MAX TYPE_MAXIMUM (intmax_t) -#endif - -#ifndef INTMAX_MIN -# define INTMAX_MIN TYPE_MINIMUM (intmax_t) -#endif - -#ifndef UINT_MAX -# define UINT_MAX TYPE_MAXIMUM (unsigned int) -#endif - -#ifndef LONG_MAX -# define LONG_MAX TYPE_MAXIMUM (long int) -#endif - -#ifndef ULONG_MAX -# define ULONG_MAX TYPE_MAXIMUM (unsigned long int) -#endif - -#ifndef SIZE_MAX -# define SIZE_MAX TYPE_MAXIMUM (size_t) -#endif - #ifndef SSIZE_MAX # define SSIZE_MAX TYPE_MAXIMUM (ssize_t) #endif -#ifndef UINTMAX_MAX -# define UINTMAX_MAX TYPE_MAXIMUM (uintmax_t) -#endif - #ifndef OFF_T_MIN # define OFF_T_MIN TYPE_MINIMUM (off_t) #endif @@ -24,41 +24,17 @@ #include <getopt.h> #include <sys/types.h> -/* Get mbstate_t, mbrtowc(), wcwidth(). */ -#if HAVE_WCHAR_H -# include <wchar.h> -#endif - -/* Get iswprint(), iswspace(). */ -#if HAVE_WCTYPE_H -# include <wctype.h> -#endif -#if !defined iswprint && !HAVE_ISWPRINT -# define iswprint(wc) 1 -#endif -#if !defined iswspace && !HAVE_ISWSPACE -# define iswspace(wc) \ - ((wc) == to_uchar (wc) && isspace (to_uchar (wc))) -#endif - #include "system.h" #include "error.h" #include "inttostr.h" #include "quote.h" #include "readtokens0.h" #include "safe-read.h" +#include "wcwidth.h" -#ifndef HAVE_DECL_WCWIDTH -"this configure-time declaration test was not run" -#endif -#if !HAVE_DECL_WCWIDTH -extern int wcwidth (); -#endif - -/* If wcwidth() doesn't exist, assume all printable characters have - width 1. */ -#if !defined wcwidth && !HAVE_WCWIDTH -# define wcwidth(wc) ((wc) == 0 ? 0 : iswprint (wc) ? 1 : -1) +#if !defined iswspace && !HAVE_ISWSPACE +# define iswspace(wc) \ + ((wc) == to_uchar (wc) && isspace (to_uchar (wc))) #endif /* The official name of this program (e.g., no `g' prefix). */ |