summaryrefslogtreecommitdiffstats
path: root/po
AgeCommit message (Collapse)AuthorLines
2026-02-28build: update gnulib submodule to latestCollin Funk-1/+0
* po/POTFILES.in: Remove recently added lib/cygpath.c dependency after gnulib commit 2a893de047 (filesystem-remote: New module., 2026-02-28).
2026-02-28build: update gnulib to latestPádraig Brady-0/+1
* NEWS: Mention the more encompassing remoteness check for df. * po/POTFILES.in: Add new lib/cygpath.c dependency.
2026-01-01maint: run 'make update-copyright'Collin Funk-1/+1
2025-11-16maint: rearrange cksum modules so main is in cksum.cPádraig Brady-1/+1
* src/cksum.c: -> src/cksum_crc.c * src/cksum.h: -> src/cksum_crc.h * src/digest.c: -> src/cksum.c * src/local.mk: Adjust accordingly. * cfg.mk: Likewise. * po/POTFILES.in: Likewise. * src/cksum_avx2.c: Likewise. * src/cksum_avx512.c: Likewise. * src/cksum_pclmul.c: Likewise. * src/cksum_vmull.c: Likewise.
2025-09-15cp: refactor out data copyingPaul Eggert-0/+1
* po/POTFILES.in, src/local.mk (copy_sources): Add the new file. * src/copy.c: Move the #includes of alignalloc.h, buffer-lcm.h, fadvise.h, full-write.h, ioblksize.h to copy-file-data.c. (enum copy_debug_val, struct copy_debug): Move these decls to copy.h. (punch_hole, create_hole, is_CLONENOTSUP, sparse_copy) (write_zeros, lseek_copy, HAVE_STRUCT_STAT_ST_BLOCKS) (enum scantype, struct scan_inference, infer_scantype): Move to copy-file-data.c. (copy_reg): Move the data-copying part of this function to the new function copy_file_data in copy-file-data.c. * src/copy-file-data.c: New file, taken from part of copy.c.
2025-07-31date: fix calendar-related test failures on macOS and OpenBSDBruno Haible-0/+1
* bootstrap.conf (gnulib_modules): Add xsetenv. * src/date.c: Include xsetenv.h. (set_LC_TIME): New function. (show_date_helper): Call set_LC_TIME instead of setlocale. * po/POTFILES.in: Add lib/xsetenv.c. Fixes https://bugs.gnu.org/79118
2025-01-01maint: update all copyright year number rangesPádraig Brady-1/+1
Update to latest gnulib with new copyright year. Run "make update-copyright" and then... * gnulib: Update included in this commit as copyright years are the only change from the previous gnulib commit. * tests/init.sh: Sync with gnulib to pick up copyright year. * bootstrap: Likewise. * tests/sample-test: Adjust to use the single most recent year.
2024-08-15maint: adjust to recent removal of verror.cPaul Eggert-1/+0
* po/POTFILES.in: Remove lib/verror.c
2024-05-05maint: factor out the common show_date functionalityNikolay Nechaev-0/+1
* src/show-date.{h,c}: Declaration and definition of show_date. * src/du.c: Wse the common show_date instead of the previous local function. * src/date.c: Wse the common show_date via a wrapper show_date_helper. * src/local.mk: Corresponding adjustments.
2024-03-24doc: fix translation issue in chown/chgrp amalgamationPádraig Brady-1/+0
* src/chown-core.h (emit_from_option_description): The conditional string composition here caused issues for translators. Instead move to a more general description ... (src/chown.c (usage): ... here. Fixes https://bugs.gnu.org/69985
2024-01-01maint: update all copyright year number rangesPádraig Brady-1/+1
Update to latest gnulib with new copyright year. Run "make update-copyright" and then... * gnulib: Update included in this commit as copyright years are the only change from the previous gnulib commit. * tests/init.sh: Sync with gnulib to pick up copyright year. * bootstrap: Manually update copyright year, until we fully sync with gnulib at a later stage. * tests/sample-test: Adjust to use the single most recent year.
2023-12-27maint: merge chgrp and chown sourcesPádraig Brady-1/+0
chown is a close superset of chgrp functionality, so merge sources to avoid unwanted divergence in future. This removes about 300 lines in chgrp.c * build-aux/gen-single-binary.sh: Generate new rules for chgrp. * cfg.mk: Exclude new wrappers. * po/POTFILES.in: Remove chgrp.c * src/chgrp.c: Remove. * src/chown-chgrp.c: New wrapper. * src/chown-chown.c: Likewise. * src/chown.c (main): Prepend ':' for chgrp(1). * src/chown.h: Define both operating modes. (usage): Adjust depending on utility being called. * src/coreutils-chgrp.c: Likewise. * src/local.mk: Reference new wrappers.
2023-12-15chgrp: add --from parameter similar to chownPádraig Brady-0/+1
* doc/coreutils.texi (chown invocation): Convert --from option description to a macro and call from ... (chgrp description): ... here. * src/chown-core.h (emit_from_option_description): A new function refactored from ... * src/chown.c (usage): ... here, and called from ... * src/chgrp.c (usage): ... here. (main): Accept the --from option as chown(1) does. * po/POTFILES.in: Add chown-core.h as now translated. * tests/chown/basic.sh: Decouple the root user from id 0. * tests/chgrp/from.sh: A new test largely based on chown/basic.sh. * tests/local.mk: Reference the new test. * NEWS: Mention the new feature. Suggested by Ed Neville.
2023-08-14maint: avoid syntax-check failurePádraig Brady-1/+1
* po/POTFILES.in: Cater to lib/file-type.c adjustments as suggested by sc_po_check.
2023-07-18tac: fall back to /tmp if $TMPDIR is unavailablePádraig Brady-0/+1
This also refactors temp_stream() to its own module, in preparation for use by split. * src/tac.c: Refactor temp_stream() out to ... * src/temp-stream.c: ... A new module mostly refactored from tac, but uses tmpdir to more robustly support $TMPDIR, while falling back to /tmp if not available. * src/temp-stream.h: The new module interface. * src/local.mk: Reference the new module from tac. * tests/tac/tac.pl: Adjust to non failing missing $TMPDIR. * po/POTFILES.in: Reference the new module with translatable strings. * NEWS: Mention the user visible improvements to tac TMPDIR handling.
2023-06-09build: update gnulib submodule to latestPádraig Brady-1/+0
* gnulib: Update to latest. * po/POTFILES.in: Remove recent sc_po_check workaround. * tests/misc/date-debug.sh: Adjust as per spelling fix.
2023-06-06maint: avoid syntax-check failurePádraig Brady-0/+1
* po/POTFILES.in: Add lib/propername.h due to new comments that trigger sc_po_check.
2023-01-01maint: update all copyright year number rangesPádraig Brady-1/+1
Update to latest gnulib with new copyright year. Run "make update-copyright" and then... * tests/init.sh: Sync with gnulib to pick up copyright year. * bootstrap: Manually update copyright year, until we fully sync with gnulib at a later stage. * tests/sample-test: Adjust to use the single most recent year.
2022-01-02maint: update all copyright year number rangesPádraig Brady-1/+1
Run "make update-copyright" and then... * gnulib: Update to latest with copyright year adjusted. * tests/init.sh: Sync with gnulib to pick up copyright year. * bootstrap: Likewise. * tests/sample-test: Adjust to use the single most recent year.
2021-09-15digest: refactor cksum(1) into digest.cPádraig Brady-1/+0
* cfg.mk: Adjust cksum.c to not require config.h and support a main (for crctab) without calling bindtextdomain(). * po/POTFILES.in: Remove cksum_pclmul.c since it no longer concerns itself with diagnostics. * src/cksum.c: Refactor to just providing stream digest, and digest printing functionality. * src/cksum.h: Adjust to the new interface. * src/cksum_pclmul.c: Remove diagnostics, and determine errors internally. * src/crctab.c: Separate from cksum.h since that's now included multiple times. * src/digest.c: Provide cksum(1) functionality if -DHASH_ALGO_CKSUM * src/local.mk: Adjust to new crctab.c and HASH_ALGO_CKSUM define.
2021-09-15digest: refactor sum(1) into digest.cPádraig Brady-1/+0
Since digest will be providing all digest functionality, refactor sum.c into it. * po/POTFILES.in: sum.c no longer has translatable strings so remove. * src/digest.c: Call out to new stream interfaces in sum.c * src/local.mk: Adjust sources for the sum binary. * src/sum.c: Provide a stream interface for BSD and SYSV digests. * src/sum.h: A new file to declare the exported functions in sum.c
2021-09-15maint: rename md5sum.c to more general digest.cPádraig Brady-1/+1
md5sum.c will be the base for all digest functions, so rename accordingly. * src/md5sum.c: Rename to ... * src/digest.c: ... renamed from md5sum.c * scripts/git-hooks/commit-msg: Allow digest: commit prefix. * po.POTFILES.in: Adjust to new name. * src/local.mk: Likewise.
2021-03-15cksum: use pclmul hardware instruction for CRC32 calculationKristoffer Brånemyr-0/+1
Use cpuid to detect CPU support for hardware instruction. Fall back to slice by 8 algorithm if not supported. A 500MiB file improves from 1.40s to 0.67s on an i3-2310M * configure.ac [USE_PCLMUL_CRC32]: A new conditional, set when __get_cpuid() and clmul compiler intrinsics are supported. * src/cksum.c (pclmul_supported): A new function using __get_cpuid() to determine if pclmul instructions are supported. (cksum): A new function refactored from cksum_slice8(), which calls pclmul_supported() and then cksum_slice8() or cksum_pclmul() as appropriate. * src/cksum.h: Export the crctab array for use in the new module. * src/cksum_pclmul.c: A new module to implement using pclmul intrinsics. * po/POTFILES.in: Reference the new cksum_pclmul module. * src/local.mk: Likewise. Note we build it as a separate library so that it can be portably built with separate -mavx etc. flags. * tests/misc/cksum.sh: Add new test modes for pertinent buffer sizes.
2021-01-01maint: update all copyright year number rangesPádraig Brady-1/+1
Run "make update-copyright" and then... * gnulib: Update to latest with copyright year adjusted. * tests/init.sh: Sync with gnulib to pick up copyright year. * bootstrap: Likewise. * tests/sample-test: Adjust to use the single most recent year.
2020-11-23maint: fix syntax-check failurePádraig Brady-1/+0
* po/POTFILES.in (src/selinux.c): Remove entry as this source doesn't contain any translatable strings anymore; avoids a sc_po_check failure.
2020-11-23maint: use absolute paths with selabel_lookupPádraig Brady-0/+1
* src/selinux.c: selabel_lookup requires absolute paths (while only older matchpathcon before libselinux < 2.1.5 2011-0826 did). * po/POTFILES.in: Readd src/selinux.c since we now have a translatable error message.
2020-11-22maint: minor cleanupBernhard Voelker-1/+0
The previous commit introduced a couple of syntax-check failures. * .gitignore (/lib/se-label.h): Add entry to silence the sc_gitignore_missing check. Sort entries in C locale. * po/POTFILES.in (src/selinux.c): Remove entry as this source doesn't contain any translatable strings anymore; avoids a sc_po_check failure. * src/mv.c: Replace tabs by spaces to avoid complaints by sc_prohibit_tab_based_indentation.
2020-01-01maint: update all copyright year number rangesPádraig Brady-1/+1
Run "make update-copyright" and then... * gnulib: Update to latest with copyright year adjusted. * tests/init.sh: Sync with gnulib to pick up copyright year. * bootstrap: Likewise. * tests/sample-test: Adjust to use the single most recent year.
2019-08-10maint: add lib/argmatch.h to po/POTFILES.inBernhard Voelker-0/+1
* po/POTFILES.in (lib/argmatch.h): Add to avoid sc_po_check error: "maint.mk: you have changed the set of files with translatable \ diagnostics;"
2019-01-01maint: update all copyright year number rangesAssaf Gordon-1/+1
Run "make update-copyright" and then... * gnulib: Update to latest with copyright year adjusted. * tests/init.sh: Sync with gnulib to pick up copyright year. * bootstrap: Likewise. * tests/sample-test: Adjust to use the single most recent year.
2018-12-21maint: rename base64.c to basenc.cAssaf Gordon-1/+1
In preparation for adding 'basenc' program. Suggested in https://lists.gnu.org/r/coreutils/2018-11/msg00019.html . * src/base64.c: Rename to src/basenc.c. * src/local.mk: Update base*_SOURCES definitions. * po/POTFILEs.in: Rename base64 to basenc.
2018-01-01maint: update all copyright year number rangesPádraig Brady-1/+1
Run "make update-copyright" and then... * gnulib: Update to latest with copyright year adjusted. * tests/init.sh: Sync with gnulib to pick up copyright year. * bootstrap: Likewise. * tests/sample-test: Adjust to use the single most recent year.
2017-02-17maint: tweaks so syntax tests pass for previous commitPádraig Brady-1/+1
* .gitignore: placate sc_gitignore_redundant. * po/POTFILES.in: placate sc_po_check.
2017-02-08doc: only distribute 5 years of ChangeLogsPádraig Brady-253/+0
Remove old log files that have corresponding entries in the source code repository. This saves about 2.5MB uncompressed, 0.5M compressed. * Makefile.am (gen-ChangeLog): Adjust to taking all logs since a particular version (8.15 in this case). Also mention in the truncated log where to get older entries. (changelog_etc): Remove the no longer distributed files. * build-aux/git-log-fix: Remove now unused entries. * ChangeLog-200[5-8]: Delete. * doc/ChangeLog-2007: Likewise. * po/ChangeLog-2007: Likewise. * old/*: Likewise.
2017-01-01maint: update all copyright year number rangesPádraig Brady-2/+2
Run "make update-copyright" and then... * gnulib: Update to latest with copyright year adjusted. * tests/init.sh: Sync with gnulib to pick up copyright year. * bootstrap: Likewise. * tests/sample-test: Adjust to use the single most recent year.
2016-08-09maint: refactor common expand(1) and unexpand(1) codeAssaf Gordon-0/+1
* src/expand.c, src/unexpand.c: Move global variables from here... * src/expand-common.h, src/expand-common.c: ... to here. * src/expand.c, src/unexpand.c: (parse_tab_stops, validate_tab_stops, next_file): Move identical functions to new module. (add_tab_stop): Move to new module, including additional code from 'unexpand' (keeping max_column_width) which will have no effect in when used in 'expand'. Refactor common next-column calculation code into a new function 'get_next_tab_column'. * src/local.mk: (src_expand_SOURCES, src_unexpand_SOURCES): Add 'expand-common.c'; (noinst_HEADERS): Add 'expand-common.h'. * po/POTFILES.in: Add 'expand-common.c'. * tests/misc/expand.pl: Add more tests. * tests/misc/unexpand.pl: Likewise. * TODO: Move conclusions to above test after investigation.
2016-01-01maint: update all copyright year number rangesPádraig Brady-2/+2
Run "make update-copyright" and then... * gnulib: Update to latest with copyright year adjusted. * tests/init.sh: Sync with gnulib to pick up copyright year. * bootstrap: Likewise. * tests/sample-test: Adjust to use the single most recent year.
2015-09-12cut: refactor into set-fields moduleAssaf Gordon-0/+1
Extract the functionality of parsing --field=LIST into a separate module, to be used by other programs. * src/cut.c: move field parsing code from here ... * src/set-fields.{c,h}: ... to here. (set_fields): generalize by supporting multiple parsing/reporting options. (struct range_pair): rename to field_range_pair. * src/local.mk: link cut with set-field. * po/POTFILES.in: add set-field.c * tests/misc/cut.pl: update wording of error messages
2015-01-01maint: update all copyright year number rangesPádraig Brady-2/+2
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-07-13build: support building all tools in a single binaryAlex Deymo-0/+1
Add the --enable-single-binary option to the configure file. When enabled, this option builds a single binary file containing the selected tools. Which tool gets executed depends on the value of argv[0] which can be set implicitly through symlinks to the single program. This setup reduces significantly the size of a complete coreutils install, since code from lib/libcoreutils.a is not duplicated in every one of the more than 100 binaries. Runtime overhead is increased due to more dynamic libraries being loaded, and extra initialization being performed for all utils. Also initially a larger binary is loaded from storage, though this is usually alleviated due to caching and lazy mmaping of unused blocks, and in fact the single binary should have better caching characteristics. Comparing the size of the individual versus single binary on x86_64: $ cd src $ size coreutils $ size -t $(../build-aux/gen-lists-of-programs.sh --list-progs | grep -Ev '(coreutils|libstdbuf)') | tail -n1 text data bss dec hex filename 1097416 5388 88432 1191236 122d44 src/coreutils 4901010 124964 163768 5189742 4f306e (TOTALS) Storage requirements are reduced similarly: $ cd src $ du -h coreutils $ du -ch $(../build-aux/gen-lists-of-programs.sh --list-progs | grep -Ev '(coreutils|libstdbuf)') | tail -n1 1.2M coreutils 5.3M total When installing, the makefile will create either symlinks or shebangs based on the --enable-single-binary setting, for each configured tool. In this way, all the tools are still callable individually, but they are all implemented by the same "coreutils" binary installed on the same directory. * .gitignore: Add new generated files. * Makefile.am: New rules to generate build-aux/gen-single-binary.sh and install symlinks. * NEWS: Mention the new feature. * README: Add "coreutils" to the list of utils. * bootstrap.conf: Regenerate src/single-binary.mk * build-aux/gen-lists-of-programs.sh: New --list-progs option. * build-aux/gen-single-binary.sh: Regenerate * configure.ac: New --enable-single-binary option and other variables. Disallow --enable-single-binary=symlinks with --program-prefix et. al. * man/coreutils.x: Manpage hook. * man/local.mk: Add manpage hook and fix dependencies. * src/coreutils.c: Multicall implementation. * src/local.mk: New rules for the single binary option. * tests/local.mk: Add $single_binary_progs to support require_built_() from init.cfg * tests/misc/env.sh: Avoid the use of symlink to echo. * tests/misc/help-version.sh: Add exception for coreutils. * tests/install/basic-1.sh: Really avoid using ginstall strip functionality if there is an issue with the independent strip command. * src/kill.c: Changes to call exit() in main. * src/readlink.c: Likewise. * src/shuf.c: Likewise. * src/timeout.c: Likewise. * src/truncate.c: Likewise.
2014-05-21tests: use chroot --user rather than internal setuidgid toolPádraig Brady-1/+0
* init.cfg (require_root_): Adjust to use chroot, and make `require_built_ chroot` implicit when chroot used in the test. * po/POTFILES.in: Remove reference to setuidgid tool. * src/.gitignore: Likewise. * src/local.mk: Likewise. * src/setuidgid.c: Remove. * tests/cp/preserve-gid.sh: s/setuidgid/chroot --user/. * tests/cp/special-bits.sh: Likewise. * tests/id/setgid.sh: Likewise. * tests/misc/truncate-owned-by-other.sh * tests/mv/sticky-to-xpart.sh: Likewise. * tests/rm/fail-2eperm.sh: Likewise. * tests/rm/no-give-up.sh: Likewise. * tests/touch/now-owned-by-other.sh: Likewise. * tests/misc/chroot-fail.sh: Skip if chroot not built.
2014-01-17build: remove no longer used spawn-pipe files from POTFILES.inPádraig Brady-3/+0
This should have been part of the previous commit v8.22-14-gf18999b * po/POTFILES.in: Remove gnulib files no longer used. Prompted by the continuous integration build failure at: http://hydra.nixos.org/build/8288209/
2014-01-02maint: update all copyright year number rangesBernhard Voelker-2/+2
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-11-27selinux: a new module implementing "restorecon" functionalityDaniel J Walsh-0/+1
* src/selinux.c: A new module implementing "restorecon" functionality. There are two main functions to adjust the type of the referenced file system item. defaultcon() will setup the process context so that new items will have the required context without races. This is the preferred method. For existing files, the equivalent restorecon() is available which has two modes. With the "local" parameter set to false, restorecon() will adjust the type according to the system configuration for that file, and set to true will update the context as per the context for the current process (disregarding type). * src/selinux.h: Likewise. * po/POTFILES.in: Reference the new module.
2013-05-12build: avoid new syntax-check failureJim Meyering-1/+1
* po/POTFILES.in: Reflect renaming.
2013-02-04numfmt: a new command to format numbersAssaf Gordon-0/+1
* AUTHORS: Add my name. * NEWS: Mention the new program. * README: Reference the new program. * src/numfmt.c: New file. * src/.gitignore: Ignore the new binary. * build-aux/gen-lists-of-programs.sh: Update. * scripts/git-hooks/commit-msg: Allow numfmt: commit prefix. * po/POTFILES.in: Add new c file. * tests/misc/numfmt.pl: A new test file giving >93% coverage. * tests/local.mk: Reference the new test. * man/.gitignore: Ignore the new man page. * man/local.mk: Reference the new man page. * man/numfmt.x: A new template. * doc/coreutils.texi: Document the new command.
2013-01-01maint: update all copyright year number rangesJim Meyering-2/+2
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-06-06su: remove program (util-linux is now the best source for it)Jim Meyering-1/+0
* README: Omit "su" from list of programs. * src/su.c: Remove file. * src/Makefile.am: Remove su-related rules and variables. * tests/misc/su-fail: Remove test. * tests/Makefile.am (TESTS): Remove misc/su-fail. * tests/misc/invalid-opt: Remove su-related code. * src/.gitignore: Remove su. * man/su.x: Remove file. * man/Makefile.am (su.1): Remove rule. * po/POTFILES.in: Remove su.c from the list. * TODO: Remove ancient entry. * NEWS (Changes in behavior): Mention it. * doc/coreutils.texi: Remove su-related description. * AUTHORS: Remove su. * m4/lib-check.m4 (cu_LIB_CHECK): Remove file/macro. * configure.ac: Remove su-related code and sole use of cu_LIB_CHECK. * scripts/git-hooks/commit-msg: Remove su from this list, too.
2012-03-22maint: refactor relpath() from `realpath` for use by `ln`Pádraig Brady-0/+1
* src/relpath.c: Refactored from realpath.c and adjusted to support returning the relative path rather than just printing to stdout. * src/relpath.h: Export the relpath function. * src/Makefile.am: Reference the refactored relpath module. * po/POTFILES.in: Likewise. * src/realpath.c: Adjust to the refactored relpath module.
2012-03-21build: add numerous gnulib modules, mostly for improved portabilityJim Meyering-0/+3
* bootstrap.conf (gnulib_modules): Add numerous modules for improved portability. Reported by Eric Blake in http://thread.gmane.org/gmane.comp.gnu.coreutils.general/2426/focus=2489 * po/POTFILES.in: Add new files.