| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
On the majority of VT100-like terminals, when you print a
character in the last column, the cursor sits in a kind of
"limbo", as if the cursor position were one column past the
edge of the screen. Thus when a line feed is output next,
the cursor is then at the start of the next line.
The Win32 console write doesn't do this; the cursor position
wraps to the start of the next line. If a newline is put out,
it translates to an extra newline going to the next-next line.
This spoils the behavior of programs which depend on the VT100
behavior.
In this patch, the VT100 behavior is simulated as follows. A
new flag in the dev_console structure is set when a character
is output to the last column. This flag is then observed in
order to discard a newline (or rather any character which is
mapped mapped to the DWN action).
* winsup/cygwin/fhandler.h (class dev_console): New boolean
data member, eat_newline. This indicates that if a character
is output which moves down to the next line, it should be
discarded rather than sent to the console.
* winsup/cygwin/fhandler_console.cc
(fhandler_console::write_normal): Set the eat_newline flag
if the text output ends up at column zero. Honor the
eat_newline flag when processing a DWN character, and clear
it when processing certain other control characters.
|
|
|
|
|
|
|
|
| |
This allows applications to distinguish whether they
are running on the stock Cygwin or Cygnal.
* winsup/cygwin/uname.cc (uname): sysname is now filled
in with CYGNAL_ prefix rather than CYGWIN_.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* winsup/cygwin/include/paths.h (_PATH_CMDEXE): New
preprocessor symbol.
* winsup/cygwin/spawn.cc (av_setup): Use _PATH_CMDEXE
rather than "/bin/sh".
* winsup/cygwin/syscalls.cc (system): Spawn _PATH_CMDEXE
with /c option rather than /bin/sh.
(ETC_SHELLS): Preprocessor symbol removed.
(shell_fp): Global variable removed.
(getusershell): Don't open ETC_SHELLS, just march through
static array of shell names. That array contains only one
entry: _PATH_CMDEXE.
(setusershell, endusershell): Remove references to shell_fp.
(popen): Exec _PATH_CMDEXE rather than "/bin/sh", and the
option is /c.
|
|
|
|
|
|
|
|
|
| |
* winsup/cygwin/spawn.cc (child_info_spawn::worker): Do not
call fhandler_console::need_invisible. It's not working
properly. In an application which has no console because it
was compiled -mwindows, calling this funcion causes a visible
console window to appear. We don't need this in Cygnal;
the Microsoft spawn functions don't pop up such windows.
|
|
|
|
|
|
| |
* winsup/cygwin/spawn.cc (child_info_spawn::worker): Add
STARTF_USESHOWWINDOW to dwFlags of the STARTUPINFOW structure,
and set wShowWindow to SW_SHOWNORMAL.
|
|
|
|
|
|
|
|
|
|
|
|
| |
In C++, the usage of static inline functions for getchar_unlocked and
putchar_unlocked may result in error messages like
error: ‘_putchar_unlocked’ was not declared in this scope
Fix this by not using the _getchar_unlocked and _putchar_unlocked
macros in C++.
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
| |
|
|
|
|
| |
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
|
|
|
|
|
|
| |
Regenerate strings/Makefile.in
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
| |
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
| |
|
| |
|
|
|
|
| |
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
| |
|
|
|
|
| |
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Remove local strnstr() implementation to fix compile error:
newlib/libc/iconv/lib/aliasesi.c:53:8: error: conflicting types for 'strnstr'
_DEFUN(strnstr, (haystack, needle, length),
^
In file included from newlib/libc/iconv/lib/aliasesi.c:29:0:
newlib/libc/include/string.h:125:10:
note: previous declaration of 'strnstr' was here
char *strnstr(const char *, const char *, size_t) __pure;
^~~~~~~
Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
|
|
|
|
| |
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
| |
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This reverts most of commit 979d467ff6e39ee5c52cf1aac7a6c9c63058141c.
We cannot avoid some bareword attributes until clang is fixed to
properly support __-decorated attributes; see this bug:
https://bugs.llvm.org/show_bug.cgi?id=34319
The macros in question expand to the empty string under gcc, so
only compilation under clang is affected, and since clang has the
bug, the obvious solution is to roll back the changes, and document
the issue.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
|
|
|
|
|
|
| |
This addresses:
https://devel.rtems.org/ticket/2135
Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
|
|
|
|
|
|
|
| |
Let systems optionally provide the _CLOCK_T_ type via
<machine/_types.h>.
Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
|
| |
|
| |
|
| |
|
|
|
|
| |
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
| |
|
|
|
|
|
|
| |
- For prevent confuse about what BSD license variant we used, 2- or
3-clause license, we change the license to FreeBSD license to make
it unambiguously refers to the 2-clause license.
|
| |
|
|
|
|
|
|
| |
Define the RENAME_NOREPLACE flag in <cygwin/fs.h> as defined on Linux
in <linux/fs.h>. The other RENAME_* flags defined on Linux are not
supported.
|
|
|
|
|
|
|
|
| |
Contributor list:
- Andrew Waterman <andrew@sifive.com>
- Palmer Dabbelt <palmer@dabbelt.com>
- Kito Cheng <kito.cheng@gmail.com>
- Alex Suykov <alex.suykov@gmail.com>
|
|
|
|
|
|
| |
Contributor list:
- Michael Neilly <mneilly@yahoo.com>
- Kito Cheng <kito.cheng@gmail.com>
|
|
|
|
|
|
|
|
|
| |
Always use the __-decorated form of an attribute name in public
headers, as the bareword form is in the user's namespace, and we
don't want compilation to break just because the user defines the
bareword to mean something else.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
|
|
|
|
|
|
|
| |
Always use the __-decorated form of an attribute name in public
headers, as the bareword form is in the user's namespace, and we
don't want compilation to break just because the user defines the
bareword to mean something else.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
|
|
|
| |
__USES_INITFINI__ ifdef was incorrectly copied from arm
(it's an arm backend thing in gcc, not meaningful on aarch64)
|
|
|
|
|
|
|
|
| |
Contributor list:
- Andrew Waterman <andrew@sifive.com>
- Palmer Dabbelt <palmer@dabbelt.com>
- Kito Cheng <kito.cheng@gmail.com>
- Scott Beamer <sbeamer@eecs.berkeley.edu>
|
| |
|
| |
|
|
|
|
| |
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Nowadays, the code fetching command line options via semi-hosting are
unconditionally pulled in, so that the semi-hosting code is still
there even I compile with option --specs=nosys.specs.
gdb ./aarch64-none-elf/libgloss/aarch64/crt0.o
(gdb) disassemble _start
0x0000000000000050 <+80>: ldr x1, 0x128 <_cpu_init_hook+48>
0x0000000000000054 <+84>: mov w0, #0x15
0x0000000000000058 <+88>: hlt #0xf000
This patch fixes this problem by wrapping the code by ARM_RDI_MONITOR.
When semi-hosting is not used, set command line options to NULL.
|
|
|
|
|
|
|
|
|
|
|
| |
On AArch64 we currently always link in crt0 regardless of if another
one is being provided by something else, like rdimon.a. This was never
an issue before as nosys was not supported on AArch64.
This updates the specs to supply a different crt0 when a semihosting
call is required.
Signed-off-by: Tamar Christina <tamar.christina@arm.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add internal inline functions _getchar_unlocked() and
_putchar_unlocked() if __CUSTOM_FILE_IO__ is not defined. These
functions get _REENT only once. Use them for getchar_unlocked() and
putchar_unlocked(). Define getchar() and putchar() to these unlocked
internal functions if __SINGLE_THREAD__ is defined, otherwise use the
external functions to use proper locking of the FILE object.
Assumes that __SINGLE_THREAD__ is not defined if __CYGWIN__ is defined.
Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
|
|
|
|
| |
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
| |
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
| |
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
| |
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
| |
- pthread_mutex::lock now takes a PLARGE_INTEGER timeout pointer
and uses that in the call to cygwait.
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|