Hi, I currently maintain a set of enablement patches for coreutils for z/OS. They are available here (a few of them need cleanup): https://github.com/zopencommunity/coreutilsport/tree/main/stable-patches/src
z/OS is unique in that files can contain a file tag attribute, which consists of a ccsid encoding and text flag. Programs can also run in either EBCDIC or ASCII mode, and the z/OS C runtime automatically converts data tagged with a codepage to the program encoding on read, and vice versa on write. In some cases we need to disable this “auto conversion” where the data needs to be read verbatim as in https://github.com/zopencommunity/coreutilsport/blob/main/stable-patches/src/basenc.c.patch. We also extended stat to include additional attributes here: https://github.com/zopencommunity/coreutilsport/blob/main/stable-patches/src/stat.c.patch Another question I have is with respect to ls. z/OS ships an old version of ls with z/OS extensions. One of those extensions is ls -T, which prints out the file tag. However, this conflicts with coreutils ls -T: -T When printing in the long (-l) format, display complete time information for the file, including month, day, hour, minute, second, and year. The -D option gives even more control over the output format. This option is not defined in IEEE Std 1003.1-2008 (“POSIX.1”). Here’s the z/OS ls: https://www.ibm.com/docs/en/zos/2.4.0?topic=descriptions-ls-list-file-directory-names-attributes -T Displays file tag information associated with the file. The format of this output will be similar to the output from chtag -p. An example output: > ls -T file t IBM-1047 T=on file1 ls -T does not turn on the -l option. ls -T can be used with other options. See Long output format<https://www.ibm.com/docs/en/zos/2.4.0?topic=descriptions-ls-list-file-directory-names-attributes#lscmd__longf> for details. We haven’t implemented this in coreutils as of yet, but we would like to for compatibility. What approach would you suggest? Can we propose a compatibility environment variable or detect if the host system is z/OS? Thanks, Igor