4
0
mirror of git://sourceware.org/git/newlib-cygwin.git synced 2025-01-20 13:29:24 +08:00

12832 Commits

Author SHA1 Message Date
Jon Turney
ff315bd18f
Cygwin: Use grep in text mode to look for version strings
Invoke grep in text mode when looking for version strings inside the
cygwin DLL, so it outputs something more informative than:

  Binary file ../cygwin/cygwin0.dll matches
2020-11-18 16:26:23 +00:00
Corinna Vinschen
aa106b29a6 malloc/nano-malloc: correctly check for out-of-bounds allocation reqs
The overflow check in mEMALIGn erroneously checks for INT_MAX,
albeit the input parameter is size_t.  Fix this to check for
__SIZE_MAX__ instead.  Also, it misses to check the req against
adding the alignment before calling mALLOc.

While at it, add out-of-bounds checks to pvALLOc, nano_memalign,
nano_valloc, and Cygwin's (unused) dlpvalloc.

Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2020-11-17 10:52:34 +01:00
Corinna Vinschen
3b80191f33 Cygwin: testsuite: fix insecure usage of printf in libltp
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2020-11-16 15:57:31 +01:00
Ken Brown
22d1ebacfc Cygwin: path_conv::eq_worker: add NULL pointer checks
Don't call cstrdup on NULL pointers.

This fixes a crash that was observed when cloning an fhandler whose
path_conv member had freed its strings.
2020-11-16 08:15:31 -05:00
Jon Turney
140b0a6484
Cygwin: Fix testsuite tmpdir creation with non-default cygdrive prefix 2020-11-12 15:30:35 +00:00
Ken Brown
f505e7a032 Cygwin: fhandler_fifo: reduce size
Replace the 'WCHAR pipe_name_buf[48]' class member by 'PWCHAR
pipe_name_buf', and allocate space for the latter as needed.

Change the default constructor to accommodate this change, and add a
destructor that frees the allocated space.

Also change get_pipe_name and clone to accommodate this change.
2020-11-09 08:47:29 -05:00
Jon Turney
f3ed5f2fe0
Cygwin: Ensure temporary directory used by tests exists
By default, libltp tests will create temporary files in a subdirectory
of /tmp, which will (nowadays) be located relative to the test DLL (by
assuming that it is in /bin).  This will evaluate to the directory
$target_builddir/winsup/tmp, which doesn't exist.

The location used for these temporary files can be explicitly controlled
by setting the TDIRECTORY env var.  Arrange to set that env var to the
/cygdrive path of a tmp subdirectory of the build directory.

Unfortunately, libltp doesn't clean the temporary directory if
TDIRECTORY is set, and some tests assume they are started in a clean
directory, so we need to do that in tcl.
2020-11-08 14:42:02 +00:00
Jon Turney
9cdb799806
Cygwin: Set PATH for tests to pick up cygwin0.dll
Set the PATH so that tests can pick up cygwin0.dll.  Looks like this was
dropped by accident in 2e488e95 ("Don't rely on in-build tools"), so
restore it as it was prior to 9d89f634.
2020-11-08 14:41:55 +00:00
Jon Turney
0c448d53e1
Cygwin: Check exit code of a test, rather than stdout
In winsup.exp, don't consider a command failed if it produced any output
(e.g. if the compiler produced warnings).  Instead check the exit code.
2020-11-08 14:41:46 +00:00
Jon Turney
fb967562b0
Cygwin: Use absolute path to libltp includes
Use an absolute path to libltp includes, to allow for the fact that
we'll be compiling tests in a subdirectory.
2020-11-08 14:41:38 +00:00
Jon Turney
e6248c2fd0
Cygiwn: Detect and use MinGW compilers for testsuite wrappers
Drop MINGW_FE, which I can't find any trace of, and instead detect and
use MinGW compilers.

This requires adding AC_CANONICAL_TARGET, to set $target_cpu.
2020-11-08 14:41:28 +00:00
Jon Turney
20b5e6375c
Cygwin: Define target_builddir autoconf and Makefile variables
This is now required as cygwin_build is defined in terms of
target_builddir.

(Note that in other subdirectories, the autoconf variable
target_builddir is AC_SUBST-ed as a side-effect of using a macro from
winsup/acinclude.m4, which is perhaps less than ideal)
2020-11-08 14:41:08 +00:00
Jon Turney
551df57fa0
Cygwin: Move adding libltp to VPATH after Makefile.common
Move adding libltp to the VPATH after Makefile.common, which sets VPATH.
2020-11-08 14:40:59 +00:00
Jon Turney
187281b711
Cygwin: Avoid 'Makefile.in seems to ignore the --datarootdir setting' warning
Avoid a 'Makefile.in seems to ignore the --datarootdir setting' warning
when configuring in testsuite directory.
2020-11-08 14:40:47 +00:00
Jon Turney
7b65f83c22
Cygwin: Add rule to testsuite Makefile to regenerate it when needed 2020-11-08 14:40:41 +00:00
Jon Turney
a7cb126b14
Cygwin: Always configure in testsuite subdirectory
Doing this properly using AC_CONFIG_SUBDIRS is necessary to get the
correct paths in flags given to the compiler specified in CC/CXX.
2020-11-08 14:40:34 +00:00
Jon Turney
58ca21cf78
Cygwin: Add testsuite directory to autogen.sh
Also remove unneeded aclocal.m4 for an old aclocal version.
2020-11-08 14:40:26 +00:00
Ken Brown
26a5aff2a9 Cygwin: FIFO: update_my_handlers: fix handle leak 2020-11-06 08:16:45 -05:00
Jon Turney
5f3a301fd5
Cygwin: Drop passing '-c' compiler flag into gentls_offsets
That script appends a '-E', since we only use $(CC) to preprocess, and
thus adding '-c' is having no effect.
2020-11-02 16:49:03 +00:00
Jon Turney
22d79c79b5
Cygwin: Remove rules for building libcygwin_s.a
Untouched since added in 66a83f3e, and described as 'non-working'.
2020-11-02 16:49:02 +00:00
Jon Turney
a5398eaecb
Cygwin: Remove Makefile contents conditional on PREPROCESS, which is never defined 2020-11-02 16:49:01 +00:00
Jon Turney
f4bfaddb3c
Cygwin: Drop autoconf variable all_host
The autoconf variable all_host is used to make building of the stub
library used by the testsuite conditional on not cross-compiling.

Make it unconditional, so we will notice if it's broken when
cross-compiling.
2020-11-02 16:49:00 +00:00
Jon Turney
29817cc41e
Cygwin: Remove autoconf variable DLL_NAME
Remove autoconf variable DLL_NAME, which has a constant value which is
only used in one place.
2020-11-02 16:48:59 +00:00
Jon Turney
d555072c94
Cygwin: Drop AC_SUBST(build_exeext)
The autoconf variable build_exeext isn't defined, and (since the doc
subdirectory doesn't build any executables) it's value isn't used.
2020-11-02 16:48:58 +00:00
Jon Turney
174268f4bb
Cygwin: Remove intro2man.stamp on clean 2020-11-02 16:48:57 +00:00
Jon Turney
9517e5f503
Revert "Cygwin: gendef generates sigfe.s and cygwin.def"
This reverts commit 74a164f1c162645f4389bbd9edb2f89a630853af.

Shame we can't use '&:' for a grouped target here, since that requires
GNU make 4.3
2020-10-30 16:31:08 +00:00
Jon Turney
7fa743ca94
Cygwin: Restore setting CC and CXX Makefile variables
b55e3f19 was a bit too aggressive in dropping, rather than just
un-exporting these Makefile variables.  We need to set these to the
configured host compiler if we are cross-compiling, otherwise they
default to the build compiler.

Also export CC to the mkvers.sh script (which requires it since
4eca5e6a).  It's unclear why we can't just cause windres to use the
build 'cpp' as the pre-processor there.
2020-10-28 15:23:56 +00:00
Ken Brown
262de3ecf0 Cygwin: fix return value of sqrtl on negative infinity
The return value is now -NaN.

This fixes a bug in the mingw-w64 code that was imported into Cygwin.
The fix is consistent with Posix and Linux.  It is also consistent
with the current mingw-w64 code, with one exception: The mingw-w64
code sets errno to EDOM if the input is -NaN, but this appears to
differ from Posix and Linux.

Addresses: https://cygwin.com/pipermail/cygwin/2020-October/246606.html
2020-10-27 10:23:27 -04:00
Takashi Yano via Cygwin-patches
490d4862df Cygwin: pty: Disable ResizePseudoConsole() if stdout is redirected.
- Calling ResizePseudoConsole() generates some escape sequences.
  Due to this behaviour, if the output of non-cygwin app is piped
  to less, screen is sometimes distorted when the screen is resized.
  With this patch, ResizePseudoConsole() is not called if stdout is
  redirected.
2020-10-27 10:03:42 +01:00
Takashi Yano via Cygwin-patches
7b996f807e Cygwin: pty: Fix race condition in initialization of pseudo console.
- If output of non-cygwin process is piped to cygwin process, such
  as less, the non-cygwin process sometimes fails to start and hangs.
  This patch fixes the issue.
2020-10-26 10:04:12 +01:00
Ken Brown via Cygwin-patches
3752ab804b Cygwin: AF_INET and AF_LOCAL: recv_internal: fix MSG_WAITALL support
If MSG_WAITALL is set, recv_internal calls WSARecv or WSARecvFrom in a
loop, in an effort to fill all the scatter-gather buffers.  The test
for whether all the buffers are full was previously incorrect.
2020-10-23 08:23:27 -04:00
Jon Turney
0c3c451ae3
Cygwin: Drop do-nothing install_target target 2020-10-21 17:11:15 +01:00
Jon Turney
c50e0d8ba4
Cygwin: Drop do-nothing install_host target
Drop do-nothing install_host target, which is only used when not
cross-compiling.
2020-10-21 17:11:09 +01:00
Jon Turney
08f5cc2ef4
Cygwin: Remove nostdlib Makefile variable
It's used in one place, and it's value is unconditional.
2020-10-21 17:11:02 +01:00
Jon Turney
74a164f1c1
Cygwin: gendef generates sigfe.s and cygwin.def
Express that gendef generates sigfe.s and cygwin.def in a slightly less
nutty way.
2020-10-21 17:10:56 +01:00
Jon Turney
b5bc608b32
Cygwin: Drop cygwin version.o from cygserver
The data it contains isn't referenced since 9e9bc3a4.
2020-10-21 17:10:50 +01:00
Jon Turney
161cd505e5
Cygwin: Remove lsaauth
Remove lsaauth, not built since 2741dd05.
2020-10-21 17:10:44 +01:00
Jon Turney
3662877f31
Cygwin: Use aclocal option --system-acdir rather than --acdir
In autogen.sh, use 'aclocal --system-acdir' rather than 'aclocal --acdir'.

'--acdir' was deprecated in automake 1.11 and removed in automake 1.13.
2020-10-18 14:55:15 +01:00
Jon Turney
78bfd7dbb9
Cygwin: Remove --with-windows-{libs,headers} 2020-10-18 14:55:14 +01:00
Jon Turney
b55e3f1916
Cygwin: Remove ccwrap
ccwrap massages the compiler's standard include directories to remove
'/usr/include/w32api', with the intent of allowing it to be overriden by
'--with-windows-headers' (See 4c36016b).

I'm not 100% convinced that this is always working as desired, since in
some places w32api includes are done using <w32api/something.h>, which
will find them via the path /usr/include.

If this does turn out to be needed, this could also be implemented by
constructing the appropriate compiler flags once, rather than on every
compiler invocation.
2020-10-18 14:55:13 +01:00
Jon Turney
5601d53640
Cygwin: Stop using c++wrap for MinGW-compiled utilities
Stop using c++wrap for MinGW-compiled utilities.

(Partially reverts 96079146)
2020-10-18 14:55:11 +01:00
Torbjörn SVENSSON via Newlib
7ed952000c libc/time: Move internal newlib tz-structs into own header
As discussed in GCC bug 97088
(https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97088), parameters in
prototypes of library functions should use reserved names, or no name
at all.

This patch moves the internal struct __tzrule_struct to its own
internal header sys/_tz_structs.h.  This is included from newlib's
time code as well as from Cygwin's localtime wrapper.

Signed-off-by: Torbjörn SVENSSON <torbjorn.svensson@st.com>
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2020-10-15 16:59:51 +02:00
Jon Turney
93216e2791
Cygwin: Remove unused doc/ug-info.xml
Remove doc/ug-info.xml, not used in any document.
2020-10-14 15:04:24 +01:00
Jon Turney
e78a7f8f6e
Cygwin: Remove empty MT_SAFE and MT_SAFE_OBJECTS 2020-10-14 15:04:23 +01:00
Jon Turney
1996cb7e84
Cygwin: Remove autoconf variable INSTALL_LICENSE
Remove autoconf variable INSTALL_LICENSE, which has a constant value
which is only used once.
2020-10-14 15:04:22 +01:00
Jon Turney
66c76e8aff
Cygwin: Drop AC_SUBST(LIBSERVER)
The autoconf variable LIBSERVER isn't defined, and it's value isn't
used. (The Makefile.in contains a literal value for the name of this
library instead).
2020-10-14 15:04:21 +01:00
Jon Turney
177d15686d
Cygwin: Remove AC_ARG_PROGRAM/program_transform_name
Not done consistently, and probably never used.
2020-10-14 15:04:20 +01:00
Jon Turney
b21158bc4e
Cygwin: Remove AC_PROG_MAKE_SET
This is only needed if we are using an ancient make which doesn't set
${MAKE}, but we say "This makefile requires GNU make." everywhere.

It only has an effect if @SET_MAKE@ is used, which we aren't doing
consistently.
2020-10-14 15:04:19 +01:00
Jon Turney
ad0f139c74
Cygwin: Drop STDINCFLAGS overrides
This used to turn off -nostdinc on a per-file basis, but has no effect
since 4c36016b5706.
2020-10-14 15:04:18 +01:00
Jon Turney
08e7ee1912
Cygwin: Drop looking for w32api in winsup/w32api
Stop looking for w32api headers in the (no longer existent)
winsup/w32api directory (removed in commit 61746d6ae850).
2020-10-14 15:04:17 +01:00