summaryrefslogtreecommitdiff
path: root/cfg.mk
AgeCommit message (Collapse)Author
2015-04-22build: fix potential factor build failure on arm and mipsPádraig Brady
* src/longlong.h: Sync with the latest longlong.h from libgmp to: - Use __builtin_c[lt]zl on arm64. - Fix sparc64 vis3 build failure due to missing __clz_tab. - Avoid a clang build issue on mips. - Support thumb2 arm 32 bit system. * src/cfg.mk (sc_ensure_comma_after_id_est): Exclude longlong.h to ease merges.
2015-03-20maint: really fix wildcard quoting in sc_tests_executablePádraig Brady
* cfg.mk (sc_tests_executable): The previous commit avoided the globbing, but also passed on the quoted wildcards to find(1). We could use eval to handle the quoting, though that's a bit awkward and dangerous, so instead explicitly disable globbing for the whole make target subshell. Note noglob is not available on solaris, where we fall back to set -f. Note also that zsh uses set -F for this, but that's moot here. Also correct the find(1) expression to include the -o between each wildcard.
2015-03-20maint: fix wildcard quoting in sc_tests_executablePádraig Brady
* cfg.mk (sc_tests_executable): If there are files with $TEST_EXTENSIONS in the current directory, then the lack of quoting of the $test_extensions_rx contents could result in globbing and an inconsequential run. find(1) produces warnings only with more than one expansion.
2015-03-05maint: be less strict about executable permissions of testsBernhard Voelker
With "umask 0027" or even "umask 0077", the git clone of coreutils does not have the executable bit set for 'other' (or 'group). Therefore, "make syntax-check" would fail. * cfg.mk (sc_tests_executable): Change the -perm argument of find(1) to only print the names of the files which are not executable by the user, rather than insisting on ugo+x (octal 111).
2015-02-17maint: prefer STREQ_LEN and STRPREFIX over strncmp in all casesBernhard Voelker
* cfg.mk (sc_prohibit_strncmp): Improve the search pattern: use _sc_search_regexp to find all invocations of strncmp except when used on a macro definition line; just match the function name with an opening parenthesis. Before, the expression missed places where the comparison against 0 was in a subsequent line. * src/system.h (STRNCMP_LIT): Shorten 'literal' to 'lit' to move the whole definition of the macro into one line - thus making sc_prohibit_strncmp pass. (STRPREFIX): Add space before parenthesis. * src/du.c (main): Prefer STREQ_LEN over strncmp. * src/pinky.c (scan_entries): Likewise. * src/tac.c (tac_seekable): Likewise. * src/who.c (scan_entries): Likewise.
2015-02-11maint: remove redundant diff filtering from sc_long_linesPádraig Brady
* cfg.mk (sc_long_lines): diff files are now completely excluded, so no need to filter portions of them. Reported by Bernhard Voelker.
2015-02-11maint: exclude diff files from long lines checkPádraig Brady
* cfg.mk: Add .diff files to the exclusion expression for sc_long_lines, since the gnulib code might be >= 80 chars. Note 80 char lines trigger due to the added +/- diff marks. Also normalize the $$ used in the other sc_long_lines exclusion expressions.
2015-02-09maint: make sc_dd_O_FLAGS more robustBernhard Voelker
The construct "diff ... || diff=1 || diff=" does not set the variable in all cases. This could be triggered with: $ env make diff=1 make sc_dd_O_FLAGS dd_O_FLAGS maint.mk: ./src/dd.c has inconsistent O_ flag lists cfg.mk:59: recipe for target 'sc_dd_O_FLAGS' failed make: *** [sc_dd_O_FLAGS] Error 1 * cfg.mk (sc_dd_O_FLAGS): Remember $? of the diff command directly and check its value later rather than using the above mentioned mapping.
2015-02-09maint: make sc_THANKS_in_duplicates more robustBernhard Voelker
The previous commit v8.23-124-g7b1ca5f made the above syntax-check rule fail, because that took the whole content of THANKS.in for comparison. * cfg.mk (sc_THANKS_in_duplicates): Strip off the header (all before the first empty line) and the footer (all past the next empty line) from 'THANKS.in' for the check.
2015-02-09maint: sort contributors in THANKS.inBernhard Voelker
* THANKS.in: Document the preferred sort order as a comment at the top of the file. Change "Марк Коренберг" to latin1 ("Mark Korenberg"). Sort all entries. * cfg.mk (sc_THANKS_in_sorted): Add rule to ensure that 'THANKS.in' remains sorted.
2015-02-03build: fix invalid gnulib patchPádraig Brady
* gl/lib/tempname.c.diff: Fix recent breakage so it applies again. Invalid patch was noticed at http://hydra.nixos.org/eval/1172233 * cfg.mk: Exempt diff files from these "id_est" syntax checks. (sc_ensure_gl_diffs_apply): A new syntax check, to ensure all patches under gl/ apply cleanly. Note we use --fuzz=0 to check patches apply cleanly for safety, due to the patch(1) issue detailed in commit v8.21-117-g46f7e05 * gl/lib/regcomp.c.diff: Rediffed. * gl/lib/regex_internal.c.diff: Likewise. * gl/lib/regex_internal.h.diff: Likewise. * gl/lib/regexec.c.diff: Likewise. * gl/lib/tempname.h.diff: Likewise.
2015-01-31doc,maint: fix use of "i.e." in documentation and commentsBernhard Voelker
To align with all other places (and correct grammar), change all upper-case "I.E." to "I.e.". Furthermore, ensure that "i.e." is followed by a comma. Finally, ensure to use a double-space before "I.e.," at the beginning of a sentence. The following was used to change all offending uses (apart from old ChangeLog files): $ git grep -liF 'i.e.' \ | xargs sed -i \ -e 's/I\.E\./I.e./g' \ -e 's/\. \(I\.e\.\)/. \1/g' \ -e 's/\([Ii]\.e\.\)\( \)/\1,\2/g' \ -e 's/\([Ii]\.e\.\)$/\1,/g' * cfg.mk (sc_prohibit_uppercase_id_est): Add new rule. (sc_ensure_double_space_after_dot_before_id_est): Likewise. (sc_ensure_comma_after_id_est): Likewise. (old_NEWS_hash): Refresh hash via "make update-NEWS-hash". * NEWS: Change use of "id est" abbreviation via the above command. * README: Likewise. * README-prereq: Likewise. * doc/coreutils.texi: Likewise. * gl/lib/rand-isaac.c: Likewise. * gl/lib/tempname.c.diff: Likewise. * man/stdbuf.x: Likewise. * src/cat.c: Likewise. * src/copy.c: Likewise. * src/copy.h: Likewise. * src/cp.c: Likewise. * src/cut.c: Likewise. * src/dd.c: Likewise. * src/df.c: Likewise. * src/fiemap.h: Likewise. * src/longlong.h: Likewise. * src/ls.c: Likewise. * src/numfmt.c: Likewise. * src/pr.c: Likewise. * src/shred.c: Likewise. * src/shuf.c: Likewise. * src/split.c: Likewise. * tests/Coreutils.pm: Likewise. * tests/df/df-symlink.sh: Likewise. * tests/df/skip-rootfs.sh: Likewise. * tests/init.sh: Likewise. * tests/ls/color-norm.sh: Likewise. * tests/misc/basename.pl: Likewise. * tests/misc/ls-misc.pl: Likewise. * tests/misc/md5sum-bsd.sh: Likewise. * tests/misc/shred-exact.sh: Likewise. * tests/misc/sort.pl: Likewise. * tests/misc/stdbuf.sh: Likewise. * tests/misc/tac-continue.sh: Likewise. * tests/rm/r-root.sh: Likewise. * tests/tail-2/symlink.sh: Likewise.
2015-01-14tests: use compare-vs-/dev/null instead of 'test -s'Bernhard Voelker
When some program produces unexpected output, that use of compare-vs-/dev/null will ensure that the surprising output is printed in the test's output. With "test -s err" only, one would have to instrument and rerun in order to see the offending output. * cfg.mk (sc_prohibit_and_fail_1): Exempt 'compare' from this check. * tests/dd/misc.sh: Change "tests -s ... || fail=1" to "compare /dev/null ... && fail=1". * tests/misc/nice.sh: Likewise. * tests/rm/read-only.sh: Likewise. * tests/tail-2/inotify-race.sh: Likewise. * tests/touch/no-dereference.sh: Likewise. Suggested by Jim Meyering in http://lists.gnu.org/archive/html/coreutils/2015-01/msg00042.html
2015-01-14tests: add extra protection against unexpected exitsPádraig Brady
Many tests use `program ... && fail=1` to ensure expected error situations are indicated. However that would mask an unexpected exit (like a crash). Therefore explicitly check the expected exit code. Note where error messages are also verified, the extra protection is not added. * tests/init.sh (returns_): A new helper function to check the return code of a command, and used throughout the tests. * cfg.mk (sc_prohibit_and_fail_1): Add a syntax check to avoid new instances of this issue.
2015-01-08maint: skip long-lines syntax-check if unsupportedAssaf Gordon
* cfg.mk(sc_long_lines): Skip if required wc and sed options are not supported, which is currently the case on OS X.
2015-01-01maint: update all copyright year number rangesPádraig Brady
Run "make update-copyright" and then... * tests/sample-test: Adjust to use the single most recent year. * tests/du/bind-mount-dir-cycle-v2.sh: Fix case in copyright message, so that year is updated automatically in future.
2014-12-19diagnose too-large numbers betterPádraig Brady
Following on from commit v8.23-82-gaddae94, consistently diagnose numbers that are too large, so as to distinguish from other errors, and make the limits obvious. * gl/modules/xdectoint: A new module implementing xdecto[iu]max(), which handles the common case of parsing a bounded integer and exiting with a diagnostic on error. * gl/lib/xdectoimax.c: The signed variant. * gl/lib/xdectoint.c: The parameterized implementation. * gl/lib/xdectoint.h: The interface. * gl/lib/xdectoumax.c: The unsigned variant. * bootstrap.conf: Reference the new module. * cfg.mk (exclude_file_name_regexp--sc_require_config_h_first): Exclude the parameterized templates. * src/csplit.c: Output EOVERFLOW or ERANGE errors if appropriate. * src/fmt.c: Likewise. * src/fold.c: Likewise. * src/head.c: Likewise. * src/ls.c: Likewise. * src/nl.c: Likewise. * src/nproc.c: Likewise. * src/shred.c: Likewise. * src/shuf.c: Likewise. * src/stdbuf.c: Likewise. * src/stty.c: Likewise. * src/tail.c: Likewise. * src/truncate.c: Likewise. * src/split.c: Likewise. * src/pr.c: Likewise. * tests/pr/pr-tests.pl: Adjust to avoid matching errno diagnostic. * tests/fmt/base.pl: Likewise. * tests/split/l-chunk.sh: Likewise. * tests/misc/shred-negative.sh: Likewise. * tests/misc/tail.pl: Likewise. Also remove the redundant existing ERR_SUBST from test err-6. * tests/ls/hex-option.sh: Check HEX/OCT options. * tests/misc/shred-size.sh: Likewise. * tests/misc/stty-row-col.sh: Likewise.
2014-11-27rm: fix prompted number of arguments to remove on some platformsPádraig Brady
"zu" was output on solaris 8 for example rather than the number, since coreutils-8.22. * cfg.mk: Disallow %z, since we don't currently use the gnulib fprintf module, so any usage with it is non portable. Also our usage with error() currently works only through an ancillary dependency on the vfprintf gnulib module. * src/rm.c (main): Use %PRIuMAX rather than %zu for portability. * src/dd.c (alloc_[io]buf): Likewise for consistency. * src/od.c (main): Likewise. * src/split.c (set_suffix_length): Likewise. * NEWS: Mention the rm bug fix. Reported in http://bugs.gnu.org/19184
2014-11-18maint: run strftime syntax check on newer systemsPádraig Brady
* cfg.mk (sc_strftime_check): Adjust regex to handle newer glibc info formatting with different indentation and quoting.
2014-10-23maint: improve sc_long_lines syntax-check speedPádraig Brady
sc_long_lines was the slowest syntax check before$ time make sc_long_lines long_lines real 0m2.740s after $ time make sc_long_lines long_lines real 0m0.677s * src/cfg.mk (sc_dd_max_sym_length): s/--max-line-length/-L/ for compat with BSDs. (sc_long_lines): Prefilter with wc -L to only identify lines in files that have lines longer than 80 characters.
2014-09-10maint: include libstdbuf.c in extraneous headers checkPádraig Brady
* cfg.mk (sc_system_h_headers): Don't exclude libstdbuf.c. * src/libstdbuf.c: Remove headers already included in system.h.
2014-09-09maint: fix syntax-check issues in recent commitPádraig Brady
Avoid 2 new syntax-check failures introduced in commit v8.23-19-g8defcee * cfg.mk (sc_some_programs_must_avoid_exit_failure): s/exit/return/. * src/whoami.c (main): Reinstate translation marker for diagnostic.
2014-07-18maint: post-release administriviaPádraig Brady
* NEWS: Add header line for next release. * .prev-version: Record previous version. * cfg.mk (old_NEWS_hash): Auto-update.
2014-07-18maint: avoid a syntax-check warning in previous commitPádraig Brady
* cfg.mk: Avoid warning for @AMDEP_TRUE@ usage in man/local.mk
2014-06-01cut: restore special case handling of -f with -d$'\n'Pádraig Brady
commits v8.20-98-g51ce0bf and v8.20-99-gd302aed changed cut(1) to process each line independently and thus promptly output each line without buffering. As part of those changes we removed the special handling of --delimiter=$'\n' --fields=... which could be used to select arbitrary (ranges of) lines, so as to simplify and optimize the implementation while also matching the behavior of different cut(1) implementations. However that GNU behavior was in place for a long time, and could be useful in certain cases like making a separated list like `seq 10 | cut -f1- -d$'\n' --output-delimiter=,` although other tools like head(1) and paste(1) are more suited to this operation. This patch reinstates that functionality but restricts the "line behind" buffering behavior to only the -d$'\n' case. We also fix the following related edge case to be more consistent: before> printf "\n" | cut -s -d$'\n' -f1- | wc -l 2 before> printf "\n" | cut -d$'\n' -f1- | wc -l 1 after > printf "\n" | cut -s -d$'\n' -f1- | wc -l 1 after > printf "\n" | cut -d$'\n' -f1- | wc -l 1 * src/cut.c (cut_fields): Adjust as discussed above. * tests/misc/cut.pl: Likewise. * NEWS: Mention the change in behavior both for v8.21 and this effective revert. * cfg.mk (old_NEWS_hash): Adjust for originally omitted v8.21 entry. * src/paste.c: s/delimeter/delimiter/ comment typo fix.
2014-05-22maint: enforce consistent width and case of file system constantsPádraig Brady
* src/stat.c (human_fstype): Adjust a couple of existing constants to be a consistent width and capitalization so that the src/fs-magic-compare target works without reporting false positives. * cfg.mk (sc_fs-magic-compare): A new syntax check to enforce this. Improved by: Jim Meyering
2014-05-21stdbuf: support compilers other than __GNUC__Pádraig Brady
__SUNPRO_C >= 0x590 /*12.0*/ supports __attribute((constructor)) required by stdbuf, so use a more direct check for this. Note ensure that --libexecdir is set to the appropriate install location for libstdbuf.so so that stdbuf works when installed on the system like it does when running tests in the build directory. * configure.ac (stdbuf_supported): Use a test prog to determine support. * src/libstdbuf.c (stdbuf): Define appropriately for non GCC compilers, and provide early feedback (compilation warning) if trying to compile libstdbuf without the necessary support. * src/stdbuf.c (set_LD_PRELOAD): Add a note on having stdbuf look for libstdbuf.so in the default lib search path. * cfg.mk (sc_prohibit-gl-attributes): Adjust so we can exclude libstdbuf.so from prohibiting '__attribute', since we want this form to avoid silently eliding this required attribute on non GCC. Reported and tested by Rich Burridge.
2014-05-07tests: improve diagnostics when asserting empty filesPádraig Brady
* tests/chmod/c-option.sh: Use `compare /dev/null ... || fail=1` rather than `test -s ... && fail=1`, so that the file contents are output, thus improving diagnostics for failing tests. * tests/cp/acl.sh: Likewise. * tests/cp/cp-a-selinux.sh: Likewise. * tests/cp/cp-mv-enotsup-xattr.sh: Likewise. * tests/cp/reflink-perm.sh: Likewise. * tests/dd/misc.sh: Likewise. * tests/misc/env-null.sh: Likewise. * tests/misc/env.sh: Likewise. * tests/misc/nice.sh: Likewise. * tests/misc/nohup.sh: Likewise. * tests/misc/printenv.sh: Likewise. * tests/misc/xattr.sh: Likewise. * tests/mv/update.sh: Likewise. * tests/rm/deep-2.sh: Likewise. * tests/rm/read-only.sh: Likewise. * tests/split/r-chunk.sh: Likewise. * tests/tail-2/follow-stdin.sh: Likewise. * tests/tail-2/inotify-race.sh: Likewise. * tests/tail-2/wait.sh: Likewise. * tests/touch/no-dereference.sh: Likewise. * cfg.mk (sc_prohibit_test_empty:): New syntax-check. * tests/cp/proc-zero-len.sh: Adjust to avoid false syntax-check failure. * tests/cp/proc-zero-len.sh: Likewise. * tests/mv/part-symlink.sh: Likewise. * tests/tail-2/infloop-1.sh: Likewise.
2014-04-09maint: document timeout --preserve-status in v8.21 NEWSPádraig Brady
* NEWS: Add the omitted new feature. * cfk.mk (old_NEWS_hash): Adjust accordingly.
2014-04-09doc: clarify in --help that -Z doesn't take an argumentPádraig Brady
* NEWS: Fix a confusing old entry. * cfg.mk (old_NEWS_hash): Adjust accordingly. * src/cp.c (usage): Separate the -Z and --context descriptions. * src/install.c: Likewise. * src/mkdir.c: Likewise. * src/mkfifo.c: Likewise. * src/mknod.c: Likewise. Fixes http://bugs.gnu.org/17220
2014-03-05tests: avoid the :> construct which can hide errorsPádraig Brady
On most shells `:>file || framework_failure_` will not evaluate the framework_failure_ even if there was an error writing the file. shells which do evaluate the failure are ksh 93u+ and bash 4.2, while shells wich don't include bash 4.3, solaris, freebsd, dash. Furthermore this construct is problematic on Solaris 10 sh, which will try to optimize away a `:' command in a loop after the first iteration, even if it is redirected. * tests/cp/link-deref.sh: Remove the leading colon on redirections. * tests/cp/reflink-perm.sh: Likewise. * tests/id/zero.sh: Likewise. * tests/install/install-C.sh: Likewise. * tests/misc/env.sh: Likewise. * tests/misc/md5sum-bsd.sh: Likewise. * tests/misc/runcon-no-reorder.sh: Likewise. * tests/mv/partition-perm.sh: Likewise. * tests/rm/r-root.sh: Likewise. * tests/split/l-chunk.sh: Likewise. * tests/split/line-bytes.sh: Likewise. * tests/tail-2/inotify-rotate.sh: Likewise. * tests/tail-2/retry.sh: Likewise. * tests/tail-2/symlink.sh: Likewise. * tests/tail-2/wait.sh: Likewise. * tests/touch/read-only.sh: Likewise. + cfg.mk (sc_prohibit_colon_redirection): A new syntax check to avoid further instances of this creeping in.
2014-01-02maint: update all copyright year number rangesBernhard Voelker
Run "make update-copyright", but then also run this, perl -pi -e 's/2\d\d\d-//' tests/sample-test to make that one script use the single most recent year number.
2013-12-13maint: post-release administriviaPádraig Brady
* NEWS: Add header line for next release. * .prev-version: Record previous version. * cfg.mk (old_NEWS_hash): Auto-update.
2013-12-03maint: avoid '%s' quoting notation in diagnostic messagesBernhard Voelker
Add a new rule to ensure the use of quote() instead of '%s' or `%s' in format strings of diagnostics messages. * cfg.mk (sc_prohibit_quotes_notation): Add rule. * TODO: Remove the entry regarding the '%s' notation. * src/mkfifo.c (main): Remove the offending and in this case even duplicate quoting in the format string of the error diagnostic. * src/mknod.c (main): Likewise. * src/df.c (decode_output_arg): Change two invocations of error() according to the above new rule. * src/numfmt.c: Fix numerous wrong quote notations to fit the above new rule, mostly in internal debugging diagnostic messages.
2013-11-21maint: avoid perl warning in sc_check-AUTHORSBernhard Voelker
With newer perl, "make syntax-check" issues many warnings like: -i used with no filenames on the command line, reading from STDIN. * cfg.mk (sc_check-AUTHORS): Remove the -i flag in the perl invocation as it is reading from a pipe.
2013-09-12maint: avoid patching help2manBernhard Voelker
Commit cde1ea0e separated the coreutils-specific patches from help2man. Most changes had been made to accommodate to the coreutils style guide, i.e., to avoid syntax-check failures like sc_long_lines. Yet 2 changes had to be put into the patch help2man.diff. But this added the dependency to patch(1) in distribution builds. Incidentally, the 2 remaining parts of the patch can easily be done outside of help2man. Therefore, this commit partly reverts the recent separation of help2man into 'help2man.in' and 'help2man.diff', and instead uses the original help2man script. * man/help2man.in: Rename to ... * man/help2man: ... this file. * man/help2man.diff: Remove. * man/local.mk (mandeps): Remove man/help2man. (man/help2man): Remove recipe. (.x.1): Add the --info-page option when calling help2man in order to change the name of the texinfo manual from the default, "info PRG", to "info coreutils 'PRG invocation'". Furthermore, use an sed pattern to remove the sentence starting with "For complete documentation". * .gitignore (/man/help2man): Remove entry. * .x-update-copyright: Replace the entries for the files 'man/help2man.diff' and 'man/help2man.in' by 'man/help2man'. * cfg.mk (sc_long_lines): Instead of 'man/help2man.in', exempt 'man/help2man' from this test. (sc_po_check): Likewise. (sc_space_tab): Instead of 'man/help2man.diff', exempt 'man/help2man' from this test. (sc_trailing_blank): Likewise. (sc_prohibit_tab_based_indentation): Instead of 'man/help2man.in' and 'man/help2man.diff', exempt 'man/help2man'. * man/dummy-man: Recognize the option --info-page=... as no-op.
2013-09-09maint: update help2man to 1.43.3Bernhard Voelker
Instead of diverging further from the upstream GNU help2man project (http://www.gnu.org/software/help2man/), hold a copy of the original script and keep track of our changes in a separate patch file. The man pages created with the new version show the following, non-invasive differences: a) command options in the EXAMPLE sections are no longer in bold format, b) file names are underlined now consistently. * man/help2man: Rename to ... * man/help2man.in: ... this file, and update content from the upstream GNU help2man project. * man/help2man.diff: Add patch file for help2man to remove the sentence "For complete documentation ..." (see commit 5d4f09d8), and to emit "info coreutils 'PROG invocation'" into the man pages (77abf69a). * man/local.mk (mandeps): Add help2man to the dependencies of the man pages. (man/help2man): Add rule to generate this script from the upstream help2man.in file and the help2man.diff patch. * .gitignore: Add man/help2man as it is no longer version controlled. * cfg.mk (sc_long_lines): Exempt help2man.in from this check. (sc_po_check): Likewise. (sc_space_tab): Likewise. (sc_trailing_blank): Exempt man/help2man.diff from this check. (sc_prohibit_tab_based_indentation): Instead of help2man, now exempt both help2man.in and help2man.diff from this test. * .x-update-copyright: Add new file and add the above new help2man files as well as the COPYING file.
2013-07-22maint: make some shell and perl scripts executable in 'tests/'Bernhard Voelker
Some newer test scripts - partially ones from me - are not executable. It does not seem to be a problem, but for consistency and to avoid future problems on unusual platforms or shells change the permissions by adding the executable bit. * cfg.mk (sc_tests_executable): Add new syntax-check rule to ensure that all test scripts are executable. * tests/df/df-output.sh: Change file mode from 644 to 755. * tests/du/threshold.sh: Likewise. * tests/factor/run.sh: Likewise. * tests/init.sh: Likewise. * tests/misc/csplit-suppress-matched.pl: Likewise. * tests/misc/numfmt.pl: Likewise. * tests/tail-2/retry.sh: Likewise.
2013-06-18tests: use appropriate precision when printing float limitsPádraig Brady
* src/getlimits.c (print_float): Adjust to use the ftoastr module, which uses the appropriate precision so that no info is lost. * cfg.mk (sc_prohibit_continued_string_alpha_in_column_1): Exclude od.c fixes http://bugs.gnu.org/14650
2013-06-05doc: mention prior stat changeEric Blake
For a file of size 1234 bytes, commit ca9aa759 had the side effect of changing 'stat -c "%'s" file' from outputting "?s" to the nicer "1,234", depending on locale. This is worth mentioning in the NEWS. Resolves part of http://bugs.gnu.org/14556. * NEWS: Mention 8.7 improvement in stat. * cfg.mk (old_NEWS_hash): Adjust accordingly.
2013-04-25tests: fix usage of require_ulimit_Pádraig Brady
* init.cfg (require_ulimit_v_): Renamed from require_ulimit_ as this only checks for ulimit -v support. Other uses of ulimit -t and ulimit -n in tests shouldn't cause false failures if not supported. * cfg.mk (sc_prohibit_test_ulimit_without_require_): A new syntax check to ensure that require_ulimit_v_() is used iff required. * tests/misc/head-c.sh: Add missing call to require_ulimit_v_. * tests/rm/many-dir-entries-vs-OOM.sh: Likewise. * tests/split/r-chunk.sh: Remove non mandatory require_ulimit_ call. * tests/misc/sort-merge-fdlimit.sh: Likewise. * tests/cp/link-heap.sh: Adjust to renamed require_ulimit_v_. * tests/dd/no-allocate.sh: Likewise. * tests/misc/csplit-heap.sh: Likewise. * tests/misc/cut-huge-to-eol-range.sh: Likewise. * tests/misc/printf-surprise.sh: Likewise.
2013-02-20maint: cleanup up various uses of __attribute__Pádraig Brady
* src/cfg.mk (sc_prohibit-gl-attributes): Disallow the __attribute() form without trailing underscores as that is not elided where required. Also ensure we use gnulib macros rather than defining our own. * src/system.h: Remove gnulib provided macros. * src/chown-core.c: Likewise. * src/chroot.c: Likewise. * src/copy.c: Likewise. * src/csplit.c: Likewise. * src/dd.c: Likewise. * src/expr.c: Likewise. * src/extent-scan.c: Likewise. * src/factor.c: Likewise. * src/ls.c: Likewise. * src/od.c: Likewise. * src/paste.c: Likewise. * src/ptx.c: Likewise. * src/sort.c: Likewise. * src/stat.c: Likewise. * src/stty.c: Likewise. * src/system.h: Likewise. * src/tac.c: Likewise. * src/test.c: Likewise. * src/tsort.c: Likewise.
2013-02-14maint: post-release administriviaPádraig Brady
* NEWS: Add header line for next release. * .prev-version: Record previous version. * cfg.mk (old_NEWS_hash): Auto-update.
2013-02-10maint: consolidate developer debug messagesPádraig Brady
Both factor and numfmt recently introduced debug messages for developers, enabled by --verbose and ---devdebug respectively. There were a few issues though: 1. They used different mechanisms to enable these messages. 2. factor used --verbose which might be needed for something else 3. They used different methods to output the messages, and numfmt used error() which added an unwanted newline 4. numfmt marked all these messages for translation and factor marked a couple. We really don't need these translated. So we fix the above issues here while renaming the enabling option for both commands to ---debug (still undocumented). * src/factor.c (verbose): Rename to dev_debug and change from int to bool as it's just a toggle flag. (long_options): Rename --verbose to ---debug. * src/system.h (devmsg): A new inline function to output a message if enabled by a global dev_debug variable in the compilation unit. * src/numfmt.c: Use devmsg() rather than error(). Also remove the translation tags from these messages. Also change debug flag to bool from int. * tests/misc/numfmt.pl: Adjust for the ---devdebug to ---debug change. * cfg.mk (sc_marked_devdiagnostics): Add a syntax check to ensure translations are not added to devmsg calls. Reported by Göran Uddeborg in http://bugs.gnu.org/13665
2013-01-01maint: update all copyright year number rangesJim Meyering
Run "make update-copyright", but then also run this, perl -pi -e 's/2\d\d\d-//' tests/sample-test to make that one script use the single most recent year number.
2012-11-18maint: reenable accidentally-disabled cppi-check syntax-check ruleJim Meyering
* cfg.mk (exclude_file_name_regexp--sc_preprocessor_indentation): Fix typo that disabled the sc_preprocessor_indentation syntax-check rule by exempting all files. s/__ll/_ll/ The typo was introduced in commit v8.19-157-g759ebcb.
2012-11-18maint: avoid i686-specific syntax-check failureJim Meyering
* cfg.mk (_gl_TS_unmarked_extern_vars): Define.
2012-11-08df: add a test for the --output optionBernhard Voelker
* tests/df/df-output.sh: Add a test case. * tests/local.mk (all_tests): Mention the test. * cfg.mk (sc_file_system): Exempt the test from this syntax-check.
2012-11-04maint: fix the error message from sc_check-I18N-AUTHORSPádraig Brady
* cfk.mk (sc_check-I18N-AUTHORS): Fix the quoting so you don't get a 'command not found' error.
2012-11-04build: don't rely on support for '%j' printf formatPádraig Brady
* src/factor.c (print_uintmaxes): Replace with PRIuMAX. * src/join.c (check_order): Likewise. * cfg.mk (sc_check-j-printf-format): Add a syntax-check rule to flag new cases of this.