Commit Graph

17873 Commits

Author SHA1 Message Date
Corinna Vinschen 71df3bfd51 truncl: Fix setting rounding bits in FPU control word
Mingw-w64, which is the source of this code, uses different
definitions of the rounding bits FE_TONEAREST and friends.
They immediately reflect the bit values in the FPU control word,
while on Cygwin they are shifted down to become the values 0-3.

Fix the bit computing expression to account for the difference.

Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-07-18 22:00:17 +02:00
Yaakov Selkowitz 52d940e263 math.h: fix guards on basic M_ constants
MAXFLOAT, M_PI, and friends date back to at least XPG4v2, so this guard
was incorrect even prior to the feature test macros overhaul.

Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
2016-07-15 09:06:53 -05:00
Eric Blake 7475b656f4 Put previous doc in correct section
SSIZE_MAX was a bug fix, not a huge change.

Signed-off-by: Eric Blake <eblake@redhat.com>
2016-07-14 13:26:29 -06:00
Corinna Vinschen 863952f273 Add release message for commit fe9e3b4
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-07-14 20:55:04 +02:00
Corinna Vinschen fe9e3b4498 Transform all special chars in relative Windows path string
get_nt_native_path handles the transposition of chars not allowed
in Windows pathnames.  However, it never starts transposition at
the start of the string, which is wrong for relative paths.  Fix it.

Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-07-14 20:52:04 +02:00
Eric Blake 6795ef7d37 Fix 32-bit SSIZE_MAX
POSIX requires that SSIZE_MAX have the same type as ssize_t, but
on 32-bit, we were defining it as a long even though ssize_t
resolves to an int.  It also requires that SSIZE_MAX be usable
via preprocessor #if, so we can't cheat and use a cast.

If this were newlib, I'd have had to hack _intsup.h to probe the
qualities of size_t (via gcc's __SIZE_TYPE__), similar to how we
already probe the qualities of int8_t and friends, then cross our
fingers that ssize_t happens to have the same rank (most systems
do, but POSIX permits a system where they differ such as size_t
being long while ssize_t is int).  Unfortunately gcc gives us
neither __SSIZE_TYPE__ nor __SSIZE_MAX__.  On the other hand, our
limits.h is specific to cygwin, so we can just shortcut to the
correct results rather than being generic to all possible ABI.

Signed-off-by: Eric Blake <eblake@redhat.com>
2016-07-14 12:38:49 -06:00
Corinna Vinschen 87076a3a83 Add release message for commit 82e0649
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-07-14 19:11:45 +02:00
Ray Donnelly 82e06490de machine/_types.h: __blkcnt_t should be signed
[1] states: "blkcnt_t and off_t shall be signed integer types."

This causes pacman to fail when the size requirement
of the net update operation is negative, instead it
calculated a huge positive number.

[1] http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/sys_types.h.html
2016-07-14 19:02:57 +02:00
Jon Turney 53a831f063 Improve description of Cygwin ldd utility
Improve the description of Cygwin ldd utility to give a bit more detail
about how it does what it does

Also add a security warning (modelled after the one in the Linux manpage)
that it may end up executing the file it is applied to.

Signed-off-by: Jon Turney <jon.turney@dronecode.org.uk>
2016-07-07 14:48:09 +01:00
Jon Turney 5ff2fcf9bd Use <filename> tag, not <pathname> tag
Fix an instance of the invalid <pathname> tag in Cygwin utils documentation,
by using the valid <filename> tag instead.

Signed-off-by: Jon Turney <jon.turney@dronecode.org.uk>
2016-07-07 14:48:09 +01:00
Jon Turney d4bed7c3af Use <example> tag at same level as <para>, not inside it
In Cygwin utils documentation, use the <example> tag at same level as
<para>, not inside it.

This improves the generated manpages.

Signed-off-by: Jon Turney <jon.turney@dronecode.org.uk>
2016-07-07 14:48:09 +01:00
Corinna Vinschen a5d197eb48 Add release message for commit 8cff156
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-07-06 19:16:05 +02:00
Corinna Vinschen 8cff1569fc strace: Make sure strace timer isn't copied to child process
At fork time the .data and .bss segments of the Cygwin DLL are copied
over to the child process.  This also copies the strace timer since
it's in the .bss segment so far.  Fix that by moving the strace timer
out into the .data_cygwin_nocopy segment.

Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-07-06 19:12:59 +02:00
Corinna Vinschen 28d393c001 Fix typo in comment added by previous commit
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-07-06 18:23:21 +02:00
Corinna Vinschen a68ca43b90 Redefine locale info in struct _reent for per-thread locales
The _reent members _current_category and _current_locale are not
used at all.  _current_locale is set to "C" in various points of
the code but its value is just as unused as _current_category.

This patch redefines these members without changing the size of the
structure to allow for an implementation of per-thread locales per
POSIX-1.2008 (i.e. uselocale and usage of the per-thread locale in
subsequent function calls).

Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-07-06 15:41:35 +02:00
Jon Turney b9ac3c2c8b Regenerate newlib Makefiles 2016-07-04 17:53:06 +01:00
Jon Turney d7e47a557e Regenerate newlib Makefiles 2016-07-04 17:13:55 +01:00
Jon Turney 0b4cbd2fb8 Make newlib manpages (v3)
Add makedocbook, a tool to process makedoc markup and output DocBook XML
refentries.

Process all the source files which are processed with makedoc with
makedocbook as well

Add chapter-texi2docbook, a tool to automatically generate DocBook XML
chapter files from the chapter .texi files.  For generating man pages all we
care about is the content of the refentries, so all this needs to do is
convert the @include of the makedoc generated .def files to xi:include of
the makedocbook generated .xml files.

Add skeleton Docbook XML book files, lib[cm].in.xml which include these
generated chapters, which in turn include the generated files containing
refentries, which is processed with xsltproc to generate the lib[cm].xml

Add new make targets to generate and install man pages from lib[cm].xml
2016-07-04 14:17:10 +01:00
Corinna Vinschen 85db21730b ldd: Handle executable relocation when setting breakpoint
set_entry_point_break() uses GetModuleInformation to fetch the
address of the exe's entry point.  However, just as with
lpStartAddress from the CREATE_PROCESS_DEBUG_EVENT event, the
returned address is only computed from the PE file header.  It's
not actually the entry point in memory, if the executable is
relocated (ASLR).  See
https://msdn.microsoft.com/en-us/library/windows/desktop/ms684229(v=vs.85).aspx

Convert this to using the info from CREATE_PROCESS_DEBUG_EVENT
combined with the offset from the PE file header's  AddressOfEntryPoint
to deal with relocation.

Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-07-02 12:36:05 +02:00
Corinna Vinschen 9f54ceadae ldd: terminate process on hitting breakpoint
So far ldd terminates the inferior process as soon as some thread
is started.  Apparently threads are started from even ntdll.dll
before the main thread of the application is started.  As a result
the dll list is cut short since ldd terminates prematurely.

Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-07-02 12:27:04 +02:00
Corinna Vinschen 29600e04e3 Make sure to use the Winsock definition of FIONREAD in ioctlsocket call
Commit b1b46d45 introduced a regression.  After redefining FIONREAD
as part of restructuring newlib/Cygwin headers, the call to ioctlsocket
in the FIONREAD branch of fhandler_socket::ioctl should have been
changed to use the Winsock definition of FIONREAD, which I neglected.
This only affects 64 bit Cygwin.

Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-07-01 16:56:07 +02:00
Jon Turney e27cfa4631 Restore mingw64-x86_64-gcc-core in FAQ listing required packages
Restore mingw64-x86_64-gcc-core to requirements for 32-bit builds in FAQ
listing required packages, and give reason.
2016-06-29 15:08:33 +01:00
Jon Turney 24b1c90116 Update FAQ listing required packages for building Cygwin
docbook2X is now required for building documentation
libiconv differences between x86_64 and x86 no longer exist
2016-06-28 20:11:12 +01:00
Qian Hong f8a7ef17fe Continuous Integration: Add Tea CI build configuration. 2016-06-28 13:42:59 +02:00
Kuba Sejdak 8a603a697f Phoenix-RTOS: Add caddr_t definition to <sys/types.h>. 2016-06-28 12:47:05 +02:00
Corinna Vinschen c920bf0b01 Reformat some too-long lines
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-06-27 18:00:56 +02:00
Corinna Vinschen 532ecdd36f Add comment to point out missing access right per documentation
In get_mem_values we open the process without PROCESS_VM_READ access
and are *still* able to request working set information, despite
MSDN claiming we need it for this purpose.  Instead of adding this
access right, just add an comment to point this out for now.

Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-06-27 18:00:01 +02:00
Corinna Vinschen ba58e5f20c Use PROCESS/THREAD_QUERY_LIMITED_INFORMATION where appropriate
Using PROCESS/THREAD_QUERY_INFORMATION may limit the number of
processes/threads we can inspect depending on their integrity level.

Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-06-27 17:56:16 +02:00
Corinna Vinschen d21b63594c Set supported Windows release to Windows 10
This affects setting _WIN32_WINNT and WINVER.

Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-06-27 17:51:41 +02:00
Corinna Vinschen b6693e7c17 Remove pre-Vista considerations from utilities
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-06-27 17:50:25 +02:00
Kuba Sejdak 673dd34823 Phoenix-RTOS: Adjust network-related headers to new kernel API. 2016-06-27 13:23:35 +02:00
Kuba Sejdak 6325dbb30f Phoenix-RTOS: Add dummy implementation of fdatasync() syscall. 2016-06-27 13:23:35 +02:00
Kuba Sejdak 3302072436 Add dummy implementation of getentropy(), if_nametoindex() and if_indextoname() functions. 2016-06-27 13:23:35 +02:00
Kuba Sejdak 75c98c35c3 Phoenix-RTOS: Implement daemon() function. 2016-06-27 13:23:35 +02:00
Kuba Sejdak 0601c03109 Phoenix-RTOS: Add checking EOF in getmntent(). 2016-06-27 13:23:34 +02:00
Kuba Sejdak cd169e629a Phoenix-RTOS: Provide __progname symbol for user-space apps. 2016-06-27 13:23:34 +02:00
Kuba Sejdak e5e0bd38d2 Phoenix-RTOS: Fix warning with pointer treated as integer. 2016-06-27 13:23:34 +02:00
Kuba Sejdak ab92a06cd4 Phoenix-RTOS: Add <netpacket/packet.h> header and import <net/if_arp.h> header from FreeBSD. 2016-06-27 13:23:34 +02:00
Kuba Sejdak 4473035feb Phoenix-RTOS: Provide daemon() and fdatasync() syscalls in <sys/unistd.h>. 2016-06-27 13:23:34 +02:00
Corinna Vinschen 084253081a Add release message for commit b2867a6
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-06-27 13:21:19 +02:00
Corinna Vinschen c7b2b18116 Add missing OBJCOPY variable to Makefile.in
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-06-26 17:27:03 +01:00
Jon Turney d3297c3304 Revert "Use .DELETE_ON_ERROR"
This reverts commit 62b0bf0b8b.
2016-06-25 17:08:18 +01:00
Jon Turney 980e2a62f4 Revert "Add missing OBJCOPY variable to Makefile.in"
This reverts commit fdc45c4bfb.
2016-06-25 17:08:06 +01:00
Jon Turney f145c2e261 Revert "Make newlib manpages via DocBook XML (v3)"
This reverts commit 041ea41068.
2016-06-25 17:07:43 +01:00
Jon Turney 041ea41068 Make newlib manpages via DocBook XML (v3)
Add makedocbook, a tool to process makedoc markup and output DocBook XML
refentries.

Process all the source files which are processed with makedoc with
makedocbook as well

Add chapter-texi2docbook, a tool to automatically generate DocBook XML
chapter files from the chapter .texi files.  For generating man pages all we
care about is the content of the refentries, so all this needs to do is
convert the @include of the makedoc generated .def files to xi:include of
the makedocbook generated .xml files.

Add skeleton Docbook XML book files, lib[cm].in.xml which include these
generated chapters, which in turn include the generated files containing
refentries, which is processed with xsltproc to generate the lib[cm].xml

Add new make targets to generate and install man pages from lib[cm].xml
2016-06-25 17:04:15 +01:00
Corinna Vinschen fdc45c4bfb Add missing OBJCOPY variable to Makefile.in
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-06-25 17:04:10 +01:00
Jon Turney 62b0bf0b8b Use .DELETE_ON_ERROR
Use .DELETE_ON_ERROR
Make the fact that we are running dllfixdbg less obscure
2016-06-25 17:03:57 +01:00
Corinna Vinschen 6ef3cc7da3 Remove leftover useless copyright hints
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-06-25 13:36:52 +02:00
Corinna Vinschen 2a18fb4b94 Clarify setting of child_info::msv_count in child_info.h
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-06-25 10:21:45 +02:00
Corinna Vinschen cb34fffe07 Remove CYGWIN=detect_bloda option 2016-06-25 00:43:01 +02:00