1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044 2045 2046 2047 2048 2049 2050 2051 2052 2053 2054 2055 2056 2057 2058 2059 2060 2061 2062 2063 2064 2065 2066 2067 2068 2069 2070 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 2089 2090 2091 2092
|
2001-06-09 Kevin Dalley <kevin@seti.org>
* ABOUT-NLS: updated from gettext-0.10.38.
* configure.in: add tr to ALL_LINGUAS.
* doc/Makefile.am (MOSTLYCLEANFILES): add find.cps, which is
created by dvips. This should be taken care of by automake, but
the code is commented out.
2001-06-05 Kevin Dalley <kevin@seti.org>
* locate/updatedb.sh: replace "whoami" with "id -u" when testing
for root.
2001-06-04 Kevin Dalley <kevin@seti.org>
* locate/testsuite/Makefile.am (DIST_SUBDIRS): remove second
instance of DIST_SUBDIRS.
* locate/Makefile.am (install-data-hook): changed install target
to install-data-hook, which still installs other files.
* doc/Makefile.am (MOSTLYCLEANFILES): added find.cps, which should
probably be handled by automake.
* doc/mdate-sh: removed file in doc directory. It now exists only
in top_srcdir, but this changed required a patch to automake.
2001-05-20 Kevin Dalley <kevin@seti.org>
* Version 4.1.7
* lib/Makefile.am (EXTRA_DIST): add strcasecmp.c
* find/testsuite/Makefile.am (EXTRA_DIST): new tests:
find.gnu/name-opt.exp find.gnu/perm.exp find.gnu/perm.xo
find.gnu/prune-default-print.exp find.gnu/prune-default-print.xo
* configure.in: update to 4.1.7
* config.sub, config.guess: upgraded to recent versions of
config.sub and config.guess.
* locate/updatedb.sh: Add space to "#! /bin/sh"
* configure.in: Add id to ALL_LINGUAS
* lib/Makefile.am (EXTRA_DIST): getline.[ch] added
(libfind_a_SOURCES): getline.[ch] removed since getline.c is not
always needed.
2001-05-20 Lionel CONS <lionel.cons@cern.ch>
* find/find.c: Fixed security holes. 1. There is a race
condition between the lstat() to detect a symbolic link and the
actual chdir(). 2. An attacker can move directories while find
is _inside_ so that chdir(..) goes out of the intended file tree.
* lib/modetype.h: support for Solaris door files is added.
* lib/filemode.c: S_ISDOOR is undef'ed if STAT_MACROS_BROKEN
* find/pred.c (pred_type): -D option (for Solaris door files) is
added.
* find/parser.c (insert_type): -D option (for Solaris door files)
is added.
* find/find.1: -D option (for Solaris door files) is documented
* doc/find.texi (Type): -D option (for Solaris door files) is
documented
2001-05-02 Kevin Dalley <kevin@seti.org>
* configure.in: Change AC_CHECK_MEMBERS to conform to new
autoconf. Add Danish.
2001-01-20 Kevin Dalley <kevin@seti.org>
* doc/find.texi (Adding Tests): Place space in "#! /bin/sh".
* find/testsuite/find.gnu/prune-default-print.xo,
find/testsuite/find.gnu/prune-default-print.exp: test for "find
. -prune" which passes after changes. Also see name-opt.exp.
* find/util.c (get_new_pred):
* find/tree.c (set_new_parent):
* find/parser.c (various parse functions):
* find/find.c (main):
(default_prints): new function
* find/defs.h (struct predicate): added no_default_print
side_effects are no separated from no_default_print. predicates
which cause side effects should not be reordered (optimized).
predicates which cause printing should have printing turned off.
Printing statements also cause side effects.
2000-10-29 Bruno Haible <haible@ilog.fr>
* locate/code.c (main), doc/find.texi: improve handling of
non-ASCII characters used old format.
2000-10-21 Paul Eggert <eggert@twinsun.com>
If open + fchdir fails, fall back on xgetcwd + chdir.
The old code tested for this at compile-time,
but SunOS 4.1.4 fchdir can fail at run-time.
* find/defs.h (fchdir): Define to -1 if not available.
* find/defs.h (starting_dir, starting_desc):
Always declare. starting_dir now points to const.
* find/find.c (starting_dir, starting_desc): Likewise.
* find/find.c (starting_dir):
Now "." if starting_desc is nonnegative, for benefit of diagnostics.
(main, process_top_path, process_dir):
If open + fchdir fails, fall back on xgetcwd + chdir.
* find/pred.c (launch): Likewise.
2000-10-20 Kevin Dalley <kevin@seti.org>
* xargs/xargs.c, locate/updatedb.sh, locate/locate.c (usage),
find/parser.c (parse_help): add bug reporting address to help
2000-10-13 Kevin Dalley <kevin@seti.org>
* depcomp, lib/depcomp: depcomp moved from lib to .
2000-10-11 Kevin Dalley <kevind@rahul.net>
* Version 4.1.6
* locate/testsuite/config/unix.exp: set PRUNEFS to "" for the
testsuite.
2000-10-10 Bruno Haible <haible@ilog.fr>
* lib/Makefile.am (libfind_a_SOURCES): added yesno.c
* lib/yesno.c, lib/rpmatch.c: new files.
* find/pred.c: use function yesno().
2000-10-10 Kevin Dalley <kevind@rahul.net>
* locate/testsuite/Makefile.am: Added missing \ at end of
EXTRA_DIST lines.
* locate/testsuite/locate.gnu/ignore_case3.xo,
locate/testsuite/locate.gnu/ignore_case3.exp,
locate/testsuite/locate.gnu/ignore_case2.exp,
locate/testsuite/locate.gnu/ignore_case1.xo,
locate/testsuite/locate.gnu/ignore_case1.exp: place locatedb
inside tmp directory, add subdir directory under tmp.
* locate/testsuite/config/unix.exp: clean up tmp after test is
finished.
2000-10-10 Kevin Dalley <kevind@rahul.net>
* locate/testsuite/config/unix.exp (Repository):
2000-10-09 Kevin Dalley <kevind@rahul.net>
* lib/fnmatch.c, lib/fnmatch.h: reverted to older version of
fnmatch which works with Solaris.
* locate/testsuite/config/unix.exp: dejagnu unix.exp
* xargs/testsuite/config/unix.exp: remove temporary file
* xargs/xargs.c: spelling correction
* m4/prereq.m4: updated and changed some macros
* m4/jm-macros.m4: replaced jm_FUNC_FNMATCH with
kd_FUNC_FNMATCH_CASE_REPL
* m4/timespec.m4, m4/strerror_r.m4, m4/mbstate_t.m4,
m4/largefile.m4, m4/gettext.m4, m4/fnmatchcase.m4, m4/d-type.m4,
m4/d-ino.m4, m4/c-bs-a.m4: new m4 macros.
* m4/Makefile.am: add fnmatchcase.m4 and mbstate_t.m4
* locate/testsuite/locate.gnu/ignore_case3.xo,
locate/testsuite/locate.gnu/ignore_case3.exp,
locate/testsuite/locate.gnu/ignore_case2.xo,
locate/testsuite/locate.gnu/ignore_case2.exp,
locate/testsuite/locate.gnu/ignore_case1.xo,
locate/testsuite/locate.gnu/ignore_case1.exp,
locate/testsuite/config/unix.exp: tests related to "--ignore-case"
option.
* locate/testsuite/locate.gnu: testsuite directory
* locate/testsuite/Makefile.am (Repository):
* locate/testsuite: add directory for locate testsuite
* po/findutils.pot: updated file
* po/sv.po, po/ru.po, po/pt_BR.po, po/pl.po, po/nl.po, po/ko.po,
po/it.po, po/gl.po, po/fr.po, po/et.po, po/es.po, po/de.po:
updated various po files.
* locate/updatedb.sh: export TMPDIR, which is used by child
processes.
* locate/locate.1, locate/locate.c: add "--ignore-case" option.
* locate/Makefile.am: add testsuite subdirectory
* find/testsuite/find.gnu/perm.xo,
find/testsuite/find.gnu/perm.exp,
find/testsuite/find.gnu/name-opt.xo,
find/testsuite/find.gnu/name-opt.exp: added test suites
* configure.in: add locate/testsuite/Makefile
* doc/find.info*: removed from repository
* doc/find.texi: add documentation for "-i" option.
* aclocal.m4: removed from repository, as it is generated.
* find/pred.c: fixes problem with "find -perm -0100".
* lib/lstat.c, lib/stat.c: removed from repository. These files
are generated from lib/xstat.in.
2000-08-24 Kevin Dalley <kevind@rahul.net>
* doc/find.texi (Invoking xargs): changed @var{-s} to @samp{-s}.
2000-05-13 Kevin Dalley <kevind@rahul.net>
* find/tree.c (opt_expr): move iname and ipath to the front of the
list of arguments.
* doc/find.texi (Directories): changed wording for "-prune".
* find/parser.c (parse_prune): set side_effects to true, to
prevent prune from being moved in opt_expr.
2000-04-12 Kevin Dalley <kevind@rahul.net>
* doc/find.texi, doc/permi.texi: fix spellings, add LocalWords.
* lib/Makefile.am: put getline.c back into libfind_a_SOURCES,
since getstr is needed.
* Version 4.1.5
* po/POTFILES.in: updated list of files, updated po files.
2000-04-02 Paul Eggert <eggert@twinsun.com>
Add support for large files, and port to Solaris 8 and earlier
versions.
* lib/human.c (getenv): Depend on NEED_GETENV_DECL, not
HAVE_DECL_GETENV.
* lib/strftime.c (my_strftime): Make sure we call the system
strftime, not ourselves, when invoking the underlying strftime.
* m4/check-decl.m4 (jm_CHECK_DECLS): Remove memchr, nanosleep.
* m4/jm-macros.m4 (jm_MACROS): Don't check for utime.h. Do not
require jm_BISON, jm_CHECK_TYPE_STRUCT_UTIMBUF, jm_FUNC_LCHOWN,
jm_FUNC_CHOWN, jm_FUNC_NANOSLEEP, jm_FUNC_GROUP_MEMBER,
jm_FUNC_PUTENV, jm_FUNC_GETGROUPS, AM_FUNC_GETLOADAVG,
jm_SYS_PROC_UPTIME, jm_FUNC_FTRUNCATE, jm_FUNC_UTIME. Do not
replace strcasecmp, dup2, gethostname, getusershell, stime,
strcspn, strpbrk, euidaccess, mkdir, rmdir, rpmatch, strndup,
strverscmp, memchr, memmove. Do not check for declaration of
lchown. Remove invocations of AM_FUNC_OBSTACK, AM_FUNC_STRTOD,
POW_LIBM, jm_LANGINFO_CODESET, jm_ICONV. Remove df tests.
(jm_CHECK_ALL_TYPES): Include <sys/stat.h> when checking for
struct stat.st_blksize.
* m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set environment variable
in shell rather than using putenv, which isn't portable.
* COPYING, lib/alloca.c, lib/dirname.c, lib/error.c,
lib/savedir.c, lib/strstr.c, m4/check-decl.m4, m4/d-ino.m4,
m4/d-type.m4, m4/getline.m4, m4/jm-glibc-io.m4, m4/jm-macros.m4,
m4/jm-mktime.m4, m4/ls-mntd-fs.m4, m4/memcmp.m4, m4/prereq.m4,
m4/readdir.m4, m4/regex.m4, m4/strftime.m4, m4/uintmax_t.m4: Sync
to latest version from sh-utils-2.0g.
* config.guess, config.sub, lib/argmatch.c, lib/argmatch.h,
lib/human.c, lib/human.h, lib/memcpy.c, lib/quotearg.c,
lib/quotearg.h, lib/strtoull.c, lib/strtoumax.c,
lib/xstrtoumax.c, m4/c-bs-a.m4, m4/gettext.m4,
m4/largefile.m4, m4/lcmessage.m4, m4/link-follow.m4,
m4/progtest.m4, m4/strerror_r.m4, m4/timespec.m4,
m4/xstrtoumax.m4: New files, taken from sh-utils-2.0g.
* lib/ansi2knr.1, lib/ansi2knr.c, lib/basename.c, lib/getopt.h,
lib/fnmatch.c, lib/fnmatch.h, lib/modechange.c: Sync to latest
unreleased version of GNU tar (between 1.13.17 and 1.13.18).
* lib/basename.h, lib/waitpid.c: New files, taken from same
version of GNU tar.
* lib/regex.c, lib/regex.h: Sync to GNU grep 2.4.2.
* lib/posix/Makefile.am, lib/posix/regex.h: New files, taken from
GNU grep 2.4.2.
* lib/strftime.c: Sync to textutils 2.0e.
* acconfig.h, depcomp, lib/strcasecmp.c, m4/check-type.m4,
m4/const.m4, m4/decl.m4, m4/lfs.m4, m4/mktime.m4, m4/perl.m4,
m4/putenv.m4, m4/uptime.m4, m4/utimbuf.m4, m4/utime.m4,
m4/utimes.m4: Remove these files; no longer needed.
* configure.in (AC_CANONICAL_HOST, AC_SYS_LARGEFILE,
jm_AC_TYPE_UINTMAX_T): Add.
(CACHE_IDS, FSTYPE_STATVFS, FSTYPE_USG_STATFS, FSTYPE_AIX_STATFS,
FSTYPE_MNTENT, FSTYPE_STATFS, FSTYPE_GETMNT): Add comment, so that
we don't need acconfig.h.
(AC_CHECK_TYPE): Add ssize_t.
(AC_REPLACE_FUNCS): Add waitpid.
(AC_CHECK_FUNCS): Remove basename.
(AC_FUNC_MKTIME): Remove.
(LIBOBJS): Add no-ops to work around automake 1.4 bug.
(AC_OUTPUT): Add lib/posix/Makefile.
* find/defs.h: Include <config.h>, <sys/types.h>, <sys/stat.h>,
<stdio.h>, <limits.h>, <inttypes.h>. All includers changed to not
include these files, and to include "defs.h" first (since config.h
must be included first).
(CHAR_BIT, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, MOD_WXUSR,
MODE_R, MODE_RW, MODE_RWX, MODE_ALL): New macros.
(enum permissions_type): New enum.
(struct long_val.negative): New member.
(struct long_val.l_val): Now uintmax_t, not unsigned long.
(struct size_val.size): Likewise.
(struct perm_val): New type.
(struct predicate.perm): Now struct perm_val, not unsigned long.
(struct predicate.type): Now mode_t, not unsigned long.
(list_file): New parameters current_time, output_block_size.
All callers changed.
(savedir, basename): Remove decls.
(output_block_size, start_time): New extern vars.
* find/find.c: Include <human.h>, <savedir.h>.
(output_block_size, start_time): New vars.
(main): Initialize them. No need to check for negative st_size,
since savedir now does it for us.
* find/fstype.c: Include "dirname.h".
(xatoi): Remove.
(filesystem_type_uncached): Use xstrtoumax instead of xatoi.
* find/parser.c: Include "xstrtol.h".
(get_num_days, get_num, parse_amin, parse_cmin, parse_mmin,
parse_size, parse_used, insert_time, insert_num): Compute using
uintmax_t, not unsigned long.
(parse_amin, parse_cmin, parse_mmin, parse_used, insert_time):
Keep track of whether time was negative before converting it to an
unsigned type.
(parse_daystart): Don't assume that localtime succeeds; e.g. it
can fail with 64-bit time_t and 32-bit tm_year.
(parse_perm, insert_type): Compute using mode_t, not unsigned
long.
(insert_type): Use symbolic constants like MODE_ALL instead of
traditional ones like 07777. Set new kind member to indicate
permissions type, instead of using unportable magic numbers.
(make_segment): We will use human_readable to convert most numeric
values, so simplify the cases.
(get_num_days): Write in terms of get_num, to avoid duplicated
code.
(insert_time, insert_num): When debugging, convert large values to
uintmax_t and output with %ju.
(get_num): Use xstrtoumax to do the real work.
* find/pred.c: Include "basename.h", "human.h".
(DEV_BSIZE, ST_BLKSIZE, ST_NBLOCKSIZE): New macros, taken from
fileutils.
(ST_NBLOCKS): Replace with fileutils defn.
(MAX): New macro.
(ctime_format): New function.
(pred_fprintf, format_date): Use human_readable to output large
numbers portably.
(pred_fprintf): Use ctime_format to output ctime-style dates. Use
base_name to compute the base name of a path. With %m, output the
mode portably using traditional numbers, even if the host uses
some other numbering scheme.
(pred_iname, pred_name): basename -> base_name.
(pred_perm): Use new kind member to deduce permissions type,
instead of relying on magic numbers.
(pred_size): Compute using uintmax_t, not unsigned long. Avoid
overflow if file size is near the maximum.
(pred_type): Compute using mode_t, not unsigned long.
(launch): Use waitpid, not wait. Check for EINTR.
(format_date): Don't assume that localtime succeeds.
* find/util.c (basename): Remove; we now use base_name.
* lib/Makefile.am (SUBDIRS): New macro.
(libfind_a_SOURCES): Add argmatch.h, argmatch.c, basename.h,
basename.c, human.c, human.h, quotearg.c, quotearg.h, xstrtoumax.c.
Remove error.h, error.c, getline.c.
(EXTRA_DIST): Add mktime.c, regex.c.
* lib/listfile.c: Include "human.h".
(alloca): Declare, or include appropriate files to declare.
(DEV_BSIZE, ST_NBLKSIZE, ST_NBLOCKS, ST_NBLOCKSIZE): New macros.
(convert_blocks): Remove.
(list_file): New current_time and output_block_size args.
Revamp quite a bit, to handle large numbers correctly
and to match GNU ls behavior more closely.
* m4/Makefile.am (EXTRA_DIST): Add c-bs-a.m4, gettext.m4,
largefile.m4, lcmessage.m4, link-follow.m4, progtest.m4,
strerror_r.m4, xstrtoumax.m4. Remove check-type.m4, const.m4,
decl.m4, lfs.m4, mktime.m4, perl.m4, putenv.m4, timespec.m4,
uptime.m4, utimbuf.m4, utime.m4, utimes.m4.
* xargs/xargs.c (wait_for_proc): Retry wait if it fails with
errno == EINTR.
2000-04-05 Kevin Dalley <kevind@rahul.net>
* xargs/Makefile.am: add ansi2knr
* xargs/xargs.c: add macros PARAMS rather than P_. Add
prototypes.
* po/POTFILES: new file listing all POFILES.
* m4/gl.po, m4/et.po: new files
* m4/Makefile.am.in: updated file
* m4: update directory
* locate/Makefile.am: create updatedb from updatedb.sh
* locate/updatedb.sh, locate/updatedb.in: removed file. Replaced
by updatedb.sh
* locate/frcode.c, locate/code.c, locate/bigram.c: add macros
PARAMS rather than P_. Add prototypes.
* lib/xstat.in: new file
* lib/Makefile.am: update to latest versions of library files.
* find/testsuite/Makefile.am: add CLEANFILES
* find/util.c: remove definition of basename
* find/util.c, find/tree.c, find/pred.c, find/parser.c,
find/fstype.c, find/find.c, find/defs.h: add macros PARAMS rather
than P_, for consistency, change to prototypes
* find/Makefile.am: Add prototypes and ansi2knr
* configure.in: add Galition and Estonian languages.
Miscellaneous other fixes.
2000-03-11 Kevin Dalley <kevind@rahul.net>
* lib/basename.c: Add file from libit.
* lib/Makefile.am (libfind_a_SOURCES): add basename.c since it is
no longer replaceable.
* find/util.c: Remove definition of basename, which is now in
lib/basename.c (as base_name).
* find/pred.c: Use base_name, not basename.
* find/defs.h: Likewise.
* configure.in : Don't replace basename. Now we use only
base_name.
2000-02-26 Kevin Dalley <kevind@rahul.net>
* Version 4.1.4
* lib/strtoul.c: added to distribution
* configure.in: added strtoul to AC_REPLACE_FUNCS
* configure.in: added jm_CHECK_ALL_TYPE
2000-02-23 Kevin Dalley <kevind@rahul.net>
* po/ChangeLog: removed, merged with top-level ChangeLog.
* po/de.po: new version of German file.
* po/gl.po, po/et.po: new languages, Estonian and Galician.
* locate/updatedb.sh (PRUNEFS): enclose paths in quotes
2000-02-17 Kevin Dalley <kevind@rahul.net>
* po/it.po: new version of Italian file.
* locate/updatedb.sh (prunefs_exp): have sed statement use '*'
rather than the often unsupported '+'.
2000-02-13 Kevin Dalley <kevind@rahul.net>
* configure.in: removed AC_ARG_PROGRAM, which is already in
AM_INIT_AUTOMAKE.
* locate/Makefile.am (updatedb), locate/updatedb.sh: add
transforms of find, frcode, bigram, and code back into
updatedb.sh, which were accidentally removed.
2000-02-12 Kevin Dalley <kevind@rahul.net>
* lib/wait.h: updated address.
2000-01-26 Kevin Dalley <kevind@rahul.net>
* Version 4.1.3
* acconfig.h: added internationalization.
* intl/*: copied from tar-1.13.17.
* locate/Makefile.am, locate/locate.c, locate/code.c:
internationalized file.
* locate/frcode.c, locate/bigram.c: include headers from ../lib
directory.
* xargs/Makefile.am, xargs/xargs.c: internationalized directory.
2000-01-26 Kevin Dalley <kevind@rahul.net>
* POTFILES.in: added list of files with translatable strings.
* de.po, es.po, fr.po, it.po, ko.po, nl.po, pl.po, pt_BR.po,
ru.po, sv.po: New, slightly out of date, files imported from the
Translation Project: http://www.iro.umontreal.ca/contrib/po/HTML/,
German, Spanish, French, Italian, Korean, Dutch, Polish, Brazilian
Portuguese.
2000-01-24 Kevin Dalley <kevind@rahul.net>
* lib/xmalloc.c, lib/regex.c, lib/getopt.c: internationalization
works with current version of gettext.
* lib/getline.h : added declaration of getstr.
* lib/Makefile.am (libfind_a_SOURCES): added getline.[ch] to
standard compilation. Added internationalization.
* find/Makefile.am (INCLUDES): corrected -I options for building
in other directories.
(LDADD): changes for internationalization.
* configure.in (ALL_LINGUAS): added internationalization.
getline.c is always compiled and linked, because of getstr.
AM_GNU_GETTEXT
* Makefile.am:
(DISTCLEANFILES): added intl/libintl.h
(AUTOMAKE_OPTIONS): added gnits to AUTOMAKE_OPTIONS
(SUBDIRS): added intl and po
* acconfig.h: added internationalization values
* THANKS: added thanks file for gnits compatibility.
2000-01-22 Kevin Dalley <kevind@rahul.net>
* added intl directory.
* Added internationalization, only with slightly out of date po
files for many locales.
2000-01-18 Kevin Dalley <kevind@rahul.net>
* Version 4.1.2
* locate/Makefile.am: remove creation of updatedb, since it is now
made by configure
* configure.in: updatedb is now created by configure.
* xargs/Makefile.am: added testsuite to xargs directory
* locate/updatedb.in: updatedb is now created by configure
* locate/frcode.c, locate/code.c, locate/bigram.c: change return
from main to int. Replace getstr with getline, where possible.
* locate/Makefile.am: place frcode, code, bigram in
libexec_PROGRAMS
* lib/xstrdup.c, lib/xmalloc.c, lib/xgetcwd.c, lib/xalloc.h,
lib/strtol.c, lib/strstr.c, lib/strftime.c, lib/strdup.c,
lib/stpcpy.c, lib/stat.c, lib/savedir.h, lib/savedir.c,
lib/regex.h, lib/regex.c, lib/realloc.c, lib/pathmax.h,
lib/modechange.h, lib/modechange.c, lib/mktime.c, lib/memset.c,
lib/memcmp.c, lib/malloc.c, lib/lstat.c, lib/idcache.c,
lib/getopt1.c, lib/getopt.c, lib/getopt.h, lib/getline.c,
lib/getline.h, lib/fnmatch.c, lib/fnmatch.h, lib/filemode.c,
lib/filemode.h, lib/fileblocks.c, lib/error.c, lib/error.h,
lib/dirname.c, lib/alloca.c: updated to newer version of file from
fileutils.
* find/version.c: version number is now automatically generated by
configure.
* find/fstype.c (filesystem_type_uncached): fixes bug described as
follows: When 'find' looks for a fstype, it parses the /etc/mtab
until it finds the good line. But, if there is, before the good
line, a line whose mountpoint is unreachable, it fails.
* doc/texinfo.tex: updated to newer version
* doc/find.texi: added version.texi, fixed a few documentation bugs.
* configure.in: new m4 features.
* Makefile.am: moved testsuite to below corresponding directories
find and xargs.
* acconfig.h: updated to match new m4 files.
* m4: added m4 directory, largely borrowed from Jim Meyering's
fileutils.
2000-01-17 Kevin Dalley <kevind@rahul.net>
* doc/find.texi (Multiple Files): placed missing xargs in examples
* find/testsuite/find.gnu/depth.exp: added find tests to test
"-depth" bug.
* doc/find.texi: include version.texi for automatic determination
of version number, update bug report email address to
bug-findutils@gnu.org.
(Combining Primaries With Operators): add indices for " ,", "()",
"-a", "-o", etc.
2000-01-17 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* find/tree.c (opt_expr): Never rearrange the arguments of the
comma operator, since it is not commutative. Remove useless
assignment.2
2000-01-17 Jonathan R. Ferro <jferro@corwin.ece.cmu.edu>
* find/find.c (process_path): fix problem with "-depth" which is
tested in depth.exp test.
1999-08-15 Kevin Dalley <Kevin Dalley <kevin@seti.org>>
* find/fstype.c (filesystem_type_uncached): a stat failure with
EACCESS will ignore this file system keep on looking. Patch
suggested by Vincent Danjean <vdanjean@ens-lyon.fr>.
1999-08-15 Mark Kettenis <kettenis@gnu.org>
* xargs/xargs.c (LONG_MAX): Define if necessary.
(main): If ARG_MAX is -1 (that is sysconf
(_SC_ARG_MAX) returns -1) the system does not impose a limit. In
that case, use LONG_MAX as the limit.
1999-08-15 Kevin Dalley <Kevin Dalley <kevind@rahul.net>
* find/version.c: version string is now set by config.h
1999-08-08 Kevin Dalley <kevin@seti.org>
* Version 4.1.1
* README-alpha: added alpha README file
* find/defs.h: move lstat declarations into defs.h
* xargs/Makefile.am, testsuite/Makefile.am, locate/Makefile.am,
lib/Makefile.am, find/Makefile.am, doc/Makefile.am, configure.in,
Makefile.am: update for automake-1.4
1999-08-02 Kevin Dalley <kevind@rahul.net>
* AUTHORS: added file listing AUTHORS
* lib/Makefile.am: modified code for EXTRA sources
1999-01-30 Kevin Dalley <kevind@rahul.net>
* added const to declaration of basename, which should satisfy
Linux as well as Hurd (fixes bug #31325).
1998-12-04 Kevin Dalley <kevind@rahul.net>
* lib/nextelem.c: removed declaration of strdup and free, which
meets GNU coding standards and allows compilation on more
platforms.
* find.texi: corrected explanation of -amin option which described
hours instead of minutes
1998-09-26 Kevin Dalley <kevind@rahul.net>
* lib/getline.c: fix getstr so that it correctly handles long file
paths
1998-09-20 Kevin Dalley <kevind@rahul.net>
* removed more function declarations to meet GNU coding standards
1998-08-30 Kevin Dalley <kevind@rahul.net>
* lib/nextelem.c: removed declaration of strdup and free, which
meets GNU coding standards and allow compilation on sparc
* corrected explanation of -amin option which described hours
instead of minutes
1998-02-27 Kevin Dalley <kevind@rahul.net>
* locate/locate.c: add --existing option to locate, which only
prints the names of files which still exist
1998-02-08 Kevin Dalley <kevind@rahul.net>
* locate/locate.c: corrected get_short so that it correctly
returns negative numbers.
* remove declarations of various string functions. Removing the
declarations almost matches the GNU Coding Standards.
1997-03-03 Kevin Dalley <kevind@rahul.net>
* xargs/xargs.c: xargs fixed to prevent occasional core dumping.
1997-01-11 Kevin Dalley <kevind@rahul.net>
* locate/updatedb.sh: add --localuser option to updatedb, which
allows find to be run as nobody, while allowing database file to
be created as root, change suggested by
<Bernd_Eckenfels@Wittumstrasse13.76646Bruchsal.de>
1996-12-28 Kevin Dalley <kevind@rahul.net>
* added PRUNEFS as variable in updatedb and --prunefs as option to
updatedb
1996-05-27 Kevin Dalley <kevind@rahul.net>
* updatedb.sh: when NETPATHS is used, only su to NETUSER if whoami
is root
1996-04-27 Kevin Dalley <kevind@rahul.net>
* lib/getline.c (getstr): verify that nchars_avail is *really*
greater than 0; set *n to a large enough number, stops some core
dumping
Thu Nov 3 09:23:33 1994 David J. MacKenzie <djm@duality.gnu.ai.mit.edu>
* Version 4.1.
* locate/Makefile.am: Move updatedb from LIBSCRIPTS to SCRIPTS.
* Makefile.am (distname): Change distribution name from find to
findutils.
* testsuite/config/unix.exp: Don't abuse xfail; simulate it correctly.
* locate/Makefile.am (CLEANFILES): Fix typo.
Wed Nov 2 15:11:52 1994 David J. MacKenzie <djm@duality.gnu.ai.mit.edu>
* The big 4 0.
* lib/listfile.c find/defs.h (list_file): Take a stream arg.
* find/pred.c (pred_ls): pass it.
* find/parser.c pred.c defs.h (parse_fls, pred_fls): New functions.
Tue Oct 25 16:09:04 1994 David J. MacKenzie <djm@duality.gnu.ai.mit.edu>
* find/pred.c (pred_fprintf): Flush output after \c. From Chapman
Flack.
* find/parser.c (insert_fprintf): Warn about unrecognized \ and %
sequences.
Tue Oct 18 00:03:10 1994 David J. MacKenzie <djm@duality.gnu.ai.mit.edu>
* find/defs.h parser.c pred.c tree.c util.c: Globally change
"victim" to "primary".
* find/parser.c (insert_fprintf): For 'c' format, don't lose the
need_stat information. From Chapman Flack.
* doc/find.texi perm.texi: New files.
* configure.in: Configure the doc directory.
* find/pred.c (pred_regex): Check that the regex matched the whole
file name.
Wed Oct 12 17:13:47 1994 David J. MacKenzie (djm@duality.gnu.ai.mit.edu)
* find/find.c (main): Tell what the invalid arg is.
From Kaveh Ghazi.
Fri Oct 7 12:33:24 1994 David MacKenzie <djm@geech.gnu.ai.mit.edu>
* find/parser.c: Add -mount as an alias for -xdev.
From Klaus.Steinberger@physik.uni-muenchen.de (Klaus Steinberger).
* lib/modechange.c: Make umask_value unsigned short.
* xargs/xargs.c: Use symbolic constants in longopts.
From Chapman Flack.
Wed Oct 5 11:23:09 1994 David MacKenzie <djm@geech.gnu.ai.mit.edu>
* xargs/xargs.c (main, read_line, read_string, do_exec): Pass
along the lengths of the args.
(main): Calculate length of replace_pat.
(push_arg, do_insert): Use those lengths instead of calculating
them.
Tue Oct 4 10:02:05 1994 David MacKenzie <djm@churchy.gnu.ai.mit.edu>
* locate/updatedb.sh Makefile.in: Add substitutions to get
the transformed program names.
* xargs/xargs.c: Put back the global variables for now.
Rename some variables. Increase default args_per_exec.
Use boolean where applicable.
(main): Reduce default arg_max by 2048 for POSIX.2.
(read_string): Don't check EOF string.
(read_line, read_string): Take initial args size into account.
Sat Oct 1 17:43:13 1994 David MacKenzie <djm@geech.gnu.ai.mit.edu>
* find/pred.c (launch): Use pid_t.
* xargs/xargs.c (EOF_STR): Define and use.
[__STDC__]: Declare xrealloc and xmalloc using void *.
* find/defs.h: Likewise.
* find/defs.h: Only declare stpcpy if !HAVE_STPCPY.
* xargs/xargs.c: Replace most global variables with structure
pointers passed as arguments. Use pid_t.
* lib/wait.h: Include sys/wait.h if HAVE_SYS_WAIT_H.
* configure.in: Call AC_TYPE_MODE_T and AC_HEADER_SYS_WAIT.
* xargs/xargs.c: Improve paging performance and memory
fragmentation by building command arguments in a pre-allocated
buffer and re-implementing the child pid list as an expandable
array. From tsi@gpu.srv.ualberta.ca (Marc Aurele La France).
Thu Sep 29 11:38:07 1994 David J. MacKenzie (djm@geech.gnu.ai.mit.edu)
* xargs/xargs.c [__STDC__]: Prototype declarations.
Wed Sep 28 11:25:53 1994 David J. MacKenzie (djm@duality.gnu.ai.mit.edu)
* find/fstype.c [AFS, __STDC__]: Fix definition of _VICEIOCTL.
Tue Sep 27 08:14:27 1994 David MacKenzie <djm@churchy.gnu.ai.mit.edu>
* find/fstype.c (fstype_to_string): Add more cases. Use
INITMOUNTNAMES if defined.
* find/defs.h: Change boolean typedef from char to int.
* configure.in: Check for mktime.
Tue Sep 27 01:20:28 1994 Kaveh R. Ghazi (ghazi@noc.rutgers.edu)
* configure.in: Add AC_HEADER_STAT.
* lib/listfile.c, lib/modetype.h: Add STAT_MACROS_BROKEN.
* find/pred.c: Move the inclusion of defs.h ahead of the first
test of _POSIX_VERSION.
* lib/xgetcwd.c: Remove _POSIX_VERSION, rely only on HAVE_GETCWD.
Mon Sep 26 16:43:01 1994 David MacKenzie <djm@geech.gnu.ai.mit.edu>
* configure.in: Add AC_CONFIG_HEADER.
* find/*.c locate/*.c xargs/*.c: Include config.h.
* locate/updatedb.sh: Add --version; --old -> --old-format.
Sun Sep 25 23:43:37 1994 David MacKenzie <djm@geech.gnu.ai.mit.edu>
* find/* [__STDC__]: Prototype declarations.
* locate/updatedb.sh: Account for renaming code and frcode.
* find/find.c (process_path): Store dev and ino of directories in
current branch to avoid symlink loops. From DJ Delorie
<dj@ctron.com>.
(process_dir): If following symlinks, don't cd to ..; instead,
cd to the starting directory and then to the parent directory.
(main) [HAVE_FCHDIR]: Save the dev, ino of the starting directory.
(process_top_path) [HAVE_FCHDIR]: Use it.
* find/pred.c (launch) [HAVE_FCHDIR]: Likewise.
* defs.h [HAVE_FCHDIR]: Declare starting_desc instead of starting_dir.
* configure.in: Check for dev_t, ino_t, fchdir, fcntl.h.
Fri Sep 23 11:55:38 1994 David MacKenzie <djm@geech.gnu.ai.mit.edu>
* lib/listfile.c: Change #ifdef S_IFLNK to #ifdef S_ISLNK.
From Andreas Luik <luik@isa.de>.
Thu Sep 22 11:42:40 1994 David MacKenzie <djm@geech.gnu.ai.mit.edu>
* locate/locate.c (last_literal_end): Dynamically allocate enough
memory for the subpattern.
Wed Sep 21 06:12:56 1994 David MacKenzie <djm@geech.gnu.ai.mit.edu>
* locate/locate.c (locate): Warn if database is >8 days old.
From Ian Lance Taylor.
* xargs/xargs.c (do_exec), find/pred.c (launch): Set SIGCHLD to
default. From tsi@gpu.srv.ualberta.ca (Marc Aurele La France).
* find/find.c pred.c util.c lib/listfile.c: Remove fflush(stdout)
calls before error. error does it, and doesn't trash errno.
From tsi@gpu.srv.ualberta.ca (Marc Aurele La France).
* find/fstype.c (filesystem_type_uncached): Don't trust mtab dev
number on HPUX. From Andreas Luik <luik@isa.de>.
(filesystem_type_uncached): Don't cache unknown file system
types. From casper@fwi.uva.nl (Casper Dik).
* locate/updatedb.sh: Collect results in temp file and rename it
atomically. From Andreas Luik <luik@isa.de>.
* xargs/xargs.c (parse_num): Print a long using %ld. From Jim
Meyering.
* find/defs.h find.c parser.c pred.c util.c, lib/nextelem.c:
Emulate strchr and strrchr with index and rindex, not vice versa.
Remove man directory; move man pages to the directories of the
programs they document.
* locate/frcode.c: Renamed from code.c.
* locate/frcode.c (put_short): Renamed from puthalfword.
* locate/locate.c (get_short): Renamed from gethalfword.
(last_literal_end): Renamed from patprep.
(locate): Recognize old-format databases too.
* locate/locatedb.h: Add defines for old-format databases.
* locate/bigram.c locate/code.c: Put back programs to create
old-format databases.
* locate/updatedb.sh: Take --old option to use them.
Tue Sep 20 15:41:11 1994 David MacKenzie <djm@geech.gnu.ai.mit.edu>
* configure.in: Update for Autoconf v2.
* find/pred.c lib/savedir.c: Use new symbols for dir header.
* locate/updatedb.sh: Add --help option.
Sun Feb 13 11:21:58 1994 Jim Meyering (meyering@comco.com)
* man/Makefile.in [man1ext, man5ext]: Set man5ext (not man1ext) to 5.
Sun Aug 1 22:30:55 1993 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu)
* bigram.c: File removed.
* getline.c, memcmp.c, locatedb.h, updatedb.1, locatedb.5: New files.
* updatedb.sh: Take command line options.
Don't do bigram compression.
* code.c, locate.c: Don't do bigram compression.
Write and read counts in network byte order.
Handle arbitrarily long paths.
Use a magic number at the start of the databases.
Thu Jul 29 20:44:53 1993 David J. MacKenzie (djm@wookumz.gnu.ai.mit.edu)
* Makefile.in (config.status): Run config.status --recheck, not
configure, to get the right args passed.
Thu Jul 22 12:53:12 1993 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu)
* listfile.c (list_file): Print inode as a long.
Wed Jul 14 14:14:45 1993 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu)
* fstype.c [STDC_HEADERS]: Include stdlib.h.
* Move unistd.h include from parser.c and pred.c to defs.h.
Wed Jun 30 14:14:47 1993 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu)
* updatedb.sh: Construct PRUNEREGEX from PRUNEPATHS with sed.
Prune /afs. Change NFSUSER to NETUSER and NFSPATHS to NETPATHS.
Tue Jun 29 12:19:58 1993 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu)
* pred.c (pred_fprintf): Abort in switch if `c' is not A, C, or T.
Mon Jun 28 00:18:52 1993 David J. MacKenzie (djm@wookumz.gnu.ai.mit.edu)
* fstype.c (in_afs) [AFS]: New function, derived from code by
Sanjay Ramamurthy <ramams@rpi.edu>.
(filesystem_type_uncached) [AFS]: Call it if the fs type is
otherwise unknown.
* parser.c (parse_size): Recognize b and w suffixes for dd
compatibility.
* code.c (puthalfword): New function.
(main): Call it.
* locate.c (gethalfword): New function.
(locate): Call it.
From ifado!wb@germany.eu.net (Wilhelm B. Kloke).
* listfile.c: Include pathmax.h.
(get_link_name): Always allocate PATH_MAX + 1 bytes for
readlink buffers.
* pred.c (pred_fprintf, insert_lname): Call get_link_name.
* fstype.c (filesystem_type, filesystem_type_uncached),
listfile.c (list_file): Take an arg for the path to access.
* pred.c (pred_ls, pred_fstype, pred_fprintf): Pass it.
* find.c (process_dir): Renamed from scan_directory.
Changes from jrs@world.std.com (Rick Sladkey) to chdir into
subdirectories instead of using string concatenation, for speed:
* find.c (process_top_path): New function.
(main): Call it, and xgetcwd.
(process_path, scan_directory): Take new arg, the pathname
relative to ".". Use it and pass it on.
* pred.c (pred_and, pred_comma, pred_negate, pred_or,
pred_xtype, pred_fprintf, pred_empty, insert_lname):
access rel_pathname instead of pathname.
(launch): chdir to starting_dir.
* defs.h: Declare rel_pathname and starting_dir.
* find.c: Define them.
* xgetcwd.c: New file.
* updatedb.sh: Recognize -fstype NFS as well as nfs.
* locate.c (patprep): Skip trailing character classes correctly.
From luik@pharao.stgt.sub.org (Andreas Luik).
* parser.c (parse_group): Make gid a gid_t, not short or int.
(parse_nogroup): Cast gid to unsigned when using it as an array index.
(parse_user, parse_nouser): Similar changes for uid.
* defs.h: Use uid_t and gid_t.
* parser.c (parse_help): New function.
(parse_table): Add --version, -help, and --help options.
Rename struct parser_table_t to struct parser_table.
(parse_version): Exit after printing message, on
stdout not stderr.
* xargs.c, locate.c (main, usage): Add --version and --help
options.
Wed Mar 31 22:39:57 1993 Jim Meyering (meyering@comco.com)
* parser.c: Define isascii macro to be 1 also if STDC_HEADERS.
* xargs.c: Ditto.
Wed Mar 31 16:04:07 1993 David J. MacKenzie (djm@kropotkin.gnu.ai.mit.edu)
* pred.c (pred_fprintf): If curdepth is 0, don't nuke
segment->text; nuke cp.
Mon Mar 29 15:57:20 1993 David J. MacKenzie (djm@kropotkin.gnu.ai.mit.edu)
* Version 3.8.
Fri Mar 26 16:36:59 1993 David J. MacKenzie (djm@hal.gnu.ai.mit.edu)
* pred.c (pred_ilname, pred_iname, pred_ipath): New functions.
(pred_table): Add them.
(insert_lname): New function.
(pred_lname): Call it.
* parser.c (parse_ilname, parse_iname, parse_ipath,
parse_iregex): New functions.
(parse_table): Add them.
(insert_regex): New function.
(parse_regex): Call it.
* fstype.c (filesystem_type): Cache previous result.
(filesystem_type_uncached): New function.
pred.c (pred_fstype, pred_fprintf): Adjust callers to not cache.
* parser.c: Don't define const.
* fstype.c [FSTYPE_STATFS] (fstype_to_string): #ifdef
MOUNT_PC for 386bsd.
Thu Mar 25 18:32:24 1993 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu)
* parser.c (parse_regex): If ignore_case, set up a translate
table for the regex.
* defs.h: Include string.h or strings.h.
* find.c fstype.c parser.c pred.c util.c: Don't.
* nextelem.c [index]: Don't redefine.
Wed Mar 24 17:47:10 1993 David J. MacKenzie (djm@kropotkin.gnu.ai.mit.edu)
* xargs.c (wait_for_proc): Exit with a nonrunnable command's exit
status, not the wait status value. From
Andreas Schwab <schwab@lamothe.informatik.uni-dortmund.de>.
* parser.c (make_segment, insert_fprintf), pred.c
(pred_fprintf): Add '%F' to print filesystem type.
* parser.c (parse_fprintf): Check if second arg is missing.
Tue Mar 23 13:18:08 1993 David J. MacKenzie (djm@kropotkin.gnu.ai.mit.edu)
* pred.c (pred_fprintf): For %P, don't move past an assumed
slash if the ARGV element ends with one, because in that case
we didn't add one.
* parser.c (parse_printf): Check for missing arg.
From smj@cats.com (Steve James).
* parser.c: Add #ifdef around atol decl for Linux.
Fri Dec 11 08:17:07 1992 Jim Meyering (meyering@comco.com)
* defs.h: Remove dcl of process_path.
* find.c: Put dcl of process_path here. Make a few functions
and file-scope variables static.
* parser.c, tree.c: Declare most functions static.
* locate.c: Use `required_argument' macro in dcl of longopts.
* bigram.c, code.c, locate.c, xargs.c: Make most functions and
file-scope variables static.
* parser.c, xargs.c: Guard ctype.h macros with isascii.
* find.c: Add declarations for opt_expr and mark_stat.
* tree.c (set_new_parent): Add empty default clause to enum swicth.
* locate.c (main): Parenthesize for gcc -Wall.
* xargs.c (push_arg): Parenthesize for gcc -Wall.
Tue Nov 24 08:04:36 1992 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu)
* find.c, fstype.c, parser.c, pred.c, util.c, listfile.c,
nextelem.c, xargs.c, bigram.c, code.c, locate.c: Use
HAVE_STRING_H, not USG.
* pred.c: Use SYSDIR and NDIR instead of USG.
Define direct as dirent, not vice-versa.
Fri Oct 9 02:15:17 1992 David J. MacKenzie (djm@kropotkin.gnu.ai.mit.edu)
* xargs.c (main): Set orig_arg_max before possibly cutting
down arg_max.
Thu Sep 10 19:25:35 1992 David J. MacKenzie (djm@nutrimat.gnu.ai.mit.edu)
* parser.c: Always declare getgrent and getpwent.
Mon Aug 24 12:54:16 1992 David J. MacKenzie (djm@nutrimat.gnu.ai.mit.edu)
* xargs.c: Include sys/types.h before unistd.h. Use ARG_MAX
if it's defined.
* find.c, nextelem.c: Add missing decls.
From bde@runx.oz.au (Bruce Evans).
Thu Jul 23 15:06:07 1992 David J. MacKenzie (djm@nutrimat.gnu.ai.mit.edu)
* Version 3.7.
Tue Jul 14 00:16:52 1992 David J. MacKenzie (djm@apple-gunkies.gnu.ai.mit.edu)
* pathmax.h: New file.
* bigram.c, code.c, locate.c: Use it. Use xmalloc instead of malloc.
Sat Jul 11 22:31:46 1992 David J. MacKenzie (djm@nutrimat.gnu.ai.mit.edu)
* nextelem.c: New file.
* locate.c (main): Use it to support a database path.
Fri Jul 3 02:12:09 1992 David J. MacKenzie (djm@wookumz.gnu.ai.mit.edu)
* listfile.c, pred.c: Change FOO_MISSING to HAVE_FOO.
* parser.c [_POSIX_SOURCE]: Define endpwent and endgrent as empty.
* listfile.c [!HAVE_ST_RDEV]: Print blanks.
From Jeffrey Siegal (jbs@congruent.com).
* locate.c (locate): Check for EOF at top of loop, not middle.
* updatedb.sh: Remove duplication hack.
From Jay Plett.
Wed Jun 10 15:04:23 1992 David J. MacKenzie (djm@wookumz.gnu.ai.mit.edu)
* pred.c (pred_amin, pred_atime, pred_cmin, pred_ctime,
pred_mmin, pred_mtime, pred_used): Cast l_val to time_t before
comparing it to a time_t. From fpm@crash.cts.com (Frank Maclachlan).
* locate.c (locate): Take the database path as an arg.
(main): Take an option to specify the database path.
(usage): New function.
* updatedb.sh: Don't read from and write to the file-list file
in the same statement.
Thu Jun 4 15:27:07 1992 David J. MacKenzie (djm@geech.gnu.ai.mit.edu)
* Version 3.6.
Wed May 20 00:05:13 1992 David J. MacKenzie (djm@churchy.gnu.ai.mit.edu)
* xargs.c: Include sys/param.h before limits.h, not after.
* listfile.c: If we include a header file specifically to get
major et al., assume we have them.
Tue May 12 01:09:33 1992 David J. MacKenzie (djm@churchy.gnu.ai.mit.edu)
* locate.c (locate): Don't give fnmatch FNM_PERIOD (it's useless).
* parser.c (parse_path): New function.
* pred.c (pred_path): New function.
* tree.c (opt_expr): Move -path like -name.
* updatedb.sh: Duplicate the last entry in the file list so it
doesn't get ignored.
Mon May 11 22:24:40 1992 David J. MacKenzie (djm@churchy.gnu.ai.mit.edu)
* updatedb.sh: Allow many vars to be overridden in the environment.
* locate.c, updatedb.sh: FCODES -> LOCATE_DB.
Wed Apr 22 15:24:00 1992 David J. MacKenzie (djm@churchy.gnu.ai.mit.edu)
* updatedb.sh: Use binprefix when calling find.
* locate.c (locate): Use LOCATE_DB environ variable if set.
* find.c (scan_directory): Allow for dirs having negative
st_size (NFS mount points on VAX 4.3BSD+NFS).
From metcalf@catfish.lcs.mit.edu (Chris Metcalf).
Sat Apr 18 15:42:52 1992 David J. MacKenzie (djm@wookumz.gnu.ai.mit.edu)
* fstype.c: Rename FS_* to FSTYPE_*. Support Dynix's
name for the mount table.
Sun Mar 8 23:21:25 1992 David J. MacKenzie (djm@nutrimat.gnu.ai.mit.edu)
* listfile.c (list_file): Allow a slop factor for deciding what
is in the future.
Tue Feb 25 16:24:15 1992 David J. MacKenzie (djm@wookumz.gnu.ai.mit.edu)
* Version 3.5.
Sat Feb 22 08:43:01 1992 David J. MacKenzie (djm@wookumz.gnu.ai.mit.edu)
* tree.c (set_new_parent): Initialize need_stat field.
* defs.h (struct predicate): Define p_name unconditionally.
Fri Feb 21 15:28:43 1992 David J. MacKenzie (djm@wookumz.gnu.ai.mit.edu)
* tree.c (opt_expr): Preserve expression precedence when
rearranging expression tree.
(set_new_parent): New function.
(mark_stat): Set need_stat whether or not it's been set
earlier in the expression.
All from Tim Wood.
Mon Feb 17 10:20:38 1992 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu)
* updatedb.sh: Use current value of TMPDIR if already set.
From Dana Jacobsen (jacobsd@cs.orst.edu).
* pred.c: Include pwd.h and grp.h after unistd.h, not before.
Apparently needed on ISC 2.2. From Juha Takala <jta@piuha.sah.vtt.fi>.
Thu Feb 13 10:52:31 1992 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu)
* modetype.h: Don't define S_IFMT, because doing so breaks pred_type
on plain POSIX.1 systems.
Sat Feb 8 00:58:13 1992 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu)
* Version 3.4.
Fri Feb 7 21:35:58 1992 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu)
* defs.h: Don't declare process_path.
* find.c [DEBUG_STAT] (debug_stat): New function.
(main) [DEBUG_STAT]: Call it.
(process_path): Return a value.
(scan_directory): Count number of subdirs seen so far.
* parser.c (pred_and, pred_close, pred_comma, pred_negate,
pred_open, pred_or): Don't need stat.
* util.c (get_new_pred_chk_op): Implicit AND doesn't need stat.
Fri Jan 17 21:51:18 1992 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu)
* Version 3.3.
Tue Dec 24 02:16:49 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu)
* wait.h, listfile.c, xargs.c, bigram.c, code.c, locate.c:
Change POSIX ifdefs to HAVE_UNISTD_H and _POSIX_VERSION.
Wed Dec 18 16:37:17 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu)
* listfile.c: Use MAJOR_IN_MKDEV and MAJOR_IN_SYSMACROS to
find major and minor.
* code.c, bigram.c, locate.c, xargs.c: Use LIMITS_H_MISSING
instead of LIMITS_MISSING.
Sat Dec 7 06:13:26 1991 David J. MacKenzie (djm at frob.eng.umd.edu)
* parser.c (parse_prune): No stat needed for prune.
(insert_fprintf, make_segment): Possibly no stat needed,
depending on which information is printed.
* xargs.c (usage): Document long-named options as starting
with -- instead of +.
* parser.c [!POSIX]: Declare getgrent and getpwent.
* fstype.c (filesystem_type): Only check MNTTYPE_IGNORE if
it's defined. From Rainer Orth.
* Add leaf node optimization suggested by Matthew Farwell
<dylan@ibmpcug.co.uk>. Add -noleaf option to disable it.
Adapt parts of Tim Wood's work to current sources.
* find.c (scan_directory): New function, from code in process_path.
(process_path): Take an arg indicating whether the pathname
is a leaf non-directory, instead of a redundant current level.
* parser.c (parse_noleaf): New function.
(parse_print, parse_name, etc.): Set need_stat = false.
Wed Nov 2 13:34:32 1990 Tim Wood at home (tim at axolotl.UUCP)
* pred.c: Call stat() if an AND, OR or NOT node tells you to.
* find.c: Limit calls to stat().
Wed Oct 3 17:30:39 1990 Tim Wood at home (tim at axolotl.UUCP)
* tree.c (opt_expr): New function to rearrange predicates within
a conjunction/disjunction so that non-inode (-name, -regex) ones
are executed first.
* pred.c: Make some supporting tree structure changes for opt_expr().
Sat Dec 7 00:36:06 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu)
* xargs.c (do_exec): Simplify test for which exit
status to use if exec fails.
Fri Dec 6 18:24:06 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu)
* listfile.c (list_file): POSIX_ME_HARDER -> POSIXLY_CORRECT.
Thu 24 Oct 1991 21:33:21 Jim Meyering (meyering at churchy.gnu.ai.mit.edu)
* pred.c (pred_fprintf): Don't print "\n" unless it's in the
format string.
Mon Oct 21 22:30:35 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu)
* defs.h, parser.c, pred.c: Rename some types that conflict
with reserved POSIX.1 namespace (ended in _t).
Thu Oct 17 22:39:06 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu)
* xargs.c: Don't determine memory.h based on POSIX, which
doesn't mention it.
Sat Oct 5 16:11:05 1991 Jim Meyering (meyering at churchy.gnu.ai.mit.edu)
* parser.c (parse_perm): Parse new `-perm +mode' notation.
* pred.c (pred_perm): Interpret same.
Fri Sep 13 14:58:27 1991 David J. MacKenzie (djm at churchy.gnu.ai.mit.edu)
* xargs.c [POSIX]: Always use sysconf to get ARG_MAX.
Thu Sep 5 23:57:06 1991 David J. MacKenzie (djm at apple-gunkies)
* bigram.c, code.c (main): Make path_max int, not unsigned.
* locate.c (main): Check for pathconf failure.
Thu Sep 5 11:54:44 1991 Jim Meyering (meyering at churchy.gnu.ai.mit.edu)
* parser.c (insert_fprintf): Add `\\' escape and fixed `%%'
interpretation.
* pred.c (pred_fprintf): fixed off-by-one indexing problem
when handling [gGuU] printf formats.
Wed Aug 28 20:53:57 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu)
* Version 3.2.
Mon Aug 26 18:57:32 1991 David J. MacKenzie (djm at pogo.gnu.ai.mit.edu)
* bigram.c, code.c: Fix handling of PATH_MAX.
Check for anomalous input line lengths.
From Bruce Evans.
Fri Aug 23 11:00:18 1991 David J. MacKenzie (djm at apple-gunkies)
* pred.c (pred_fprintf): Round block number up to get K.
Thu Aug 22 10:46:30 1991 David J. MacKenzie (djm at apple-gunkies)
* pred.c (pred_fprintf, pred_lname) [_AIX]: Allocate PATH_MAX
byte for link object since st_size is wrong.
* listfile.c (list_file): Don't convert blocks to kilobytes if
env. var POSIX_ME_HARDER is defined.
* fstype.c [FS_AIX_STATFS]: New case.
* configure: Make sure the sys/mount.h is the 4.4BSD version
with grep instead of just testing whether it exists.
* listfile.c (list_file): Add 1 to number of 512-byte blocks
before dividing to get 1K blocks (so we round up, not down).
Wed Aug 21 13:02:46 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu)
* Version 3.1.
* parser.c (parse_fprintf), pred.c (pred_fprintf): Add %k
conversion to print 1K blocks.
* listfile.c: Print counts of 1K blocks, for consistency with
new fileutils release. Bad timing, there.
* Version 3.0.
* pred.c [VOID_CLOSEDIR]: Fake a return value for closedir,
which returns void on some systems, like Sequents.
* configure: Check sys/dir.h for 'void closedir'.
Thu Aug 15 16:07:46 1991 David J. MacKenzie (djm at frob)
* modetype.h: Define POSIX.1 stat stuff if missing.
* pred.c, parser.c, find.c, fstype.c: Don't define it.
* updatedb.sh: Use a variable substitution method like configure's.
* Makefile.in: Add datadir variable to separate programs from
data file.
* parser.c, pred.c: Rename -fulldays to -daystart.
* defs.h, find.c, parser.c, pred.c: Add many new predicates
from Jay Plett (jay@princeton.edu).
Wed Aug 14 14:37:06 1991 David J. MacKenzie (djm at bleen)
* parser.c (parse_size), pred.c (pred_size), defs.h (struct
size_t): Allow `k' to follow number to measure size in Kbytes.
* parser.c (parse_size, get_num, insert_num), defs.h (struct
size_t): Use enum comparison_type instead of short.
Fri Aug 9 00:49:32 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu)
* xargs.c (read_line): Use isblank, to support POSIX locales.
* fstype [FS_STATVFS]: New code for SVR4, from slootman@dri.nl
(Paul Slootman).
* configure: Figure out when to use it.
* configure: Check for st_blocks in struct stat.
* listfile.c (ST_NBLOCKS): New macro.
(list_file): Print file's block count.
Use S_ISLNK instead of S_IFLNK.
* fileblocks.c: New file, from fileutils.
Thu Aug 8 17:20:19 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu)
* parser.c, pred.c [CACHE_IDS]: Optional code to turn uid and
gid lookups into table lookups.
Wed Aug 7 00:22:29 1991 David J. MacKenzie (djm at wheat-chex)
* configure, Makefile.in's: Support +srcdir option via VPATH.
Clean up clean targets.
Sat Jul 20 01:11:51 1991 David J. MacKenzie (djm at apple-gunkies)
* configure: Filter /etc and /usr/etc from path.
* xargs.c (wait_for_proc): Fix handling of child exit status.
(main): Exit with a nonzero status if any child did.
* pred.c (launch): Flush stdout and stderr before forking.
* fstype.c (filesystem_type) [FS_MNTENT]: Skip entries of
type "ignore".
Fri Jul 19 22:53:42 1991 David J. MacKenzie (djm at bleen)
* pred.c, locate.c: Use fnmatch instead of glob_match.
* fnmatch.c, fnmatch.h: New files.
* Many files: Use string.h if STDC_HEADERS, as well as if USG.
* locate.c, code.c, bigram.c: Possibly use pathconf to get
PATH_MAX. Use malloc to allocate path arrays.
* xargs.c: Possibly use sysconf to get ARG_MAX.
(env_size): Make definition unconditional.
(main): Do arg_max adjustment that can't be done with
preprocessor now that ARG_MAX might be a function call.
(do_exec): Exit with status 126 or 127 after failed exec, for
POSIX.2 draft 11.1.
* xargs.c, pred.c, listfile.c: Use POSIX, not UNISTD_MISSING.
* wait.h: Use POSIX, not WAIT_MACROS_MISSING.
* COPYING: Use version 2. Update all files.
* Replace Makefile and lib/Makefile with Makefile.in,
lib/Makefile.in and configure. Update README.
Fri Apr 5 12:49:09 1991 David J. MacKenzie (djm at apple-gunkies)
* Version 2.2.
Fri Mar 15 20:44:45 1991 David J. MacKenzie (djm at geech.ai.mit.edu)
* xargs.c (main): Always run the command if some args are left over.
Rename some variables.
Fri Jan 18 03:35:57 1991 David J. MacKenzie (djm at geech.ai.mit.edu)
* bigram.c, code.c, locate.c: Use LIMITS_MISSING, not
_POSIX_SOURCE, to decide whether to include limits.h.
* parser.c, pred.c, listfile.c: Use POSIX, not _POSIX_SOURCE,
to decide whether to declare getpwuid and getgrgid.
* xargs.c: Use POSIX, not _POSIX_SOURCE, to determine whether
to include memory.h.
Sat Jan 12 04:12:34 1991 David J. MacKenzie (djm at wookumz.ai.mit.edu)
* defs.h, find.c, parser.c, pred.c: Remove -permmask option.
Thu Jan 10 04:32:52 1991 David J. MacKenzie (djm at albert.ai.mit.edu)
* wait.h: Include sys/types.h to get pid_t.
* xargs.c [USG && !STDC_HEADERS]: Only include memory.h if not
_POSIX_SOURCE.
Tue Jan 1 23:53:32 1991 David J. MacKenzie (djm at albert.ai.mit.edu)
* Version 2.1.
Wed Dec 26 03:25:51 1990 David J. MacKenzie (djm at apple-gunkies)
* locate.c, bigram.c, code.c: Attempt to get max. path length
on more kinds of systems, incl. POSIX.
* pred.c, listfile.c, xargs.c: Get some decls from unistd.h,
if available.
* find.c, defs.h: Make `cur_day_start' a time_t, not long.
Fri Dec 21 01:49:12 1990 David J. MacKenzie (djm at egypt)
* defs.h, parser.c: Remove unused field from `struct exec_t'.
* xargs.c: Add +no-run-if-empty option to cause the command to
not be run if the input is empty.
* defs.h (struct exec_t): Change the array of offsets into an
array of `struct path_arg'.
* parser.c (insert_exec_ok): Fill in new fields, to allow "{}"
to be substituted (multiple times) anywhere in an arg to -exec
or -ok.
* pred.c (pred_exec): Add code to substitute "{}" within args.
(pred_ok): After prompting, just run pred_exec.
Thu Dec 20 02:32:09 1990 David J. MacKenzie (djm at egypt)
* fstype.c (filesystem_type) [FS_MNTENT]: Allow for optional
"0x" at front of "dev=" mount option, which amd puts there but
Sun automounter doesn't.
Sat Dec 15 19:01:12 1990 David J. MacKenzie (djm at egypt)
* find.c (main), util.c (usage): Make directory args optional,
defaulting to ".".
Sat Dec 15 18:36:29 1990 David J. MacKenzie (djm at apple-gunkies)
* listfile.c: Define major and minor if not defined (as in POSIX).
Mon Dec 3 01:04:35 1990 David J. MacKenzie (djm at alborz)
* find.c, fstype.c, parser.c, pred.c, util.c: Flush stdout before
writing to stderr, in case they have been redirected to the
same file descriptor.
* pred.c (launch): Use POSIX wait macros from wait.h.
* xargs.c (print_xargs): Read from tty_stream, not stdin.
Tue Nov 20 16:48:24 1990 David J. MacKenzie (djm at apple-gunkies)
* Version 2.0.
* fstype.c [FS_USG_STATFS]: New code.
[FS_STATFS]: For symlinks, statfs the directory the link is in
instead of the link.
* Various files: Conditionalize some declarations on
STDC_HEADERS or _POSIX_SOURCE.
Fri Nov 16 12:24:43 1990 David J. MacKenzie (djm at egypt)
* modetype.h: New file.
parser.c, pred.c: Use it.
Thu Nov 15 18:05:54 1990 David J. MacKenzie (djm at apple-gunkies)
* xmalloc.c: New file from fileutils.
* fstype.c (fstype_to_string): Add case for MFS.
(filesystem_type): Take a pathname as a second arg.
[FS_STATFS] return "unknown" instead of exiting if statfs
fails because of ENOENT.
* pred.c (pred_fstype): Pass the pathname. Set current_dev.
* find.c (process_path): Make root_dev local again.
Mon Nov 12 02:54:00 1990 David J. MacKenzie (djm at apple-gunkies)
* pred.c (pred_fstype): Free old fs type.
* fstype.c, pred.c (pred_fstype), parser.c (parse_fstype):
Reread the file system type info. every time a filesystem
mount point is crossed, to allow for automounting.
* xstrdup.c: New file from fileutils.
* find.c (process_path): Rename root_dev to current_dev and
make it global, for -fstype.
* wait.h: New file taken from xargs.c.
* xargs.c: Make limits.h vs. sys/param.h conditional on
LIMITS_MISSING instead of USG, to accomodate SVR2.
Thu Nov 8 11:52:22 1990 David J. MacKenzie (djm at apple-gunkies)
* parser.c, pred.c, listfile.c: If not _POSIX_SOURCE, declare
getpwuid and getgrgid. Use them.
* listfile.c: If not _POSIX_SOURCE, define S_ISDIR and
S_ISBLK. Use them.
* find.c: Use S_ISDIR instead of S_IFDIR, and define if not
_POSIX_SOURCE.
* Makefile: Define AR and RANLIB and pass to child makes.
lib/Makefile: Use them.
* xargs.c (WIFSIGNALED): Redefine so it works.
Mon Nov 5 00:02:01 1990 David J. MacKenzie (djm at apple-gunkies)
* find.c (process_path): For -xdev, process filesystem
mountpoints (but don't descend them), instead of skipping them
entirely.
* find.c, parser.c, defs.h: Add -follow predicate.
* xargs.c: Change ifdefs to support STDC POSIX systems.
Sat Nov 3 20:18:05 1990 David J. MacKenzie (djm at apple-gunkies)
* xargs.c (do_exec): Child process exits with status 255, not
127, if command can't be run.
Fri Nov 2 02:11:42 1990 David J. MacKenzie (djm at apple-gunkies)
* xargs.c: Exit with status 127 if running commmand fails, as
required by POSIX.
* fstype.c: Support -fstype for Ultrix (-DFS_GETMNT).
Sun/BSD code is now -DFS_MNTENT.
Thu Nov 1 13:06:01 1990 David J. MacKenzie (djm at egypt)
* Reorganize into subdirectories and add xargs. Rewrite Makefiles.
* find.c (process_path, main): Allow a maxdepth of 0, meaning
only process command line args.
* parser.c, pred.c: Add -print0 predicate.
* xargs.c: Add -0 option and long options. Move standard
library functions into separate files. Use error instead of
fatal and fprintf/perror. Use POSIX macros for examining exit
status from wait.
(read_string): New function.
Fri Sep 21 10:21:09 1990 David J. MacKenzie (djm at apple-gunkies)
* find.c (process_path): Take DEPTH as an arg instead of ROOT,
and change callers.
Thu Sep 20 23:58:47 1990 David J. MacKenzie (djm at apple-gunkies)
* parser.c (parse_maxdepth): New function.
* find.c (process_path): If -maxdepth was given, don't go
more than that many levels deep.
* defs.h: Declare maxdepth.
Wed Sep 12 02:12:31 1990 David J. MacKenzie (djm at apple-gunkies)
* parser.c: Add -not as synonym for !.
Sun Aug 26 06:16:08 1990 Jim Kingdon (kingdon at pogo.ai.mit.edu)
* Makefile (TAGS): New target.
Sun Aug 12 00:32:01 1990 David J. MacKenzie (djm at albert.ai.mit.edu)
* xargs.c (main): Tell getopt to not permute.
Sat Aug 4 21:43:45 1990 David J. MacKenzie (djm at pogo.ai.mit.edu)
* parser.c (parse_perm), pred.c (pred_perm): Always compare
bits 07777.
* locate.c, Makefile: Rename 'fastfind' program to 'locate',
following comment in POSIX.2 draft 10 rationale for find.
Wed Jul 25 18:45:03 1990 David J. MacKenzie (djm at albert.ai.mit.edu)
* listfile.c (getuser, getgroup): Make uid and gid unsigned
short, not int.
Mon Jul 16 13:40:13 1990 David J. MacKenzie (djm at albert.ai.mit.edu)
* defs.h: Don't declare fprintf and printf, in case they have
prototypes in stdio.h (important for functions that use stdarg).
Sun Jul 15 23:39:39 1990 David J. MacKenzie (djm at albert.ai.mit.edu)
* parser.c (parse_and): New function, for compatibility.
Wed Jul 4 00:17:57 1990 David J. MacKenzie (djm at apple-gunkies)
* find.c (main): Only enclose expressions that produce no side
effects within `( ... )'.
Tue Jul 3 01:59:39 1990 David J. MacKenzie (djm at apple-gunkies)
* parser.c (strspn): Stop when end of string reached.
* Version 1.2.
* Move version number from Makefile to new file version.c.
* parser.c: Recognize new -version predicate.
* find.c (main): If no predicates that produce output are
given, default to -print if the entire expression is true, not
just the last part of an alternation.
* Print the names of predicates with invalid arguments.
Mon Jul 2 23:48:17 1990 David J. MacKenzie (djm at apple-gunkies)
* pred.c: Don't check for invalid comparison types in numeric
predicate functions.
Thu Jun 28 00:34:57 1990 David J. MacKenzie (djm at apple-gunkies)
* parser.c (parse_regex): Set fastmap and translate before
compiling regex.
Mon Jun 25 18:08:59 1990 David J. MacKenzie (djm at albert.ai.mit.edu)
* fastfind.c (fastfind): Initialize count to 0.
* lib/updatedb.sh: Only do regex comparison on directories,
for speed.
* listfile.c (list_file): Truncate user and group name to 8 chars.
Sun Jun 24 13:51:27 1990 David J. MacKenzie (djm at albert.ai.mit.edu)
* Version 1.1.
* Makefile [DISTFILES]: Add COPYING.
Fri Jun 22 03:54:27 1990 David J. MacKenzie (djm at albert.ai.mit.edu)
* Version 1.0.
Tue Jun 19 03:55:28 1990 David J. MacKenzie (djm at albert.ai.mit.edu)
* lib/updatedb.sh: Prune entries that match PRUNEREGEX.
Split up finding files from computing bigrams.
Use redirection instead of nonportable grep -s to detect sort
failure. Optionally search network filesystems as well as
local ones.
* pred.c (pred_regex): Match against full pathname instead of
just last element.
* util.c (basename): Return "/", not "", if given "/".
* find.c (process_path): Fix error in handling "/" directory.
Mon Jun 18 01:49:16 1990 David J. MacKenzie (djm at apple-gunkies)
* parser.c [STRSPN_MISSING] (strspn): New function.
Sun Jun 17 13:54:09 1990 David J. MacKenzie (djm at apple-gunkies)
* listfile.c: New file.
* parser.c (parse_ls): New function.
* pred.c (pred_ls): New function.
* find.c (main): Remove interface to fastfind, to prevent
conflict with POSIX syntax.
* util.c (usage): Remove fastfind syntax from message.
* fastfind.c (main): New function.
* Makefile: Make fastfind a separate program.
* find.c (main): Print correct message if a predicate arg is
missing.
* parser.c (insert_exec_ok): Make args that start with a ';' but
contain other characters not terminate the command.
Fri Jun 15 00:33:45 1990 David J. MacKenzie (djm at albert.ai.mit.edu)
* fstype.c: If MOUNTED isn't defined but MNT_MNTTAB is, use it
instead. True for HP/UX, at least.
Thu Jun 14 10:10:25 1990 David J. MacKenzie (djm at albert.ai.mit.edu)
* savedir.c: New file; now find won't run out of file
descriptors in deep trees.
* find.c (process_path): Use savedir.
Sat Jun 9 03:15:21 1990 David J. MacKenzie (djm at albert.ai.mit.edu)
* parser.c (parse_permmask): Allow symbolic mode masks.
(parse_perm): Free 'struct change' when done with it.
(get_oct): Function removed.
* find.c (process_path): Allow arbitrarily-long filenames.
More efficient string copying. Initialize perm_mask to 07777
instead of -1.
Thu Jun 7 04:22:42 1990 David J. MacKenzie (djm at albert.ai.mit.edu)
* Makefile, find.c: Use DIRENT to control whether <dirent.h>
is used.
Thu May 31 04:46:11 1990 David J. MacKenzie (djm at albert.ai.mit.edu)
* parser.c (parse_regex): New function.
* pred.c (pred_regex): New function.
* fstype.c (read_mtab): If mtab entry has a "dev=" option
(like in SunOS 4.1), use it, so there is no need to stat the
special file later on.
(xatoi, strstr): New functions.
Mon May 21 01:04:42 1990 David J. MacKenzie (djm at abyss)
* lib/updatedb.sh: Put BINDIR in PATH.
* fstype.c: Do nothing if MNTENT_MISSING is defined.
* fstype.c: New file.
* parser.c (parse_fstype): New function.
* pred.c (pred_fstype): New function.
* parser.c (parse_newer): Failure to stat -newer file is a
fatal error.
* pred.c (pred_ok): Flush output before reading. Use getchar
instead of scanf.
* pred.c (pred_prune): Return false if -depth given.
* find.c: Apply the predicates to the dir when -depth and
-prune are given.
Sun May 20 19:55:30 1990 David J. MacKenzie (djm at albert.ai.mit.edu)
* pred.c (pred_prune): Set new global var `stop_at_current_level'.
* find.c (process_path): Test and reset it.
Fri May 18 01:56:17 1990 David J. MacKenzie (djm at abyss)
* modechange.c, modechange.h: New files.
* parser.c (parse_perm): Use mode_compile and mode_adjust to
parse arg, to allow symbolic mode for POSIX.
Thu May 17 02:07:44 1990 David J. MacKenzie (djm at abyss)
* parser.c (get_oct): Don't consider an empty string a valid number.
* parser.c (parse_perm): If arg starts with '-', set flag bit
for special comparison (POSIX).
* pred.c (pred_perm): If flag bit set, compare s[ug]id &
sticky bits as well, and return true if the given perms are
set, ignoring other bits.
* find.c: New global var `exit_status'. Use it. (POSIX)
* parser.c: Set `exit_status' if lstat on -newer file fails.
* fastfind.c: New file.
* find.c (main): Call fastfind if given only 1 arg.
* util.c (usage): Update message.
* lib/{Makefile,updatedb.sh,bigram.c,code.c}: New files.
* Makefile: Add 'all' and 'install' targets.
Wed May 16 23:23:35 1990 David J. MacKenzie (djm at abyss)
* parser.c (parse_nogroup, parse_nouser): Implement.
* pred.c (pred_nogroup, pred_nouser): Implement.
Mon May 14 00:09:35 1990 David J. MacKenzie (djm at abyss)
* find.c: Add variable `stay_on_filesystem' for -xdev.
(process_path): Take an arg determining whether this call is
the root of a tree. Use lstat instead of stat. If
stay_on_filesystem, don't process a dir on a different
filesystem.
* parser.c (parse_newer): Use lstat instead of stat. Is this right?
(parse_xdev): Set stay_on_filesystem.
* parser.c: Add dummy parse_nogroup, parse_nouser,
parse_prune, and parse_xdev; to be written later.
* pred.c: Add dummy pred_nogroup, pred_nouser, pred_prune.
* find.c: Support System V directory library/headers.
* find.c (process_path): Don't continue with a file that stat
fails on.
* defs.h, parser.c, pred.c: Change 'u_long' and 'u_short' to
'unsigned long' and 'unsigned short'.
* find.c, defs.h: Remove 'convert_glob' variable.
* parser.c (parse_fullregex): Function removed.
(parse_name): Remove regular expression code.
(parse_type): Recognize sockets.
Add code to check for missing arguments to many parse_* functions.
* pred.c (pred_name): Use glob_match instead of regex.
Sun May 13 17:45:09 1990 David J. MacKenzie (djm at albert.ai.mit.edu)
* Replace fprintf, simple_error, and mem_error with error and
usage.
* Fix string header includes for USG.
Tue Mar 27 12:40:29 1990 David J. MacKenzie (djm at albert.ai.mit.edu)
* defs.h: Change some #defines to enums.
Sun Mar 25 22:08:58 1990 David J. MacKenzie (djm at albert.ai.mit.edu)
* find.c (main): Don't take basename of argv[0].
* util.c (xmalloc): New function.
* find.c, parser.c, utils.c: Use xmalloc instead of malloc.
* pred.c: Remove emulation of regex for BSD and use GNU
library version in regcmp.c instead.
* parser.c: Remove emulation of regcmp for BSD and use GNU
library version in regcmp.c instead.
* Makefile: Link with regex.o and regcmp.o.
Add a DISTFILES macro and dist target.
* Indent source code. Move RCS logs to this file.
Wed Mar 21 09:30:18 1990 David J. MacKenzie (djm at pogo.ai.mit.edu)
* xargs.c: Indent. Comment and rename some global variables.
(main): Use getopt to parse options. Open new global var
`tty_stream' to /dev/tty if querying requested.
(print_args): Read response from tty_stream, not stdin.
(xmalloc): New function.
Global: Use xmalloc instead of malloc.
(usage): Revise message.
87/02/22 20:01:20 20:01:20 cire (Eric B. Decker)
* pred.c: added guts to pred_size
87/02/22 00:59:42 00:59:42 cire (Eric B. Decker)
* pred.c: added guts to perm and permmask.
87/02/21 23:02:21 23:02:21 cire (Eric B. Decker)
* pred.c: made pred_name only look at the last component of
the path.
87/02/21 22:26:47 22:26:47 cire (Eric B. Decker)
* pred.c: added guts to name. useds regex and regcmp to do
regular expression handling.
87/02/21 00:17:21 00:17:21 cire (Eric B. Decker)
* pred.c: added predicate newer
87/02/20 11:40:07 11:40:07 cire (Eric B. Decker)
* pred.c: added guts to pred_ok
87/02/19 23:52:37 23:52:37 cire (Eric B. Decker)
* pred.c: finished exec.
87/02/22 20:01:09 20:01:09 cire (Eric B. Decker)
* parser.c: added guts to parse_size
87/02/22 00:59:16 00:59:16 cire (Eric B. Decker)
* parser.c: added guts of perm and permmask. added getoct
routine for perm and permmask
87/02/21 23:32:50 23:32:50 cire (Eric B. Decker)
* parser.c: added -fre, -fullregex predicate to turn off
globbing conversion
87/02/21 23:01:01 23:01:01 cire (Eric B. Decker)
* parser.c: reworked name so the regexpr pattern includes $ at
the end to force globbing to work correctly. End of the
pattern refers to the end of the filename.
87/02/21 22:25:34 22:25:34 cire (Eric B. Decker)
* parser.c: added guts to name. uses a conversion from
globbing to regexp format. uses regex and regcmp to actually
to the comparison.
87/02/21 00:17:11 00:17:11 cire (Eric B. Decker)
* parser.c: added predicate newer
87/02/20 11:39:35 11:39:35 cire (Eric B. Decker)
* parser.c: added ok guts. consolidated exec and ok to using
insert_exec_ok
87/02/19 00:20:54 00:20:54 cire (Eric B. Decker)
* parser.c: minor bug in -fulldays predicate parser. It
should have set the flag full_days to true.
87/02/22 00:58:32 00:58:32 cire (Eric B. Decker)
* find.c: changed where we are setting perm_mask to -1. need
to make sure that this happens before every apply_predicate.
87/02/21 23:32:11 23:32:11 cire (Eric B. Decker)
* find.c: added error checking for no paths. better error
message if illegal ordering.
87/02/21 22:19:58 22:19:58 cire (Eric B. Decker)
* find.c: added global convert_glob
87/02/22 20:00:12 20:00:12 cire (Eric B. Decker)
* defs.h: added definition of BLKSIZE for size
87/02/21 22:19:25 22:19:25 cire (Eric B. Decker)
* defs.h: added global convert_glob for name
|