home *** CD-ROM | disk | FTP | other *** search
/ The World of Computer Software / World_Of_Computer_Software-02-385-Vol-1of3.iso / f / find37.zip / find-3.7 / ChangeLog next >
Text File  |  1992-07-23  |  30KB  |  926 lines

  1. Thu Jul 23 15:06:07 1992  David J. MacKenzie  (djm@nutrimat.gnu.ai.mit.edu)
  2.  
  3.     * Version 3.7.
  4.  
  5. Tue Jul 14 00:16:52 1992  David J. MacKenzie  (djm@apple-gunkies.gnu.ai.mit.edu)
  6.  
  7.     * pathmax.h: New file.
  8.     * bigram.c, code.c, locate.c: Use it.  Use xmalloc instead of malloc.
  9.  
  10. Sat Jul 11 22:31:46 1992  David J. MacKenzie  (djm@nutrimat.gnu.ai.mit.edu)
  11.  
  12.     * nextelem.c: New file.
  13.     * locate.c (main): Use it to support a database path.
  14.  
  15. Fri Jul  3 02:12:09 1992  David J. MacKenzie  (djm@wookumz.gnu.ai.mit.edu)
  16.  
  17.     * listfile.c, pred.c: Change FOO_MISSING to HAVE_FOO.
  18.  
  19.     * parser.c [_POSIX_SOURCE]: Define endpwent and endgrent as empty.
  20.     * listfile.c [!HAVE_ST_RDEV]: Print blanks.
  21.     From Jeffrey Siegal (jbs@congruent.com).
  22.  
  23.     * locate.c (locate): Check for EOF at top of loop, not middle.
  24.     * updatedb.sh: Remove duplication hack.
  25.     From Jay Plett.
  26.  
  27. Wed Jun 10 15:04:23 1992  David J. MacKenzie  (djm@wookumz.gnu.ai.mit.edu)
  28.  
  29.     * pred.c (pred_amin, pred_atime, pred_cmin, pred_ctime,
  30.     pred_mmin, pred_mtime, pred_used): Cast l_val to time_t before
  31.     comparing it to a time_t.  From fpm@crash.cts.com (Frank Maclachlan).
  32.  
  33.     * locate.c (locate): Take the database path as an arg.
  34.     (main): Take an option to specify the database path.
  35.     (usage): New function.
  36.  
  37.     * updatedb.sh: Don't read from and write to the file-list file
  38.     in the same statement.
  39.  
  40. Thu Jun  4 15:27:07 1992  David J. MacKenzie  (djm@geech.gnu.ai.mit.edu)
  41.  
  42.     * Version 3.6.
  43.  
  44. Wed May 20 00:05:13 1992  David J. MacKenzie  (djm@churchy.gnu.ai.mit.edu)
  45.  
  46.     * xargs.c: Include sys/param.h before limits.h, not after.
  47.  
  48.     * listfile.c: If we include a header file specifically to get
  49.     major et al., assume we have them.
  50.  
  51. Tue May 12 01:09:33 1992  David J. MacKenzie  (djm@churchy.gnu.ai.mit.edu)
  52.  
  53.     * locate.c (locate): Don't give fnmatch FNM_PERIOD (it's useless).
  54.  
  55.     * parser.c (parse_path): New function.
  56.     * pred.c (pred_path): New function.
  57.     * tree.c (opt_expr): Move -path like -name.
  58.  
  59.     * updatedb.sh: Duplicate the last entry in the file list so it
  60.     doesn't get ignored.
  61.  
  62. Mon May 11 22:24:40 1992  David J. MacKenzie  (djm@churchy.gnu.ai.mit.edu)
  63.  
  64.     * updatedb.sh: Allow many vars to be overridden in the environment.
  65.  
  66.     * locate.c, updatedb.sh: FCODES -> LOCATE_DB.
  67.  
  68. Wed Apr 22 15:24:00 1992  David J. MacKenzie  (djm@churchy.gnu.ai.mit.edu)
  69.  
  70.     * updatedb.sh: Use binprefix when calling find.
  71.  
  72.     * locate.c (locate): Use LOCATE_DB environ variable if set.
  73.  
  74.     * find.c (scan_directory): Allow for dirs having negative
  75.     st_size (NFS mount points on VAX 4.3BSD+NFS).
  76.     From metcalf@catfish.lcs.mit.edu (Chris Metcalf).
  77.  
  78. Sat Apr 18 15:42:52 1992  David J. MacKenzie  (djm@wookumz.gnu.ai.mit.edu)
  79.  
  80.     * fstype.c: Rename FS_* to FSTYPE_*.  Support Dynix's
  81.     name for the mount table.
  82.  
  83. Sun Mar  8 23:21:25 1992  David J. MacKenzie  (djm@nutrimat.gnu.ai.mit.edu)
  84.  
  85.     * listfile.c (list_file): Allow a slop factor for deciding what
  86.     is in the future.
  87.  
  88. Tue Feb 25 16:24:15 1992  David J. MacKenzie  (djm@wookumz.gnu.ai.mit.edu)
  89.  
  90.     * Version 3.5.
  91.  
  92. Sat Feb 22 08:43:01 1992  David J. MacKenzie  (djm@wookumz.gnu.ai.mit.edu)
  93.  
  94.     * tree.c (set_new_parent): Initialize need_stat field.
  95.  
  96.     * defs.h (struct predicate): Define p_name unconditionally.
  97.  
  98. Fri Feb 21 15:28:43 1992  David J. MacKenzie  (djm@wookumz.gnu.ai.mit.edu)
  99.  
  100.     * tree.c (opt_expr): Preserve expression precedence when
  101.     rearranging expression tree. 
  102.     (set_new_parent): New function.
  103.     (mark_stat): Set need_stat whether or not it's been set
  104.     earlier in the expression.
  105.     All from Tim Wood.
  106.  
  107. Mon Feb 17 10:20:38 1992  David J. MacKenzie  (djm at wookumz.gnu.ai.mit.edu)
  108.  
  109.     * updatedb.sh: Use current value of TMPDIR if already set.
  110.     From Dana Jacobsen (jacobsd@cs.orst.edu).
  111.  
  112.     * pred.c: Include pwd.h and grp.h after unistd.h, not before.
  113.     Apparently needed on ISC 2.2.  From Juha Takala <jta@piuha.sah.vtt.fi>.
  114.  
  115. Thu Feb 13 10:52:31 1992  David J. MacKenzie  (djm at wookumz.gnu.ai.mit.edu)
  116.  
  117.     * modetype.h: Don't define S_IFMT, because doing so breaks pred_type
  118.     on plain POSIX.1 systems.
  119.  
  120. Sat Feb  8 00:58:13 1992  David J. MacKenzie  (djm at wookumz.gnu.ai.mit.edu)
  121.  
  122.     * Version 3.4.
  123.  
  124. Fri Feb  7 21:35:58 1992  David J. MacKenzie  (djm at wookumz.gnu.ai.mit.edu)
  125.  
  126.     * defs.h: Don't declare process_path.
  127.     * find.c [DEBUG_STAT] (debug_stat): New function.
  128.     (main) [DEBUG_STAT]: Call it.
  129.     (process_path): Return a value.
  130.     (scan_directory): Count number of subdirs seen so far.
  131.     * parser.c (pred_and, pred_close, pred_comma, pred_negate,
  132.     pred_open, pred_or): Don't need stat.
  133.     * util.c (get_new_pred_chk_op): Implicit AND doesn't need stat.
  134.  
  135. Fri Jan 17 21:51:18 1992  David J. MacKenzie  (djm at wookumz.gnu.ai.mit.edu)
  136.  
  137.     * Version 3.3.
  138.  
  139. Tue Dec 24 02:16:49 1991  David J. MacKenzie  (djm at wookumz.gnu.ai.mit.edu)
  140.  
  141.     * wait.h, listfile.c, xargs.c, bigram.c, code.c, locate.c:
  142.     Change POSIX ifdefs to HAVE_UNISTD_H and _POSIX_VERSION. 
  143.  
  144. Wed Dec 18 16:37:17 1991  David J. MacKenzie  (djm at wookumz.gnu.ai.mit.edu)
  145.  
  146.     * listfile.c: Use MAJOR_IN_MKDEV and MAJOR_IN_SYSMACROS to
  147.     find major and minor.
  148.  
  149.     * code.c, bigram.c, locate.c, xargs.c: Use LIMITS_H_MISSING
  150.     instead of LIMITS_MISSING.
  151.  
  152. Sat Dec  7 06:13:26 1991  David J. MacKenzie  (djm at frob.eng.umd.edu)
  153.  
  154.     * parser.c (parse_prune): No stat needed for prune.
  155.     (insert_fprintf, make_segment): Possibly no stat needed,
  156.     depending on which information is printed.
  157.  
  158.     * xargs.c (usage): Document long-named options as starting
  159.     with -- instead of +.
  160.  
  161.     * parser.c [!POSIX]: Declare getgrent and getpwent.
  162.  
  163.     * fstype.c (filesystem_type): Only check MNTTYPE_IGNORE if
  164.     it's defined.  From Rainer Orth.
  165.  
  166.     * Add leaf node optimization suggested by Matthew Farwell
  167.     <dylan@ibmpcug.co.uk>.  Add -noleaf option to disable it.
  168.     Adapt parts of Tim Wood's work to current sources.
  169.     * find.c (scan_directory): New function, from code in process_path.
  170.     (process_path): Take an arg indicating whether the pathname
  171.     is a leaf non-directory, instead of a redundant current level.
  172.     * parser.c (parse_noleaf): New function.
  173.     (parse_print, parse_name, etc.): Set need_stat = false.
  174.  
  175. Wed Nov  2 13:34:32 1990  Tim Wood at home    (tim at axolotl.UUCP)
  176.  
  177.     * pred.c: Call stat() if an AND, OR or NOT node tells you to.
  178.     * find.c: Limit calls to stat().
  179.  
  180. Wed Oct  3 17:30:39 1990  Tim Wood at home    (tim at axolotl.UUCP)
  181.  
  182.     * tree.c (opt_expr): New function to rearrange predicates within
  183.     a conjunction/disjunction so that non-inode (-name, -regex) ones
  184.     are executed first.  
  185.     * pred.c: Make some supporting tree structure changes for opt_expr().
  186.  
  187. Sat Dec  7 00:36:06 1991  David J. MacKenzie  (djm at wookumz.gnu.ai.mit.edu)
  188.  
  189.     * xargs.c (do_exec): Simplify test for which exit
  190.     status to use if exec fails.
  191.  
  192. Fri Dec  6 18:24:06 1991  David J. MacKenzie  (djm at wookumz.gnu.ai.mit.edu)
  193.  
  194.     * listfile.c (list_file): POSIX_ME_HARDER -> POSIXLY_CORRECT.
  195.  
  196. Thu 24 Oct 1991 21:33:21  Jim Meyering (meyering at churchy.gnu.ai.mit.edu)
  197.  
  198.     * pred.c (pred_fprintf): Don't print "\n" unless it's in the
  199.     format string.
  200.  
  201. Mon Oct 21 22:30:35 1991  David J. MacKenzie  (djm at wookumz.gnu.ai.mit.edu)
  202.  
  203.     * defs.h, parser.c, pred.c: Rename some types that conflict
  204.     with reserved POSIX.1 namespace (ended in _t).
  205.  
  206. Thu Oct 17 22:39:06 1991  David J. MacKenzie  (djm at wookumz.gnu.ai.mit.edu)
  207.  
  208.     * xargs.c: Don't determine memory.h based on POSIX, which
  209.     doesn't mention it.
  210.  
  211. Sat Oct  5 16:11:05 1991  Jim Meyering (meyering at churchy.gnu.ai.mit.edu)
  212.  
  213.     * parser.c (parse_perm): Parse new `-perm +mode' notation.
  214.     * pred.c (pred_perm): Interpret same.
  215.  
  216. Fri Sep 13 14:58:27 1991  David J. MacKenzie  (djm at churchy.gnu.ai.mit.edu)
  217.  
  218.     * xargs.c [POSIX]: Always use sysconf to get ARG_MAX.
  219.  
  220. Thu Sep  5 23:57:06 1991  David J. MacKenzie  (djm at apple-gunkies)
  221.  
  222.     * bigram.c, code.c (main): Make path_max int, not unsigned.
  223.     * locate.c (main): Check for pathconf failure.
  224.  
  225. Thu Sep  5 11:54:44 1991 Jim Meyering (meyering at churchy.gnu.ai.mit.edu)
  226.  
  227.     * parser.c (insert_fprintf): Add `\\' escape and fixed `%%'
  228.     interpretation.
  229.     * pred.c (pred_fprintf): fixed off-by-one indexing problem
  230.     when handling [gGuU] printf formats.
  231.  
  232. Wed Aug 28 20:53:57 1991  David J. MacKenzie  (djm at wookumz.gnu.ai.mit.edu)
  233.  
  234.     * Version 3.2.
  235.  
  236. Mon Aug 26 18:57:32 1991  David J. MacKenzie  (djm at pogo.gnu.ai.mit.edu)
  237.  
  238.     * bigram.c, code.c: Fix handling of PATH_MAX.
  239.     Check for anomalous input line lengths.
  240.     From Bruce Evans.
  241.  
  242. Fri Aug 23 11:00:18 1991  David J. MacKenzie  (djm at apple-gunkies)
  243.  
  244.     * pred.c (pred_fprintf): Round block number up to get K.
  245.  
  246. Thu Aug 22 10:46:30 1991  David J. MacKenzie  (djm at apple-gunkies)
  247.  
  248.     * pred.c (pred_fprintf, pred_lname) [_AIX]: Allocate PATH_MAX
  249.     byte for link object since st_size is wrong.
  250.  
  251.     * listfile.c (list_file): Don't convert blocks to kilobytes if
  252.     env. var POSIX_ME_HARDER is defined.
  253.  
  254.     * fstype.c [FS_AIX_STATFS]: New case.
  255.  
  256.     * configure: Make sure the sys/mount.h is the 4.4BSD version
  257.     with grep instead of just testing whether it exists.
  258.  
  259.     * listfile.c (list_file): Add 1 to number of 512-byte blocks
  260.     before dividing to get 1K blocks (so we round up, not down).
  261.  
  262. Wed Aug 21 13:02:46 1991  David J. MacKenzie  (djm at wookumz.gnu.ai.mit.edu)
  263.  
  264.     * Version 3.1.
  265.  
  266.     * parser.c (parse_fprintf), pred.c (pred_fprintf): Add %k
  267.     conversion to print 1K blocks.
  268.  
  269.     * listfile.c: Print counts of 1K blocks, for consistency with
  270.     new fileutils release.  Bad timing, there.
  271.  
  272.     * Version 3.0.
  273.  
  274.     * pred.c [VOID_CLOSEDIR]: Fake a return value for closedir,
  275.     which returns void on some systems, like Sequents.
  276.     * configure: Check sys/dir.h for 'void closedir'.
  277.  
  278. Thu Aug 15 16:07:46 1991  David J. MacKenzie  (djm at frob)
  279.  
  280.     * modetype.h: Define POSIX.1 stat stuff if missing.
  281.     * pred.c, parser.c, find.c, fstype.c: Don't define it.
  282.     * updatedb.sh: Use a variable substitution method like configure's.
  283.     * Makefile.in: Add datadir variable to separate programs from
  284.     data file.
  285.  
  286.     * parser.c, pred.c: Rename -fulldays to -daystart.
  287.  
  288.     * defs.h, find.c, parser.c, pred.c: Add many new predicates
  289.     from Jay Plett (jay@princeton.edu).
  290.  
  291. Wed Aug 14 14:37:06 1991  David J. MacKenzie  (djm at bleen)
  292.  
  293.     * parser.c (parse_size), pred.c (pred_size), defs.h (struct
  294.     size_t): Allow `k' to follow number to measure size in Kbytes.
  295.     * parser.c (parse_size, get_num, insert_num), defs.h (struct
  296.     size_t): Use enum comparison_type instead of short.
  297.  
  298. Fri Aug  9 00:49:32 1991  David J. MacKenzie  (djm at wookumz.gnu.ai.mit.edu)
  299.  
  300.     * xargs.c (read_line): Use isblank, to support POSIX locales.
  301.  
  302.     * fstype [FS_STATVFS]: New code for SVR4, from slootman@dri.nl
  303.     (Paul Slootman).
  304.     * configure: Figure out when to use it.
  305.  
  306.     * configure: Check for st_blocks in struct stat.
  307.     * listfile.c (ST_NBLOCKS): New macro.
  308.     (list_file): Print file's block count.
  309.     Use S_ISLNK instead of S_IFLNK.
  310.     * fileblocks.c: New file, from fileutils.
  311.  
  312. Thu Aug  8 17:20:19 1991  David J. MacKenzie  (djm at wookumz.gnu.ai.mit.edu)
  313.  
  314.     * parser.c, pred.c [CACHE_IDS]: Optional code to turn uid and
  315.     gid lookups into table lookups.
  316.  
  317. Wed Aug  7 00:22:29 1991  David J. MacKenzie  (djm at wheat-chex)
  318.  
  319.     * configure, Makefile.in's: Support +srcdir option via VPATH.
  320.     Clean up clean targets.
  321.  
  322. Sat Jul 20 01:11:51 1991  David J. MacKenzie  (djm at apple-gunkies)
  323.  
  324.     * configure: Filter /etc and /usr/etc from path.
  325.  
  326.     * xargs.c (wait_for_proc): Fix handling of child exit status.
  327.     (main): Exit with a nonzero status if any child did.
  328.  
  329.     * pred.c (launch): Flush stdout and stderr before forking.
  330.  
  331.     * fstype.c (filesystem_type) [FS_MNTENT]: Skip entries of
  332.     type "ignore".
  333.  
  334. Fri Jul 19 22:53:42 1991  David J. MacKenzie  (djm at bleen)
  335.  
  336.     * pred.c, locate.c: Use fnmatch instead of glob_match.
  337.     * fnmatch.c, fnmatch.h: New files.
  338.  
  339.     * Many files: Use string.h if STDC_HEADERS, as well as if USG.
  340.  
  341.     * locate.c, code.c, bigram.c: Possibly use pathconf to get
  342.     PATH_MAX.  Use malloc to allocate path arrays.
  343.  
  344.     * xargs.c: Possibly use sysconf to get ARG_MAX.
  345.     (env_size): Make definition unconditional.
  346.     (main): Do arg_max adjustment that can't be done with
  347.     preprocessor now that ARG_MAX might be a function call.
  348.     (do_exec): Exit with status 126 or 127 after failed exec, for
  349.     POSIX.2 draft 11.1.
  350.  
  351.     * xargs.c, pred.c, listfile.c: Use POSIX, not UNISTD_MISSING.
  352.     * wait.h: Use POSIX, not WAIT_MACROS_MISSING.
  353.  
  354.     * COPYING: Use version 2.  Update all files.
  355.  
  356.     * Replace Makefile and lib/Makefile with Makefile.in,
  357.     lib/Makefile.in and configure.  Update README.
  358.  
  359. Fri Apr  5 12:49:09 1991  David J. MacKenzie  (djm at apple-gunkies)
  360.  
  361.     * Version 2.2.
  362.  
  363. Fri Mar 15 20:44:45 1991  David J. MacKenzie  (djm at geech.ai.mit.edu)
  364.  
  365.     * xargs.c (main): Always run the command if some args are left over.
  366.     Rename some variables.
  367.  
  368. Fri Jan 18 03:35:57 1991  David J. MacKenzie  (djm at geech.ai.mit.edu)
  369.  
  370.     * bigram.c, code.c, locate.c: Use LIMITS_MISSING, not
  371.     _POSIX_SOURCE, to decide whether to include limits.h.
  372.  
  373.     * parser.c, pred.c, listfile.c: Use POSIX, not _POSIX_SOURCE,
  374.     to decide whether to declare getpwuid and getgrgid.
  375.  
  376.     * xargs.c: Use POSIX, not _POSIX_SOURCE, to determine whether
  377.     to include memory.h.
  378.  
  379. Sat Jan 12 04:12:34 1991  David J. MacKenzie  (djm at wookumz.ai.mit.edu)
  380.  
  381.     * defs.h, find.c, parser.c, pred.c: Remove -permmask option.
  382.  
  383. Thu Jan 10 04:32:52 1991  David J. MacKenzie  (djm at albert.ai.mit.edu)
  384.  
  385.     * wait.h: Include sys/types.h to get pid_t.
  386.  
  387.     * xargs.c [USG && !STDC_HEADERS]: Only include memory.h if not
  388.     _POSIX_SOURCE.
  389.  
  390. Tue Jan  1 23:53:32 1991  David J. MacKenzie  (djm at albert.ai.mit.edu)
  391.  
  392.     * Version 2.1.
  393.  
  394. Wed Dec 26 03:25:51 1990  David J. MacKenzie  (djm at apple-gunkies)
  395.  
  396.     * locate.c, bigram.c, code.c: Attempt to get max. path length
  397.     on more kinds of systems, incl. POSIX.
  398.  
  399.     * pred.c, listfile.c, xargs.c: Get some decls from unistd.h,
  400.     if available. 
  401.  
  402.     * find.c, defs.h: Make `cur_day_start' a time_t, not long.
  403.  
  404. Fri Dec 21 01:49:12 1990  David J. MacKenzie  (djm at egypt)
  405.  
  406.     * defs.h, parser.c: Remove unused field from `struct exec_t'.
  407.  
  408.     * xargs.c: Add +no-run-if-empty option to cause the command to
  409.     not be run if the input is empty.
  410.  
  411.     * defs.h (struct exec_t): Change the array of offsets into an
  412.     array of `struct path_arg'.
  413.     * parser.c (insert_exec_ok): Fill in new fields, to allow "{}"
  414.     to be substituted (multiple times) anywhere in an arg to -exec
  415.     or -ok.
  416.     * pred.c (pred_exec): Add code to substitute "{}" within args.
  417.     (pred_ok): After prompting, just run pred_exec.
  418.  
  419. Thu Dec 20 02:32:09 1990  David J. MacKenzie  (djm at egypt)
  420.  
  421.     * fstype.c (filesystem_type) [FS_MNTENT]: Allow for optional
  422.     "0x" at front of "dev=" mount option, which amd puts there but
  423.     Sun automounter doesn't.
  424.  
  425. Sat Dec 15 19:01:12 1990  David J. MacKenzie  (djm at egypt)
  426.  
  427.     * find.c (main), util.c (usage): Make directory args optional,
  428.     defaulting to ".".
  429.  
  430. Sat Dec 15 18:36:29 1990  David J. MacKenzie  (djm at apple-gunkies)
  431.  
  432.     * listfile.c: Define major and minor if not defined (as in POSIX).
  433.  
  434. Mon Dec  3 01:04:35 1990  David J. MacKenzie  (djm at alborz)
  435.  
  436.     * find.c, fstype.c, parser.c, pred.c, util.c: Flush stdout before
  437.     writing to stderr, in case they have been redirected to the
  438.     same file descriptor.
  439.  
  440.     * pred.c (launch): Use POSIX wait macros from wait.h.
  441.  
  442.     * xargs.c (print_xargs): Read from tty_stream, not stdin.
  443.  
  444. Tue Nov 20 16:48:24 1990  David J. MacKenzie  (djm at apple-gunkies)
  445.  
  446.     * Version 2.0.
  447.  
  448.     * fstype.c [FS_USG_STATFS]: New code.
  449.     [FS_STATFS]: For symlinks, statfs the directory the link is in
  450.     instead of the link.
  451.     * Various files: Conditionalize some declarations on
  452.     STDC_HEADERS or _POSIX_SOURCE.
  453.  
  454. Fri Nov 16 12:24:43 1990  David J. MacKenzie  (djm at egypt)
  455.  
  456.     * modetype.h: New file.
  457.     parser.c, pred.c: Use it.
  458.  
  459. Thu Nov 15 18:05:54 1990  David J. MacKenzie  (djm at apple-gunkies)
  460.  
  461.     * xmalloc.c: New file from fileutils.
  462.  
  463.     * fstype.c (fstype_to_string): Add case for MFS.
  464.     (filesystem_type): Take a pathname as a second arg.
  465.     [FS_STATFS] return "unknown" instead of exiting if statfs
  466.     fails because of ENOENT.
  467.     * pred.c (pred_fstype): Pass the pathname.  Set current_dev.
  468.     * find.c (process_path): Make root_dev local again.
  469.  
  470. Mon Nov 12 02:54:00 1990  David J. MacKenzie  (djm at apple-gunkies)
  471.  
  472.     * pred.c (pred_fstype): Free old fs type.
  473.  
  474.     * fstype.c, pred.c (pred_fstype), parser.c (parse_fstype): 
  475.     Reread the file system type info. every time a filesystem
  476.     mount point is crossed, to allow for automounting.
  477.  
  478.     * xstrdup.c: New file from fileutils.
  479.  
  480.     * find.c (process_path): Rename root_dev to current_dev and
  481.     make it global, for -fstype.
  482.  
  483.     * wait.h: New file taken from xargs.c.
  484.  
  485.     * xargs.c: Make limits.h vs. sys/param.h conditional on
  486.     LIMITS_MISSING instead of USG, to accomodate SVR2.
  487.  
  488. Thu Nov  8 11:52:22 1990  David J. MacKenzie  (djm at apple-gunkies)
  489.  
  490.     * parser.c, pred.c, listfile.c: If not _POSIX_SOURCE, declare
  491.     getpwuid and getgrgid.  Use them.
  492.  
  493.     * listfile.c: If not _POSIX_SOURCE, define S_ISDIR and
  494.     S_ISBLK.  Use them. 
  495.  
  496.     * find.c: Use S_ISDIR instead of S_IFDIR, and define if not
  497.     _POSIX_SOURCE. 
  498.  
  499.     * Makefile: Define AR and RANLIB and pass to child makes.
  500.     lib/Makefile: Use them.
  501.  
  502.     * xargs.c (WIFSIGNALED): Redefine so it works.
  503.  
  504. Mon Nov  5 00:02:01 1990  David J. MacKenzie  (djm at apple-gunkies)
  505.  
  506.     * find.c (process_path): For -xdev, process filesystem
  507.     mountpoints (but don't descend them), instead of skipping them
  508.     entirely. 
  509.  
  510.     * find.c, parser.c, defs.h: Add -follow predicate.
  511.  
  512.     * xargs.c: Change ifdefs to support STDC POSIX systems.
  513.  
  514. Sat Nov  3 20:18:05 1990  David J. MacKenzie  (djm at apple-gunkies)
  515.  
  516.     * xargs.c (do_exec): Child process exits with status 255, not
  517.     127, if command can't be run.
  518.  
  519. Fri Nov  2 02:11:42 1990  David J. MacKenzie  (djm at apple-gunkies)
  520.  
  521.     * xargs.c: Exit with status 127 if running commmand fails, as
  522.     required by POSIX.
  523.  
  524.     * fstype.c: Support -fstype for Ultrix (-DFS_GETMNT).
  525.     Sun/BSD code is now -DFS_MNTENT.
  526.  
  527. Thu Nov  1 13:06:01 1990  David J. MacKenzie  (djm at egypt)
  528.  
  529.     * Reorganize into subdirectories and add xargs.  Rewrite Makefiles.
  530.  
  531.     * find.c (process_path, main): Allow a maxdepth of 0, meaning
  532.     only process command line args.
  533.  
  534.     * parser.c, pred.c: Add -print0 predicate.
  535.  
  536.     * xargs.c: Add -0 option and long options.  Move standard
  537.     library functions into separate files.  Use error instead of
  538.     fatal and fprintf/perror.  Use POSIX macros for examining exit
  539.     status from wait.
  540.     (read_string): New function.
  541.  
  542. Fri Sep 21 10:21:09 1990  David J. MacKenzie  (djm at apple-gunkies)
  543.  
  544.     * find.c (process_path): Take DEPTH as an arg instead of ROOT,
  545.     and change callers.
  546.  
  547. Thu Sep 20 23:58:47 1990  David J. MacKenzie  (djm at apple-gunkies)
  548.  
  549.     * parser.c (parse_maxdepth): New function.
  550.     * find.c (process_path): If -maxdepth was given, don't go
  551.     more than that many levels deep.
  552.     * defs.h: Declare maxdepth.
  553.  
  554. Wed Sep 12 02:12:31 1990  David J. MacKenzie  (djm at apple-gunkies)
  555.  
  556.     * parser.c: Add -not as synonym for !.
  557.  
  558. Sun Aug 26 06:16:08 1990  Jim Kingdon  (kingdon at pogo.ai.mit.edu)
  559.  
  560.     * Makefile (TAGS): New target.
  561.  
  562. Sun Aug 12 00:32:01 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
  563.  
  564.     * xargs.c (main): Tell getopt to not permute.
  565.  
  566. Sat Aug  4 21:43:45 1990  David J. MacKenzie  (djm at pogo.ai.mit.edu)
  567.  
  568.     * parser.c (parse_perm), pred.c (pred_perm): Always compare
  569.     bits 07777.
  570.  
  571.     * locate.c, Makefile: Rename 'fastfind' program to 'locate',
  572.     following comment in POSIX.2 draft 10 rationale for find.
  573.  
  574. Wed Jul 25 18:45:03 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
  575.  
  576.     * listfile.c (getuser, getgroup): Make uid and gid unsigned
  577.     short, not int.
  578.  
  579. Mon Jul 16 13:40:13 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
  580.  
  581.     * defs.h: Don't declare fprintf and printf, in case they have
  582.     prototypes in stdio.h (important for functions that use stdarg).
  583.  
  584. Sun Jul 15 23:39:39 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
  585.  
  586.     * parser.c (parse_and): New function, for compatibility.
  587.  
  588. Wed Jul  4 00:17:57 1990  David J. MacKenzie  (djm at apple-gunkies)
  589.  
  590.     * find.c (main): Only enclose expressions that produce no side
  591.     effects within `( ... )'.
  592.  
  593. Tue Jul  3 01:59:39 1990  David J. MacKenzie  (djm at apple-gunkies)
  594.  
  595.     * parser.c (strspn): Stop when end of string reached.
  596.  
  597.     * Version 1.2.
  598.  
  599.     * Move version number from Makefile to new file version.c.
  600.     * parser.c: Recognize new -version predicate.
  601.  
  602.     * find.c (main): If no predicates that produce output are
  603.     given, default to -print if the entire expression is true, not
  604.     just the last part of an alternation.
  605.     * Print the names of predicates with invalid arguments.
  606.  
  607. Mon Jul  2 23:48:17 1990  David J. MacKenzie  (djm at apple-gunkies)
  608.  
  609.     * pred.c: Don't check for invalid comparison types in numeric
  610.     predicate functions.
  611.  
  612. Thu Jun 28 00:34:57 1990  David J. MacKenzie  (djm at apple-gunkies)
  613.  
  614.     * parser.c (parse_regex): Set fastmap and translate before
  615.     compiling regex.
  616.  
  617. Mon Jun 25 18:08:59 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
  618.  
  619.     * fastfind.c (fastfind): Initialize count to 0.
  620.  
  621.     * lib/updatedb.sh: Only do regex comparison on directories,
  622.     for speed.
  623.  
  624.     * listfile.c (list_file): Truncate user and group name to 8 chars.
  625.  
  626. Sun Jun 24 13:51:27 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
  627.  
  628.     * Version 1.1.
  629.  
  630.     * Makefile [DISTFILES]: Add COPYING.
  631.  
  632. Fri Jun 22 03:54:27 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
  633.  
  634.     * Version 1.0.
  635.  
  636. Tue Jun 19 03:55:28 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
  637.  
  638.     * lib/updatedb.sh: Prune entries that match PRUNEREGEX.
  639.     Split up finding files from computing bigrams.
  640.     Use redirection instead of nonportable grep -s to detect sort
  641.     failure.  Optionally search network filesystems as well as
  642.     local ones.
  643.  
  644.     * pred.c (pred_regex): Match against full pathname instead of
  645.     just last element.
  646.     * util.c (basename): Return "/", not "", if given "/".
  647.  
  648.     * find.c (process_path): Fix error in handling "/" directory.
  649.  
  650. Mon Jun 18 01:49:16 1990  David J. MacKenzie  (djm at apple-gunkies)
  651.  
  652.     * parser.c [STRSPN_MISSING] (strspn): New function.
  653.  
  654. Sun Jun 17 13:54:09 1990  David J. MacKenzie  (djm at apple-gunkies)
  655.  
  656.     * listfile.c: New file.
  657.     * parser.c (parse_ls): New function.
  658.     * pred.c (pred_ls): New function.
  659.  
  660.     * find.c (main): Remove interface to fastfind, to prevent
  661.     conflict with POSIX syntax.
  662.     * util.c (usage): Remove fastfind syntax from message.
  663.     * fastfind.c (main): New function.
  664.     * Makefile: Make fastfind a separate program.
  665.  
  666.     * find.c (main): Print correct message if a predicate arg is
  667.     missing. 
  668.  
  669.     * parser.c (insert_exec_ok): Make args that start with a ';' but
  670.     contain other characters not terminate the command.
  671.  
  672. Fri Jun 15 00:33:45 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
  673.  
  674.     * fstype.c: If MOUNTED isn't defined but MNT_MNTTAB is, use it
  675.     instead.  True for HP/UX, at least.
  676.  
  677. Thu Jun 14 10:10:25 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
  678.  
  679.     * savedir.c: New file; now find won't run out of file
  680.     descriptors in deep trees.
  681.     * find.c (process_path): Use savedir.
  682.  
  683. Sat Jun  9 03:15:21 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
  684.  
  685.     * parser.c (parse_permmask): Allow symbolic mode masks.
  686.     (parse_perm): Free 'struct change' when done with it.
  687.     (get_oct): Function removed.
  688.  
  689.     * find.c (process_path): Allow arbitrarily-long filenames.
  690.     More efficient string copying.  Initialize perm_mask to 07777
  691.     instead of -1.
  692.  
  693. Thu Jun  7 04:22:42 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
  694.  
  695.     * Makefile, find.c: Use DIRENT to control whether <dirent.h>
  696.     is used.
  697.  
  698. Thu May 31 04:46:11 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
  699.  
  700.     * parser.c (parse_regex): New function.
  701.     * pred.c (pred_regex): New function.
  702.  
  703.     * fstype.c (read_mtab): If mtab entry has a "dev=" option
  704.     (like in SunOS 4.1), use it, so there is no need to stat the
  705.     special file later on.
  706.     (xatoi, strstr): New functions.
  707.  
  708. Mon May 21 01:04:42 1990  David J. MacKenzie  (djm at abyss)
  709.  
  710.     * lib/updatedb.sh: Put BINDIR in PATH.
  711.  
  712.     * fstype.c: Do nothing if MNTENT_MISSING is defined.
  713.  
  714.     * fstype.c: New file.
  715.     * parser.c (parse_fstype): New function.
  716.     * pred.c (pred_fstype): New function.
  717.  
  718.     * parser.c (parse_newer): Failure to stat -newer file is a
  719.     fatal error.
  720.  
  721.     * pred.c (pred_ok): Flush output before reading.  Use getchar
  722.     instead of scanf.
  723.  
  724.     * pred.c (pred_prune): Return false if -depth given.
  725.     * find.c: Apply the predicates to the dir when -depth and
  726.     -prune are given.
  727.  
  728. Sun May 20 19:55:30 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
  729.  
  730.     * pred.c (pred_prune): Set new global var `stop_at_current_level'.
  731.     * find.c (process_path): Test and reset it.
  732.  
  733. Fri May 18 01:56:17 1990  David J. MacKenzie  (djm at abyss)
  734.  
  735.     * modechange.c, modechange.h: New files.
  736.     * parser.c (parse_perm): Use mode_compile and mode_adjust to
  737.     parse arg, to allow symbolic mode for POSIX.
  738.  
  739. Thu May 17 02:07:44 1990  David J. MacKenzie  (djm at abyss)
  740.  
  741.     * parser.c (get_oct): Don't consider an empty string a valid number.
  742.  
  743.     * parser.c (parse_perm): If arg starts with '-', set flag bit
  744.     for special comparison (POSIX).
  745.     * pred.c (pred_perm): If flag bit set, compare s[ug]id &
  746.     sticky bits as well, and return true if the given perms are
  747.     set, ignoring other bits.
  748.  
  749.     * find.c: New global var `exit_status'.  Use it.  (POSIX)
  750.     * parser.c: Set `exit_status' if lstat on -newer file fails.
  751.  
  752.     * fastfind.c: New file.
  753.     * find.c (main): Call fastfind if given only 1 arg.
  754.     * util.c (usage): Update message. 
  755.     * lib/{Makefile,updatedb.sh,bigram.c,code.c}: New files.
  756.     * Makefile: Add 'all' and 'install' targets.
  757.  
  758. Wed May 16 23:23:35 1990  David J. MacKenzie  (djm at abyss)
  759.  
  760.     * parser.c (parse_nogroup, parse_nouser): Implement.
  761.     * pred.c (pred_nogroup, pred_nouser): Implement.
  762.  
  763. Mon May 14 00:09:35 1990  David J. MacKenzie  (djm at abyss)
  764.  
  765.     * find.c: Add variable `stay_on_filesystem' for -xdev.
  766.     (process_path): Take an arg determining whether this call is
  767.     the root of a tree.  Use lstat instead of stat.  If
  768.     stay_on_filesystem, don't process a dir on a different
  769.     filesystem. 
  770.  
  771.     * parser.c (parse_newer): Use lstat instead of stat.  Is this right?
  772.     (parse_xdev): Set stay_on_filesystem.
  773.  
  774.     * parser.c: Add dummy parse_nogroup, parse_nouser,
  775.     parse_prune, and parse_xdev; to be written later.
  776.     * pred.c: Add dummy pred_nogroup, pred_nouser, pred_prune.
  777.  
  778.     * find.c: Support System V directory library/headers.
  779.  
  780.     * find.c (process_path): Don't continue with a file that stat
  781.     fails on.
  782.  
  783.     * defs.h, parser.c, pred.c: Change 'u_long' and 'u_short' to
  784.     'unsigned long' and 'unsigned short'.
  785.     * find.c, defs.h: Remove 'convert_glob' variable.
  786.     * parser.c (parse_fullregex): Function removed.
  787.     (parse_name): Remove regular expression code.
  788.     (parse_type): Recognize sockets.
  789.     Add code to check for missing arguments to many parse_* functions.
  790.     * pred.c (pred_name): Use glob_match instead of regex.
  791.  
  792. Sun May 13 17:45:09 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
  793.  
  794.     * Replace fprintf, simple_error, and mem_error with error and
  795.     usage. 
  796.  
  797.     * Fix string header includes for USG.
  798.  
  799. Tue Mar 27 12:40:29 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
  800.  
  801.     * defs.h: Change some #defines to enums.
  802.  
  803. Sun Mar 25 22:08:58 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
  804.  
  805.     * find.c (main): Don't take basename of argv[0].
  806.  
  807.     * util.c (xmalloc): New function.
  808.     * find.c, parser.c, utils.c: Use xmalloc instead of malloc.
  809.  
  810.     * pred.c: Remove emulation of regex for BSD and use GNU
  811.     library version in regcmp.c instead.
  812.     * parser.c: Remove emulation of regcmp for BSD and use GNU
  813.     library version in regcmp.c instead.
  814.     * Makefile: Link with regex.o and regcmp.o.
  815.     Add a DISTFILES macro and dist target.
  816.  
  817.     * Indent source code.  Move RCS logs to this file.
  818.  
  819. Wed Mar 21 09:30:18 1990  David J. MacKenzie  (djm at pogo.ai.mit.edu)
  820.  
  821.     * xargs.c: Indent.  Comment and rename some global variables.
  822.     (main): Use getopt to parse options.  Open new global var
  823.     `tty_stream' to /dev/tty if querying requested.
  824.     (print_args): Read response from tty_stream, not stdin.
  825.     (xmalloc): New function.
  826.     Global: Use xmalloc instead of malloc.
  827.     (usage): Revise message.
  828.  
  829. 87/02/22  20:01:20  20:01:20  cire (Eric B. Decker)
  830.  
  831.     * pred.c: added guts to pred_size
  832.  
  833. 87/02/22  00:59:42  00:59:42  cire (Eric B. Decker)
  834.  
  835.     * pred.c: added guts to perm and permmask.
  836.  
  837. 87/02/21  23:02:21  23:02:21  cire (Eric B. Decker)
  838.  
  839.     * pred.c: made pred_name only look at the last component of
  840.     the path.
  841.  
  842. 87/02/21  22:26:47  22:26:47  cire (Eric B. Decker)
  843.  
  844.     * pred.c: added guts to name.  useds regex and regcmp to do
  845.     regular expression handling.
  846.  
  847. 87/02/21  00:17:21  00:17:21  cire (Eric B. Decker)
  848.  
  849.     * pred.c: added predicate newer
  850.  
  851. 87/02/20  11:40:07  11:40:07  cire (Eric B. Decker)
  852.  
  853.     * pred.c: added guts to pred_ok
  854.  
  855. 87/02/19  23:52:37  23:52:37  cire (Eric B. Decker)
  856.  
  857.     * pred.c: finished exec.
  858.  
  859. 87/02/22  20:01:09  20:01:09  cire (Eric B. Decker)
  860.  
  861.     * parser.c: added guts to parse_size
  862.  
  863. 87/02/22  00:59:16  00:59:16  cire (Eric B. Decker)
  864.  
  865.     * parser.c: added guts of perm and permmask.  added getoct
  866.     routine for perm and permmask
  867.  
  868. 87/02/21  23:32:50  23:32:50  cire (Eric B. Decker)
  869.  
  870.     * parser.c: added -fre, -fullregex predicate to turn off
  871.     globbing conversion
  872.  
  873. 87/02/21  23:01:01  23:01:01  cire (Eric B. Decker)
  874.  
  875.     * parser.c: reworked name so the regexpr pattern includes $ at
  876.     the end to force globbing to work correctly.  End of the
  877.     pattern refers to the end of the filename.
  878.  
  879. 87/02/21  22:25:34  22:25:34  cire (Eric B. Decker)
  880.  
  881.     * parser.c: added guts to name.  uses a conversion from
  882.     globbing to regexp format.  uses regex and regcmp to actually
  883.     to the comparison.
  884.  
  885. 87/02/21  00:17:11  00:17:11  cire (Eric B. Decker)
  886.  
  887.     * parser.c: added predicate newer
  888.  
  889. 87/02/20  11:39:35  11:39:35  cire (Eric B. Decker)
  890.  
  891.     * parser.c: added ok guts.  consolidated exec and ok to using
  892.     insert_exec_ok
  893.  
  894. 87/02/19  00:20:54  00:20:54  cire (Eric B. Decker)
  895.  
  896.     * parser.c: minor bug in -fulldays predicate parser.  It
  897.     should have set the flag full_days to true.
  898.  
  899. 87/02/22  00:58:32  00:58:32  cire (Eric B. Decker)
  900.  
  901.     * find.c: changed where we are setting perm_mask to -1.  need
  902.     to make sure that this happens before every apply_predicate.
  903.  
  904. 87/02/21  23:32:11  23:32:11  cire (Eric B. Decker)
  905.  
  906.     * find.c: added error checking for no paths.  better error
  907.     message if illegal ordering.
  908.  
  909. 87/02/21  22:19:58  22:19:58  cire (Eric B. Decker)
  910.  
  911.     * find.c: added global convert_glob
  912.  
  913. 87/02/22  20:00:12  20:00:12  cire (Eric B. Decker)
  914.  
  915.     * defs.h: added definition of BLKSIZE for size
  916.  
  917. 87/02/21  22:19:25  22:19:25  cire (Eric B. Decker)
  918.  
  919.     * defs.h: added global convert_glob for name
  920.  
  921. Local Variables:
  922. mode: indented-text
  923. left-margin: 8
  924. version-control: never
  925. End:
  926.