glibc/sysdeps/unix/sysv/linux/bits/termios-c_oflag.h
Adhemerval Zanella 7b83201888 termios: Consolidate Output Modes definitions
This patch consolidates the termios symbolic constants used for ouput
modes with c_oflag member on its own header.  The Linux generic implementation
values match the kernel UAPI and each architecture with deviate values
have their own implementation (in this case alpha, powerpc, and sparc).

No semantic change is expected, checked on a build against x86_64-linux-gnu,
alpha-linux-gnu, mips64-linux-gnu, and sparc64-linux-gnu.

	* sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add
	termios-c_oflag.h.
	* sysdeps/unix/sysv/linux/bits/termios-c_oflag.h: New file.
	* sysdeps/unix/sysv/linux/alpha/bits/termios-c_oflag.h: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/bits/termios-c_oflag.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/bits/termios-c_oflag.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/termios.h (OPOST, OLCUC, ONLCR, OCRNL,
	ONOCR, ONLRET, OFILL, OFDEL, VTDLY, VT0, VT1):  Move to
	termios-c_oflag.h.
	[__USE_MISC || __USE_XOPEN] (NLDLY, NL0, NL1, CRDLY, CR0, CR1, CR2,
	CR3, TABDLY, TAB0, TAB1, TAB2, TAB3, BSDLY, BS0, BS1, FFDLY, FF0,
	FFR1): Likewise.
	[USE_MISC] (XTABS): Likewise.
	* sysdeps/unix/sysv/linux/alpha/bits/termios.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/bits/termios.h: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/bits/termios.h Likewise.
2019-01-03 09:32:12 -02:00

62 lines
2.8 KiB
C

/* termios output mode definitions. Linux/generic version.
Copyright (C) 2019 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with the GNU C Library. If not, see
<http://www.gnu.org/licenses/>. */
#ifndef _TERMIOS_H
# error "Never include <bits/termios-c_oflag.h> directly; use <termios.h> instead."
#endif
/* c_oflag bits */
#define OPOST 0000001 /* Post-process output. */
#define OLCUC 0000002 /* Map lowercase characters to uppercase on output.
(not in POSIX). */
#define ONLCR 0000004 /* Map NL to CR-NL on output. */
#define OCRNL 0000010 /* Map CR to NL on output. */
#define ONOCR 0000020 /* No CR output at column 0. */
#define ONLRET 0000040 /* NL performs CR function. */
#define OFILL 0000100 /* Use fill characters for delay. */
#define OFDEL 0000200 /* Fill is DEL. */
#if defined __USE_MISC || defined __USE_XOPEN
# define NLDLY 0000400 /* Select newline delays: */
# define NL0 0000000 /* Newline type 0. */
# define NL1 0000400 /* Newline type 1. */
# define CRDLY 0003000 /* Select carriage-return delays: */
# define CR0 0000000 /* Carriage-return delay type 0. */
# define CR1 0001000 /* Carriage-return delay type 1. */
# define CR2 0002000 /* Carriage-return delay type 2. */
# define CR3 0003000 /* Carriage-return delay type 3. */
# define TABDLY 0014000 /* Select horizontal-tab delays: */
# define TAB0 0000000 /* Horizontal-tab delay type 0. */
# define TAB1 0004000 /* Horizontal-tab delay type 1. */
# define TAB2 0010000 /* Horizontal-tab delay type 2. */
# define TAB3 0014000 /* Expand tabs to spaces. */
# define BSDLY 0020000 /* Select backspace delays: */
# define BS0 0000000 /* Backspace-delay type 0. */
# define BS1 0020000 /* Backspace-delay type 1. */
# define FFDLY 0100000 /* Select form-feed delays: */
# define FF0 0000000 /* Form-feed delay type 0. */
# define FF1 0100000 /* Form-feed delay type 1. */
#endif
#define VTDLY 0040000 /* Select vertical-tab delays: */
#define VT0 0000000 /* Vertical-tab delay type 0. */
#define VT1 0040000 /* Vertical-tab delay type 1. */
#ifdef __USE_MISC
# define XTABS 0014000
#endif