Compare commits

..
Author SHA1 Message Date
Ulrich Drepper a23b24ae85 Update. 1999-09-06 21:18:09 +00:00
Ulrich Drepper 189c890530 Add sys/user.h. 1999-09-06 21:17:23 +00:00
Ulrich Drepper 4d588d1c1b Update. 1999-09-06 17:06:06 +00:00
Ulrich Drepper b083049a78 (j0_test): Add some deltas for m68k.
(jn_test): Likewise.
1999-09-06 17:05:14 +00:00
Ulrich Drepper 882d5bb343 Update. 1999-09-06 08:00:36 +00:00
Ulrich Drepper 77b341f865 When translating to ISO-2022-JP* write escape sequences out even if the
character itself does not fit into the buffer.
1999-09-06 07:59:54 +00:00
Ulrich Drepper f8a1beb6b1 (ucs4_to_jisx0201): Correct mapping for U005C. 1999-09-06 07:54:26 +00:00
Ulrich Drepper 081eec66de Update. 1999-09-05 23:31:52 +00:00
Ulrich Drepper 79effba1aa (__db_rdetach): Unmap the region if necessary. 1999-09-05 23:30:54 +00:00
Ulrich Drepper 4768722739 Update. 1999-09-05 21:55:24 +00:00
Ulrich Drepper 2a34627a6c Regenerated: /usr/bin/perl scripts/gen-FAQ.pl FAQ.in 1999-09-05 19:37:57 +00:00
Ulrich Drepper a92d659b34 Add comment about add-on numbering. 1999-09-05 19:36:39 +00:00
Ulrich Drepper 0cf19868c9 Add PPC libgcc problem description. 1999-09-05 19:35:36 +00:00
Ulrich Drepper 0ec75faf62 Putenv bug is fixed. 1999-09-05 17:58:44 +00:00
Ulrich Drepper 99b01c26a2 Regenerated: /usr/bin/perl scripts/gen-FAQ.pl FAQ.in 1999-09-05 17:56:23 +00:00
Ulrich Drepper 4f4507a22c Fix typos. 1999-09-05 17:36:30 +00:00
Roland McGrath 0135043713 add missing #include <unistd.h> 1999-09-05 08:50:43 +00:00
Roland McGrath 89075c285f . 1999-09-05 08:43:21 +00:00
Roland McGrath 98347408ff 1999-09-05 Roland McGrath <roland@baalperazim.frob.com>
* hurd/hurdprio.c (_hurd_priority_which_map): If WHO is zero default
	it to getpid () for PRIO_PROCESS, geteuid () for PRIO_USER.
1999-09-05 08:42:46 +00:00
Ulrich Drepper 970ab68b6e Update. 1999-09-05 00:14:00 +00:00
Ulrich Drepper df25ffc348 Export __fork, vfork, and __vfork in libpthread. 1999-09-05 00:12:57 +00:00
Ulrich Drepper 355e5a9698 (__fork): Renamed from fork and use __libc_fork. Add fork as weak alias.
(__vfork): New function, alias vfork.
1999-09-05 00:11:40 +00:00
Ulrich Drepper d08aaae1b2 Add __libc_fork and __vfork to version GLIBC_2.1.2. 1999-09-05 00:10:22 +00:00
Ulrich Drepper 3aa2699d90 Rename strong name for fork from __syscall_fork to __libc_fork. 1999-09-05 00:09:41 +00:00
Ulrich Drepper cb5a459579 Update. 1999-09-03 07:13:40 +00:00
Ulrich Drepper 573330a9fd Set LC_ALL and LANGUAGE to fix locale dependencies in sort. 1999-09-03 07:12:57 +00:00
Ulrich Drepper 083f449cce Include <sys/user.h> instead of <asm/user.h>. 1999-09-03 07:12:22 +00:00
Ulrich Drepper 34b4bc6c2b Linux/Alpha specific definition to access information passed up from the
kernel.
1999-09-03 07:11:54 +00:00
Ulrich Drepper c09c99a646 Update. 1999-09-01 16:49:47 +00:00
Ulrich Drepper 7d8a5e40cb Fix typos. 1999-09-01 16:49:07 +00:00
Ulrich Drepper 474618f079 #include <bits/armsigctx.h>. 1999-09-01 16:45:18 +00:00
Ulrich Drepper 689cd45252 Enclose header in an #ifdef statement to prevent it from being included twice. 1999-09-01 16:45:06 +00:00
Ulrich Drepper b8a255823e Update. 1999-08-31 18:38:08 +00:00
Ulrich Drepper dfb39f6c93 Remove duplicated OC entry. 1999-08-31 18:37:32 +00:00
Ulrich Drepper 5031ca7054 Add Euro symbol to collation and characterization tables. 1999-08-31 18:36:50 +00:00
Ulrich Drepper 485eb0d184 Update. 1999-08-31 01:51:11 +00:00
Ulrich Drepper 26f8104784 [csu]: Define CFLAGS-initfini.s to force compiling for i386 to avoid
i686-like GOT pointer computation.
1999-08-31 01:50:40 +00:00
Ulrich Drepper 07e0345167 Regenerated: autoconf configure.in 1999-08-30 19:36:01 +00:00
Ulrich Drepper 894dbda855 Update. 1999-08-30 19:15:00 +00:00
Ulrich Drepper f80a4f6e0c (nscd_getgr_r): Don't count the alloca'ed memory for buffer. 1999-08-30 19:14:30 +00:00
Ulrich Drepper d677a1bcdb Update. 1999-08-28 22:32:01 +00:00
Ulrich Drepper 96a35fdc66 Don't use variables to set thresholds for SUID binaries. 1999-08-28 22:31:34 +00:00
Ulrich Drepper 3e4cf3712d Update. 1999-08-28 22:26:48 +00:00
Ulrich Drepper 4260bf0da4 (Running make install): Give examples for timezone and locale installation. 1999-08-28 22:26:03 +00:00
Ulrich Drepper de9da430be Update. 1999-08-28 22:21:46 +00:00
Ulrich Drepper cc3af55244 Calculate and substitute CCVERSION. 1999-08-28 22:19:33 +00:00
Ulrich Drepper 00905ad925 Get CCVERSION from autoconf substitution. 1999-08-28 22:19:13 +00:00
Ulrich Drepper 938e848771 Update. 1999-08-28 00:26:28 +00:00
Ulrich Drepper 8d1927ffc8 Update from 2.3.15 kernel. 1999-08-28 00:25:56 +00:00
Ulrich Drepper bd5de616e3 Update. 1999-08-26 06:30:31 +00:00
Ulrich Drepper b3af0a7c12 (__finite): Make constant as unsigned to avoid warning. 1999-08-26 06:29:13 +00:00
Ulrich Drepper c1a990bf75 Update. 1999-08-26 03:46:55 +00:00
Ulrich Drepper cdbec47f90 Define always __qaddr_t.
__ino64_t should be 32bit unsigned type on sparc32.
Define __off64_t to __quad_t instead of __int64_t.
Make __pic_pid_t unsigned on sparc32.
1999-08-26 03:45:16 +00:00
Ulrich Drepper 2de56a30e0 Update. 1999-08-26 00:26:41 +00:00
Ulrich Drepper b9d2efe606 Avoid namespace pollution. 1999-08-26 00:26:16 +00:00
Ulrich Drepper 9e384e26ff Update. 1999-08-25 19:45:11 +00:00
Ulrich Drepper 371b2f5b44 Link db_dump185 against libdb1. 1999-08-25 19:41:51 +00:00
Ulrich Drepper 6d58de1563 Update. 1999-08-25 17:58:23 +00:00
Ulrich Drepper 26a1ee568c Add checks to make sure we're really dealing with a master pseudo terminal, and
really returning the name of the associated slave pseudo terminal by checking
the device number.
1999-08-25 17:57:57 +00:00
Roland McGrath 0a37128d71 . 1999-08-25 00:50:02 +00:00
Ulrich Drepper 80bdcedbc0 Update. 1999-08-24 23:13:56 +00:00
Ulrich Drepper 1e7aa7a219 (_IO_new_file_close_it): Set _fileno to -1, not EOF. 1999-08-24 23:13:07 +00:00
Ulrich Drepper 0762715c25 (_IO_file_is_open): Only check for -1, not all negative numbers. 1999-08-24 23:12:15 +00:00
Ulrich Drepper 2c11fe3a7c (fopencookie): Set _fileno to -2. 1999-08-24 23:06:11 +00:00
Ulrich Drepper b8d8a25b24 Update. 1999-08-24 22:43:30 +00:00
Ulrich Drepper f6aaf5272f Update for changed cookie definitions in libio.h. 1999-08-24 22:43:14 +00:00
Ulrich Drepper e8628d1b29 Update. 1999-08-24 20:56:56 +00:00
Ulrich Drepper 6e1cc1f501 Add new constants from Linux 2.3.15. 1999-08-24 20:56:40 +00:00
Ulrich Drepper 66366ecc0e Update. 1999-08-24 20:51:21 +00:00
Ulrich Drepper e069581c70 Add execve syscall. 1999-08-24 20:50:39 +00:00
Roland McGrath fe68c72be5 1999-08-23 Mark Kettenis <kettenis@gnu.org>
* hurd/hurdsig.c (_hurd_internal_post_signal): Add missing else.
1999-08-23 21:03:22 +00:00
Ulrich Drepper 8b8fd1a8d6 Update. 1999-08-23 17:52:24 +00:00
Ulrich Drepper b887ee2281 Define SIGCONTEXT_EXTRA_ARGS. 1999-08-23 17:51:34 +00:00
Ulrich Drepper 625b5535c8 (pthread_sighandler): Add SIGCONTEXT_EXTRA_ARGS to call to signal
handler.
1999-08-23 17:46:43 +00:00
Ulrich Drepper 5806e9e7ff Update. 1999-08-23 17:38:48 +00:00
Ulrich Drepper bd6da23cad (re_match_2_internal): Correct check for charset after exactn in loop. 1999-08-23 17:38:16 +00:00
Ulrich Drepper 07a4e1cf8e Update. 1999-08-23 04:09:43 +00:00
Ulrich Drepper f91afe2d2d Add execve syscall. 1999-08-23 04:09:18 +00:00
Ulrich Drepper 6c5f7284af Update. 1999-08-22 22:55:15 +00:00
Ulrich Drepper 29b436a764 Define documented cookie types. 1999-08-22 22:52:18 +00:00
Roland McGrath 92013f98ef . 1999-08-22 22:18:55 +00:00
Roland McGrath a0308b1212 1999-08-22 Mark Kettenis <kettenis@gnu.org>
* hurd/new-fd.c (_hurd_new_fd): Initialize fcntl flags.
	* hurd/port2fd.c (_hurd_port2fd): Reset the fcntl flags when
	installing PORT in the descriptor cell.
1999-08-22 22:18:46 +00:00
Ulrich Drepper 4169fe63e6 Update. 1999-08-21 04:53:29 +00:00
Ulrich Drepper d56532fe29 Define weak alias execve. 1999-08-21 04:52:27 +00:00
Ulrich Drepper 570440a2c0 Update. 1999-08-20 23:45:53 +00:00
Ulrich Drepper c7eecb53b2 Undo last change. 1999-08-20 23:45:31 +00:00
Ulrich Drepper a2c3a8a754 Undo last change but correct comment saying < 0 is ok for size type. 1999-08-20 23:44:59 +00:00
Ulrich Drepper 863ac339aa Regenerated. 1999-08-20 19:32:31 +00:00
Ulrich Drepper 82372ea939 Pass sigcontext through wrapper to the user function. 1999-08-20 19:30:19 +00:00
Ulrich Drepper 6c7eaa9206 Update. 1999-08-20 19:30:08 +00:00
Ulrich Drepper 99731fbaae Update. 1999-08-20 19:01:57 +00:00
Ulrich Drepper d2e1ff2889 (__pthread_kill_other_threads_np): Reset signal handlers for the
signals we used in the thread implementation here.
1999-08-20 19:01:29 +00:00
Ulrich Drepper 3756823b75 (__pthread_reset_main_thread): Undo last change. 1999-08-20 18:58:56 +00:00
Ulrich Drepper 69bb9f499e Correct last patch. 1999-08-20 18:24:42 +00:00
Ulrich Drepper 7c9b5e4d47 Allocate buffer large enough not only if size == 0, but also for size < 0. 1999-08-20 18:07:55 +00:00
Ulrich Drepper 60c74efa35 Update. 1999-08-20 16:55:34 +00:00
Ulrich Drepper 6083735ab9 Allocate array name of correct size. 1999-08-20 16:54:55 +00:00
Ulrich Drepper 0d69c39a64 Update. 1999-08-20 15:50:56 +00:00
Ulrich Drepper 813e69352a Don't allow use with _FILE_OFFSET_BITS=64. 1999-08-20 15:50:15 +00:00
Ulrich Drepper 089d0bcd7f Update. 1999-08-20 15:47:30 +00:00
Ulrich Drepper 4d2d58a467 Copy over missing changes from mainline. 1999-08-20 15:45:28 +00:00
Ulrich Drepper 2ef76f6528 (_dl_start): Add missing declaration of cnt. 1999-08-20 15:41:26 +00:00
Ulrich Drepper 9c63378327 Fix typo in last change. 1999-08-20 15:20:44 +00:00
Roland McGrath bdb64f57f1 . 1999-08-20 03:46:30 +00:00
Roland McGrath 8595b3b943 1999-08-19 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/mach/hurd/i386/intr-msg.h (INTR_MSG_TRAP): Mark OPTION and
	TIMEOUT as outputs of the asm to indicate that the signal thread
	might mutate them.
	* hurd/intr-msg.c (_hurd_intr_rpc_mach_msg): Short circuit to plain
	mach_msg if only sending or only receiving (i.e., not an RPC).  When
	making an RPC that might get interrupted, save OPTION and the portion
	of the message buffer that gets clobbered by an EINTR reply message,
	and properly restore them before attempting to retry the request
	message send.
1999-08-20 03:45:14 +00:00
Ulrich Drepper 28f2b23e68 Update. 1999-08-20 00:41:16 +00:00
Ulrich Drepper 1f6935a45f (__pthread_reset_main_thread): Reset signal handlers for the signals we used
in the thread implementation.
1999-08-20 00:32:37 +00:00
Ulrich Drepper 8de1cf5ef0 Update. 1999-08-20 00:17:18 +00:00
Ulrich Drepper ca0f823519 Export __pthread_kill_other_threads_np from libpthread for GLIBC_2.1.2. 1999-08-20 00:16:44 +00:00
Ulrich Drepper 0c7bbb0c5a Linux specific execve implementation. 1999-08-20 00:15:11 +00:00
Ulrich Drepper 01998b2942 (_dl_start): Initialize bootstrap_map.l_info to zero. 1999-08-19 23:19:21 +00:00
Ulrich Drepper 4086f80da4 Update. 1999-08-19 21:01:01 +00:00
Ulrich Drepper d36f40995a Add change from main branch. 1999-08-19 21:00:36 +00:00
Ulrich Drepper 7658a957b3 Update. 1999-08-19 20:22:20 +00:00
Ulrich Drepper 1b7ecbe56c Add change from main branch. 1999-08-19 20:21:41 +00:00
Ulrich Drepper bd099ec827 Update. 1999-08-19 20:12:14 +00:00
Ulrich Drepper 9c4140bada (__add_to_environ): Initialize ep after we have the lock.
Avoid warning about uninitialized variable.
1999-08-19 20:11:33 +00:00
Ulrich Drepper 336c2454d6 Update. 1999-08-19 20:00:05 +00:00
Ulrich Drepper ad48761644 Information about how to access signal context info fro Linux/Alpha. 1999-08-19 19:58:46 +00:00
Ulrich Drepper 1ba2b81202 Update. 1999-08-18 17:24:52 +00:00
Ulrich Drepper 5c08d16634 Regenerated. 1999-08-18 17:24:14 +00:00
Ulrich Drepper 559b35efda (COnfiguring and compiling): Clarify ix86 situation. 1999-08-18 17:23:46 +00:00
Ulrich Drepper 26a5d544b3 Update. 1999-08-18 06:35:14 +00:00
Ulrich Drepper f58e235346 (tests): Update America/Sao_Paulo test case for new tzdata. 1999-08-18 06:34:34 +00:00
Ulrich Drepper da62bdd4fc Update. 1999-08-17 22:36:01 +00:00
Ulrich Drepper f790b2ac93 Correct type in performance increase rewrite. 1999-08-17 22:35:54 +00:00
Ulrich Drepper 7403c90040 Update. 1999-08-17 22:33:59 +00:00
Ulrich Drepper af17378eb5 Update from tzdata1999e and tzcode1999e. 1999-08-17 20:51:34 +00:00
Ulrich Drepper 07a7b26ef0 Update. 1999-08-17 20:51:13 +00:00
Ulrich Drepper 6611bd6dda Regenerated. 1999-08-17 20:24:04 +00:00
Ulrich Drepper ee225270e0 Add ISO registry alias for UTF8. 1999-08-17 20:22:48 +00:00
Ulrich Drepper 20af6843b8 Update. 1999-08-17 16:02:06 +00:00
Ulrich Drepper 0efeb49287 (process_arg): Correct last patch and write correct number of bytes
in case of %ls with precision.
1999-08-17 16:01:02 +00:00
Ulrich Drepper 24555ab3b7 Update. 1999-08-17 01:33:47 +00:00
Ulrich Drepper 53b13c6187 Test for kernel version and make LSB compliant. 1999-08-17 01:32:29 +00:00
Ulrich Drepper a05f4b051e Define O_DSYNC and O_RSYNC. 1999-08-17 01:25:43 +00:00
Ulrich Drepper 3e821e10d3 Update. 1999-08-17 01:25:38 +00:00
Ulrich Drepper 41496cdbc2 Update. 1999-08-17 01:09:25 +00:00
Ulrich Drepper c608b3cd86 (process_arg): Correct %ls handling wrt to precision. 1999-08-17 01:08:31 +00:00
Ulrich Drepper 81aee4d8d7 (Process Group Functions): Fix typo. 1999-08-16 21:56:46 +00:00
Ulrich Drepper 5e7f616524 Update. 1999-08-16 06:54:48 +00:00
Ulrich Drepper 3d090a1c2f Correct decrement maxlen. 1999-08-16 06:54:42 +00:00
Ulrich Drepper 25d13c5064 Update. 1999-08-16 03:00:05 +00:00
Ulrich Drepper 07a83edd21 Tweak deltas for a clean run on ppc. 1999-08-16 02:59:57 +00:00
Ulrich Drepper 66ee8cfa4b Update. 1999-08-15 22:57:55 +00:00
Ulrich Drepper c266d1804f Remove <ft> entry, add <St> entry. 1999-08-15 22:57:17 +00:00
Ulrich Drepper 4367272fd2 Update. 1999-08-15 21:28:50 +00:00
Ulrich Drepper 751dd17708 Add ca_ES. 1999-08-15 21:28:43 +00:00
Ulrich Drepper 172f28d433 Spanish locale for catalan language. 1999-08-15 21:27:36 +00:00
Ulrich Drepper 4233e0ed19 Regenerated: autoconf configure.in 1999-08-15 20:30:17 +00:00
Ulrich Drepper 0b9cfd5991 Update from main branch. 1999-08-15 20:28:48 +00:00
Ulrich Drepper 11c2fa07bc (Process Group Functions): Document getpgid, getsid. 1999-08-15 20:25:01 +00:00
Ulrich Drepper 04614916ff (getanswer_r): Cleanup out-of-buffer handling. 1999-08-15 20:23:35 +00:00
Ulrich Drepper 741e657af7 Add catalan. 1999-08-15 20:20:27 +00:00
Ulrich Drepper 85e8144969 (Configuring and compiling): Mention CFLAGS. 1999-08-15 20:19:18 +00:00
Ulrich Drepper 8a1637a823 Brazilian translations for glibc. 1999-08-15 20:18:32 +00:00
Ulrich Drepper 604b91d6f0 (yn_test): Adjust deltas for i386.
(ccosh_test): Likewise.
(jn_test): Likewise.
1999-08-15 20:17:56 +00:00
Ulrich Drepper 3f0c5820cf Don't recognize hexadecimal floats without exponent. 1999-08-15 20:13:55 +00:00
Ulrich Drepper d82cc2e950 install-sh lives now in scripts subdir. 1999-08-15 20:09:51 +00:00
Ulrich Drepper 17c2c6cd56 Update. 1999-08-13 19:59:59 +00:00
Ulrich Drepper 6a7cb14a81 Update. 1999-08-10 05:14:51 +00:00
Ulrich Drepper 1af43fd7eb Define ARM specific versions of VALID_ELF_HEADER, VALID_ELF_OSABI,
VALID_ELF_ABIVERSION.
1999-08-10 05:14:30 +00:00
Ulrich Drepper bb7b8af37b Added definition of ELFOSABI_ARM. 1999-08-10 05:14:03 +00:00
Ulrich Drepper ef45101163 (_dl_map_object_from_fd): Use VALID_ELF_HEADER,
VALID_ELF_OSABI, VALID_ELF_ABIVERSION to decide whether an
object's header and ABI values are acceptable.
(VALID_ELF_HEADER): New macro; provide default definition.
(VALID_ELF_OSABI): New macro; provide default definition.
(VALID_ELF_ABIVERSION): New macro; provide default definition.
1999-08-10 05:13:48 +00:00
Ulrich Drepper cdbfff4607 Update. 1999-08-09 05:41:54 +00:00
Ulrich Drepper 35a7d84f65 Handle platforms with special __FLOAT_WORD_ORDER. 1999-08-09 05:41:32 +00:00
Ulrich Drepper 0e5e2ce838 Mark void* operations as extensions. 1999-08-09 05:41:03 +00:00
Ulrich Drepper 9342feea05 Update. 1999-08-07 03:16:22 +00:00
Ulrich Drepper 3a9ba37fe8 (res_send): Recompute timeout for poll for each jump to `wait'. 1999-08-07 03:16:16 +00:00
Ulrich Drepper da91445ec3 Update. 1999-08-06 23:24:20 +00:00
Ulrich Drepper 49e7737729 (IN6ADDR_ANY_INIT): Add correct number of braces to avoid warnings.
(IN6ADDR_LOOPBACK_INIT): Likewise.
1999-08-06 23:24:02 +00:00
Ulrich Drepper b005663f3a Update. 1999-08-06 23:01:43 +00:00
Ulrich Drepper 19fdfe298d Fix typo (MSG_TRUNC -> MSG_DONTWAIT). 1999-08-06 23:01:27 +00:00
Ulrich Drepper cc3cdb18a2 Update. 1999-08-06 22:59:10 +00:00
Ulrich Drepper 794d3ae39b Initialize __libc_pagesize early. 1999-08-06 22:58:56 +00:00
Ulrich Drepper a0ab2d17db Update. 1999-08-06 16:37:16 +00:00
Ulrich Drepper fd72c76124 (res_send): Don't test file descriptor for range, we use poll now. 1999-08-06 16:36:57 +00:00
Ulrich Drepper a7efbb3471 Update. 1999-08-05 17:41:20 +00:00
Ulrich Drepper cd55b09de4 (O_RSYNC, O_DSYNC): Define. 1999-08-05 17:40:36 +00:00
Ulrich Drepper b72cf02093 Update. 1999-08-05 01:06:54 +00:00
Ulrich Drepper cdf3afded5 Cast to uint32_t pointer, not short. RPC fields are always 32 bit. 1999-08-05 01:06:15 +00:00
Ulrich Drepper d91df270ea Rename number to port. 1999-08-05 01:05:39 +00:00
Ulrich Drepper fea1b809a4 Rename number to port. 1999-08-05 01:05:06 +00:00
Ulrich Drepper 3542d62676 Remove htons, port is always in network-byte-order. 1999-08-05 01:04:14 +00:00
Ulrich Drepper c4f0da0d56 Fix port problem on big-endian machines. 1999-08-05 01:03:24 +00:00
Ulrich Drepper c65652ec7a Update from main line. 1999-08-05 00:21:51 +00:00
Ulrich Drepper 5e886ed714 Update from main line. 1999-08-05 00:11:26 +00:00
Ulrich Drepper 6172c94607 Update from main line. 1999-08-04 23:56:32 +00:00
Ulrich Drepper 7e97461d46 Update from main line. 1999-08-04 16:04:20 +00:00
Ulrich Drepper 1bdd98e3ed Add siglist.h. 1999-08-01 23:26:19 +00:00
Ulrich Drepper 04d1ae8c4e Update from main line. 1999-08-01 22:23:36 +00:00
Ulrich Drepper ba2ee02dbf Update. 1999-08-01 21:56:31 +00:00
Ulrich Drepper 2e0e120f2a Make code thread-safe. 1999-08-01 21:55:30 +00:00
Ulrich Drepper 9b0a6cee0c [ld.so] (GLIBC_2.0): Export __libc_internal_tsd_get and
__libc_internal_tsd_set.
1999-08-01 21:51:07 +00:00
Roland McGrath 43269d67ae . 1999-08-01 02:44:26 +00:00
Roland McGrath cb6f921e11 1999-07-31 Roland McGrath <roland@baalperazim.frob.com>
* hurd/intr-msg.c (_hurd_intr_rpc_mach_msg): Fix msgt_size member
	initializer in CHECK: a bit size, not the type code repeated!
1999-08-01 02:43:44 +00:00
Ulrich Drepper 6dc63bcf20 Update. 1999-07-31 22:28:36 +00:00
Ulrich Drepper e279ce70c6 (__strcpy_small): Fix a typo. 1999-07-31 22:28:12 +00:00
Ulrich Drepper b5aef3124f Update. 1999-07-29 06:43:52 +00:00
Ulrich Drepper f0a46e3173 Remove inclusion of <linux/tasks.h> since it's not needed anymore. 1999-07-29 06:43:07 +00:00
Ulrich Drepper 2d3f35f3b4 Update. 1999-07-28 22:40:38 +00:00
Ulrich Drepper 0eb7585e82 Use IEEE 854 formula to compute the number of digits to print. 1999-07-28 22:40:32 +00:00
Ulrich Drepper 1d5cd731f3 Signal name list. 1999-07-28 21:00:35 +00:00
Ulrich Drepper 30752e0683 Remade for stable-2.1.2 1999-07-28 20:58:44 +00:00
Ulrich Drepper 1362c6058a Fix typos. 1999-07-28 20:44:57 +00:00
Ulrich Drepper 5159aa5c02 Fix typo. 1999-07-28 20:09:13 +00:00
Ulrich Drepper 56480f1c56 Fix typos. 1999-07-28 20:06:53 +00:00
Ulrich Drepper 115b5434f7 Update. 1999-07-28 19:46:17 +00:00
Ulrich Drepper fdb99b1bd9 Mention drawbacks. 1999-07-28 19:46:02 +00:00
Ulrich Drepper bb663848f0 Update. 1999-07-28 19:41:52 +00:00
Ulrich Drepper 9903c9da37 Do not use global state. 1999-07-28 19:41:09 +00:00
Ulrich Drepper 0b5f32df49 Reset state for s == NULL. 1999-07-28 19:40:54 +00:00
Ulrich Drepper 087e27ff22 Use static state. 1999-07-28 19:40:24 +00:00
Ulrich Drepper a41f8fd242 LGPL text. 1999-07-28 18:58:43 +00:00
Ulrich Drepper fd292249a2 GPL text. 1999-07-28 18:58:39 +00:00
Ulrich Drepper 5f7062779f Remove COPYING*. 1999-07-28 18:58:29 +00:00
Ulrich Drepper f8ecfaf0f9 Fix last patch. 1999-07-28 18:51:36 +00:00
Roland McGrath 00a8966944 . 1999-07-28 18:22:44 +00:00
Roland McGrath 68a743d253 1999-07-27 Mark Kettenis <kettenis@gnu.org>
* sysdeps/mach/hurd/i386/init-first.c (init): Move the inline
	assembler code to switch stacks and call init1 outside this
	function.  Inside `init' the code was optimized away by gcc
	2.95 since it was "clearly" unreachable.
	* sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler):
	Do something similar for the trampoline code.
1999-07-28 18:22:23 +00:00
Roland McGrath a3dd87b380 . 1999-07-28 18:19:17 +00:00
Roland McGrath a6877d2677 1999-07-27 Mark Kettenis <kettenis@gnu.org>
* sysdeps/mach/hurd/Makefile [stdio-common]: Set inhibit-siglist.
	(The code this disables is entirely gone in the main branch,
	so this change does not need to be propagated from the 2.1 branch.)
1999-07-28 18:18:59 +00:00
Ulrich Drepper e0ceebea59 Regenerated: /usr/unsupported/bin/perl scripts/gen-FAQ.pl FAQ.in 1999-07-28 16:03:45 +00:00
Ulrich Drepper 6afa4628f3 Fix last patch. 1999-07-28 16:03:02 +00:00
Ulrich Drepper 09ab1aacfb Update. 1999-07-28 04:38:55 +00:00
Ulrich Drepper f20bd94ad7 (gaih_inet): Only return information for the hinted protocol. 1999-07-28 04:38:16 +00:00
Ulrich Drepper 191d62479c The crypt add-on has a new ftp site. 1999-07-28 04:37:55 +00:00
Ulrich Drepper 1fb111861b Do not use global state. 1999-07-28 04:36:49 +00:00
Ulrich Drepper 924b60fe08 Avoid sign extension when returning character. 1999-07-28 04:36:35 +00:00
Ulrich Drepper 0e42499f6f (__wcsrtombs): When computing maximum number of wide characters to convert do
it right and don't overestimate by multiplying with MB_CUR_MAX.
1999-07-28 04:36:21 +00:00
Ulrich Drepper eb23f97ef0 (_IO_new_fclose): Detect new streams and handle them appropriately. 1999-07-28 04:35:54 +00:00
Ulrich Drepper 4b77b2f8bb (_IO_old_fclose): Detect new streams and handle them appropriately. 1999-07-28 04:35:44 +00:00
Ulrich Drepper 1da9f3f5f5 Allow spaces and tabs in entry names by encoding these characters. 1999-07-28 04:35:25 +00:00
Ulrich Drepper bc541b4b68 Add test case for addmntent and getmntent. 1999-07-28 04:35:08 +00:00
Ulrich Drepper 3068508dba Fix aliasing problems. 1999-07-28 04:34:36 +00:00
Ulrich Drepper 3703b10b6f Use "&" instead of "§" to avoid a bugin bash 2.03. 1999-07-28 04:34:00 +00:00
Ulrich Drepper be91f858ad (euckr_from_ucs4): Set cp[0] to '\0' in case of an error. 1999-07-28 04:33:39 +00:00
Ulrich Drepper 99c7bdfd3d (ksc5601_to_ucs4): Avoid invalid memory accesses. 1999-07-28 04:33:00 +00:00
Ulrich Drepper e2ba9ac91d Add locks for res_send and res_close use. 1999-07-28 04:32:40 +00:00
Roland McGrath 0f178892c6 . 1999-07-26 23:27:10 +00:00
Roland McGrath 72afff15ed 1999-07-26 Roland McGrath <roland@baalperazim.frob.com>
* hurd/hurdprio.c (_hurd_priority_which_map): Initialize PIDS.
	Fix from Marcus Brinkmann <Marcus.Brinkmann@ruhr-uni-bochum.de>.
1999-07-26 23:27:02 +00:00
Ulrich Drepper 19e6317f58 Regenerated: /usr/unsupported/bin/perl scripts/gen-FAQ.pl FAQ.in 1999-07-26 01:57:38 +00:00
Andreas Schwab fc8973d4e3 . 1999-07-21 16:14:15 +00:00
Andreas Schwab 670d1f26f3 * libio/fileops.c (_IO_new_file_underflow): Set error indicator
when reading from write-only stream.
	* libio/oldfileops.c (_IO_old_file_underflow): Likewise.
1999-07-21 16:08:34 +00:00
Roland McGrath f82e8b38a1 . 1999-07-20 21:08:11 +00:00
Roland McGrath b47cac74e3 1999-07-19 Roland McGrath <roland@baalperazim.frob.com>
* hurd/hurdsig.c (_hurd_internal_post_signal): If a
	hurd_signal_preemptor matches but its `preemptor' field is null, use
	its `handler' field directly.  This is to comply with behavior
	documented in <hurd/sigpreempt.h>.
1999-07-20 21:07:55 +00:00
Roland McGrath b9d638fcd4 1999-07-20 Mark Kettenis <kettenis@gnu.org>
* sysdeps/mach/_strerror.c: Include <libintl.h>.
1999-07-20 21:07:48 +00:00
Andreas Schwab d8441947d4 . 1999-07-20 08:38:20 +00:00
Andreas Schwab 01ff174aeb * iconvdata/Makefile (distribute): Don't distribute CVS
directory.
	* sysdeps/generic/Dist: Add siglist.h.
	* sysdeps/mach/hurd/Dist: Add siglist.h.
1999-07-20 08:36:38 +00:00
Ulrich Drepper 117a8fcbcd Update. 1999-07-19 01:48:01 +00:00
Ulrich Drepper 6b30a99829 Add ldd-rewrite.sed. 1999-07-19 01:47:30 +00:00
Ulrich Drepper 936cb88815 Remade for stable-2.1.2 1999-07-19 00:46:33 +00:00
Ulrich Drepper 1dd106fb02 Update. 1999-07-18 07:18:21 +00:00
Ulrich Drepper d71eb21438 Undo last patch. 1999-07-18 07:17:25 +00:00
Ulrich Drepper c6636f69fa Update. 1999-07-18 01:50:03 +00:00
Ulrich Drepper 355b9ae4bc (dl_main): When putting back the interpreter object handle the case where
a missing object might occur in the list of objects but not in the search
list when in trace mode.
1999-07-18 01:48:35 +00:00
Ulrich Drepper 2f245ae37c (common-generated): Don't prepend $(common-prefix). 1999-07-18 01:46:48 +00:00
Ulrich Drepper 48eeade786 Update. 1999-07-17 23:48:45 +00:00
Ulrich Drepper cb47b9a159 Include <stdlib.h> to get prototype for free. 1999-07-17 23:48:13 +00:00
Ulrich Drepper 4ca67fe172 Update. 1999-07-17 23:46:15 +00:00
Ulrich Drepper 9de3145ddd Add missing chunk of patch from 1999-07-04. 1999-07-17 23:44:47 +00:00
Ulrich Drepper bc9d3ed73f Update. 1999-07-17 23:40:12 +00:00
Ulrich Drepper 094e45d49d Use addl instead of pop/pop to keep program deterministic. 1999-07-16 23:25:29 +00:00
Ulrich Drepper cd1bc5a045 (_inb, _inw, _inl, _outb, _outw, _outl): Added to GLIBC_2.1.2. 1999-07-16 23:23:46 +00:00
Ulrich Drepper 7969fed273 Avoid memory leak. 1999-07-16 23:23:32 +00:00
Ulrich Drepper bc50216158 Update. 1999-07-16 23:19:03 +00:00
Ulrich Drepper 4d31cea226 Align _pthread_descr_struct to 32 bytes. 1999-07-16 23:18:26 +00:00
Ulrich Drepper 4e814796bb Update. 1999-07-15 18:14:08 +00:00
Ulrich Drepper 8d11d8174f Use __PMT for exit. 1999-07-15 18:13:57 +00:00
Ulrich Drepper d6d99d12f9 Update. 1999-07-15 11:34:26 +00:00
Ulrich Drepper 2295e95813 (fixup, profile_fixup): Call alloca to prevent inlining. 1999-07-15 11:33:32 +00:00
Ulrich Drepper 5a6d39adc1 Update 1999-07-14 18:23:57 +00:00
Ulrich Drepper ea2ad16a09 (get_number): Handle number parsing more
consistent with strftime.  Only parse a given number of digits.
(get_alt_number):  Fix implementation.  Was broken.
(strptime_internal): Add third parameter to get_number and
get_alt_number calls.
1999-07-14 18:23:32 +00:00
Andreas Schwab 71919c7272 Regenerated: autoconf configure.in 1999-07-13 01:55:36 +00:00
Ulrich Drepper feab180d17 Update. 1999-07-12 21:32:03 +00:00
Ulrich Drepper c7aca6f6bd (gaih_inet): For non-passive connections without a hostname set address to
localhost address.
1999-07-12 21:31:45 +00:00
Ulrich Drepper d411ce8525 Fix typo. 1999-07-12 18:15:19 +00:00
Ulrich Drepper d2ddfa4164 Update. 1999-07-12 18:14:34 +00:00
Ulrich Drepper 4d20a458e5 Add prefix "__" to get[a-z]*_r () to get nscd's own strong version of the
get[a-z]*_r function.
1999-07-12 18:14:25 +00:00
Ulrich Drepper 0f25460908 Recognize 2.95 as gcc version number. 1999-07-12 18:13:29 +00:00
Roland McGrath f58c1b068e . 1999-07-11 17:17:00 +00:00
Roland McGrath ce5922110a 1999-07-11 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/mach/hurd/brk.c (static_data_start): New variable.
	(_hurd_set_brk, init_brk): Use that instead of &__data_start.
	Initialize it from &__data_start if defined, or else &_end.
1999-07-11 17:13:53 +00:00
Roland McGrath ba39129c14 1999-06-25 Roland McGrath <roland@baalperazim.frob.com>
* hurd/hurd.h, hurd/hurd/fd.h, hurd/hurd/port.h, hurd/hurd/signal.h,
	hurd/hurd/threadvar.h, hurd/hurd/userlink.h: Instead of
	_EXTERN_INLINE, use a macro specific to each file,
	_HURD_FD_H_EXTERN_INLINE and the like.
	* hurd/Makefile (inline-headers): New variable.
	(routines): Remove hurdinline.  Add $(inlines).
	(inlines): New variable.
	($(inlines:%=$(objpfx)%.c)): New static pattern rule to generate them.
	(generated): Append those here.
	* hurd/hurdinline.c: File removed.
1999-07-11 17:02:11 +00:00
Ulrich Drepper d97e5d3cd0 Update. 1999-07-10 09:58:57 +00:00
Ulrich Drepper 667217ce8e (pthread_handle_create): Free mmap region after stack if clone failed. 1999-07-10 09:57:24 +00:00
Ulrich Drepper 5c87d67634 (__memcpy_c): Help some stupid old compilers.
(__memset_cc): Likewise.
1999-07-10 09:57:03 +00:00
Ulrich Drepper 249b3724ed For SUID binaries check whether the standard file descriptors are open. 1999-07-10 09:56:37 +00:00
Ulrich Drepper a75a5b6ad6 Remove mmap64 alias for mmap. 1999-07-10 09:56:18 +00:00
Ulrich Drepper bd09d69b2e Test whether mapped area is in range of mmap. If not fail. 1999-07-10 09:55:58 +00:00
Ulrich Drepper 702b909d14 Fix typo. 1999-07-10 00:04:04 +00:00
Ulrich Drepper c3980b2cc1 Update. 1999-07-09 22:26:37 +00:00
Ulrich Drepper fa24269a63 (buffered_vfprintf): Add locking. 1999-07-09 22:26:18 +00:00
Ulrich Drepper 059f928f81 Correct last patch. 1999-07-09 22:15:02 +00:00
Ulrich Drepper 538baf4819 Revert last patch. 1999-07-09 22:14:16 +00:00
Ulrich Drepper 5175645757 Update. 1999-07-09 21:02:49 +00:00
Ulrich Drepper af0bec70ce Add sem_destroy, sem_getvalue, sem_init, sem_post, sem_trywait,
and sem_wait to GLIBC_2.1.
1999-07-09 21:02:24 +00:00
Ulrich Drepper e8e4384834 Compatibility versions of semaphore functions. 1999-07-09 21:01:18 +00:00
Ulrich Drepper 92cb24bf3c (libpthread-routines): Add oldsemaphore routine. 1999-07-09 21:00:54 +00:00
Ulrich Drepper defb047600 Add default_symbol_versions for the changed functions.
(__new_sem_init): Rename from sem_init.
(__new_sem_post): Rename from sem_post.
(__new_sem_wait): Rename from sem_wait.
(__new_sem_trywait): Rename from sem_trywait.
(__new_sem_getvalue): Rename from sem_getvalue.
(__new_sem_destroy): Rename from sem_destroy.
1999-07-09 21:00:41 +00:00
Ulrich Drepper 27815ec39a Update 1999-07-09 20:44:38 +00:00
Ulrich Drepper e3998308eb (getspent_r, getspnam_r): Added to GLIBC_2.1.2. 1999-07-09 20:43:21 +00:00
Ulrich Drepper faf3a61855 (getpwent_r, getpwuid_r): Likewise. 1999-07-09 20:43:04 +00:00
Ulrich Drepper cc7b66164b (getaliasbyname_r, getaliasent_r, gethostbyaddr_r, gethostbyname2_r,
gethostbyname_r, gethostent_r, getnetbyaddr_r, getnetbyname_r, getnetent_r,
getnetgrent_r, getprotobyname_r, getprotobynumber_r, getprotoent_r,
getrpcbyname_r, getrpcbynumber_r, getrpcent_r, getservbyname_r): Added to
GLIBC_2.1.2.
1999-07-09 20:42:51 +00:00
Ulrich Drepper 4678f78846 (getgrent_r, getgrgid_r, getgrnam_r): Added to GLIBC_2.1.2. 1999-07-09 20:42:01 +00:00
Ulrich Drepper afe923264f Make the new ABI GLIBC_2.1.2 and keep the old one as GLIBC_2.0. 1999-07-09 20:41:38 +00:00
Ulrich Drepper a291118ec5 (GLIBC_2.1.2): Added. 1999-07-09 20:40:57 +00:00
Ulrich Drepper 974b0708fa Update. 1999-07-09 20:35:45 +00:00
Ulrich Drepper e84df956c7 Make sure resultbuf->h_addr_list addresses are correctly aligned. 1999-07-09 20:35:28 +00:00
Ulrich Drepper 58edf87b66 Update. 1999-07-09 14:36:24 +00:00
Ulrich Drepper da196a5b5f Split _dl_start in two pieces to prevent GOT usage before the relocation
happened.
1999-07-09 14:36:08 +00:00
Ulrich Drepper b329794bfd Update. 1999-07-09 14:14:53 +00:00
Ulrich Drepper 93dceeb10e (exchange_and_add): Remove `volatile';
add `memory' clobber; optimise for constant `val'.
(atomic_add): Likewise.
(test_and_set): Remove `volatile'; add `memory' clobber; be more
like the original `test_and_set'.
(compare_and_swap): Remove `volatile'; add `memory' clobber;
optimise for constant `oldval'.
(always_swap): Remove `volatile'; add `memory' clobber.
1999-07-09 14:14:40 +00:00
Ulrich Drepper 1ab0549119 Changed to use p_nextlock instead of p_nextwaiting. 1999-07-09 13:56:57 +00:00
Ulrich Drepper 1cc75359d7 Added p_nextlock to initializers. 1999-07-09 13:47:00 +00:00
Ulrich Drepper 4d3a2ae384 Added p_nextlock entry to separate queueing for a lock from queueing
for a CV (sometimes a thread queues on a lock to serialize removing
itself from a CV queue).
1999-07-09 13:46:33 +00:00
Ulrich Drepper fc4617e98c Add question about arch version problems during compilation. 1999-07-08 18:15:32 +00:00
Ulrich Drepper 472003f445 Update. 1999-07-08 11:57:12 +00:00
Ulrich Drepper cb22d4a460 Return -1 instead of EOF and set errno if the stream is not a real file stream. 1999-07-08 11:55:34 +00:00
Ulrich Drepper 2bce6a471e Update. 1999-07-08 11:53:38 +00:00
Ulrich Drepper d5030d7ffb Fix typos. 1999-07-08 11:53:17 +00:00
Ulrich Drepper e3d32a604f Update. 1999-07-08 11:50:22 +00:00
Ulrich Drepper 84dfd1608c Check that /dev/pts is mounted.
(_PATH_DEVPTS, DEVPTS_SUPER_MAGIC): New definitions.
(_PATH_DEVPTMX): Use _PATH_DEV.
1999-07-08 11:50:04 +00:00
Ulrich Drepper 667305cc20 Correct last patch. Handle getcwd (NULL, != 0) correctly.
When resizing buffer make sure new size is large enough.
1999-07-08 11:49:46 +00:00
Ulrich Drepper 29b58d09d5 Describe problem. 1999-07-08 11:49:21 +00:00
Ulrich Drepper 1a2cd2711f (request2size): Also set errno if failing.
(request2size): Take care of overflow in addition.
1999-07-08 11:49:00 +00:00
Ulrich Drepper 59263f403f Update. 1999-07-07 11:58:40 +00:00
Ulrich Drepper 9ca6526ecf Revert bogus 'unset IFS' change. It doesn't belong in the tests, but in
the wordexp implementation.
1999-07-07 11:58:30 +00:00
Ulrich Drepper e6e0e176f2 (exec_comm): Unset IFS so that subshells don't split fields. 1999-07-07 11:58:14 +00:00
Ulrich Drepper 6bb72f8ad4 Update. 1999-07-06 16:07:40 +00:00
Ulrich Drepper 38deee8be7 Add support for some more motherboards. 1999-07-06 16:07:24 +00:00
Ulrich Drepper 7d4b96d50f Update. 1999-07-06 15:53:40 +00:00
Ulrich Drepper c9d643915d Update. 1999-07-06 15:53:12 +00:00
Ulrich Drepper 54bba98f82 Rewrite fragment for ldd on Linux/SPARC. 1999-07-06 15:52:48 +00:00
Ulrich Drepper 8f6eae2f9a Update. 1999-07-06 15:45:32 +00:00
Ulrich Drepper 713a6a7218 (__cmsg_nxthdr): "return 0" instead of "return NULL" to make C++ happy. 1999-07-06 15:45:16 +00:00
Ulrich Drepper 4f93e036a4 Update. 1999-07-06 15:40:57 +00:00
Ulrich Drepper 8c8e3c5ed1 (_IO_new_fdopen): Set EINVAL if MODE is not allowed by the file access
mode of the open file.
1999-07-06 15:40:36 +00:00
Ulrich Drepper 168dc155cc Update. 1999-07-06 15:28:29 +00:00
Ulrich Drepper b8492f2963 (request2size): Check for overflow and return NULL whenever it is encountered. 1999-07-06 15:27:54 +00:00
Ulrich Drepper f5c5534163 (Host Names): Fix typo in last change. 1999-07-06 15:11:25 +00:00
Ulrich Drepper 7d31cb29fc Update. 1999-07-02 12:04:16 +00:00
Ulrich Drepper 3353c7e2b4 Update from main branch. 1999-07-02 11:13:51 +00:00
Ulrich Drepper c52dc24ea5 Update. 1999-06-28 12:43:21 +00:00
Ulrich Drepper f83a748e76 (Copying and Concatenation): Mention that strndup is a GNU extension. 1999-06-28 12:31:33 +00:00
Ulrich Drepper edb6aed7eb (__getpw): Fix check for error return. 1999-06-28 12:30:20 +00:00
Ulrich Drepper 4ecb34f1de Update. 1999-06-26 18:21:09 +00:00
Ulrich Drepper d12777b436 (_dl_map_object_deps): When looking for the next
occurence of the aux object start with the current list entry, not
the new one.  Adjust tail pointer in the unique list.  Explain how
the meaning of the variables changes.
1999-06-26 18:20:58 +00:00
Ulrich Drepper dda691bb29 Update. 1999-06-25 16:35:05 +00:00
Ulrich Drepper a4a7221477 (strnlen): Remove extra prototype. 1999-06-25 16:34:25 +00:00
Roland McGrath 061c77b10a . 1999-06-25 14:48:27 +00:00
Roland McGrath 5f827f92a5 1999-06-25 Roland McGrath <roland@baalperazim.frob.com>
* hurd.h, hurd/hurd/fd.h, hurd/hurd/port.h, hurd/hurd/signal.h,
	hurd/hurd/threadvar.h, hurd/hurd/userlink.h: Instead of
	_EXTERN_INLINE, use a macro specific to each file,
	_HURD_FD_H_EXTERN_INLINE and the like.
	* hurd/Makefile (inline-headers): New variable.
	(routines): Remove hurdinline.  Add $(inlines).
	(inlines): New variable.
	($(inlines:%=$(objpfx)%.c)): New static pattern rule to generate them.
	(generated): Append those here.
	* hurd/hurdinline.c: File removed.
1999-06-25 14:48:20 +00:00
Roland McGrath a513d10bad . 1999-06-25 14:47:11 +00:00
Roland McGrath 622ccdb562 1999-06-25 Roland McGrath <roland@baalperazim.frob.com>
* hurd.h, hurd/fd.h, hurd/port.h, hurd/signal.h, hurd/threadvar.h,
	hurd/userlink.h: Instead of _EXTERN_INLINE, use a macro specific to
	each file, _HURD_FD_H_EXTERN_INLINE and the like.
	* hurd/Makefile (inline-headers): New variable.
	(routines): Remove hurdinline.  Add $(inlines).
	(inlines): New variable.
	($(inlines:%=$(objpfx)%.c)): New static pattern rule to generate them.
	(generated): Append those here.
	* hurd/hurdinline.c: File removed.
1999-06-25 14:46:27 +00:00
Roland McGrath b6c22e40c1 . 1999-06-25 13:45:53 +00:00
Roland McGrath cf3d45dfbf 1999-06-25 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/generic/glob64.c: Include <stddef.h> for NULL.
1999-06-25 13:45:39 +00:00
Roland McGrath bb8b2b7327 . 1999-06-25 13:30:55 +00:00
Roland McGrath ef8eb0c233 1999-06-25 Roland McGrath <roland@baalperazim.frob.com>
* mach/Versions (libc: GLIBC_2.0): Add __mig_strncpy.
1999-06-25 13:29:26 +00:00
Ulrich Drepper d1bb18f983 Update from main branch. 1999-06-24 13:27:58 +00:00
Ulrich Drepper fc508b4d77 Update. 1999-06-24 13:27:43 +00:00
Ulrich Drepper 75979fc205 Update. 1999-06-24 13:10:35 +00:00
Ulrich Drepper 150c1ed496 Add "notfound" data to cache, not iov pointer. 1999-06-24 13:09:46 +00:00
Ulrich Drepper 0c7163dc35 Update. 1999-06-23 12:41:58 +00:00
Ulrich Drepper 04dd2ec0d3 (special): Add test for large ndigit parameter. 1999-06-23 12:41:25 +00:00
Ulrich Drepper 05e99a0bd7 Define NDIGIT_MAX. 1999-06-23 12:41:05 +00:00
Ulrich Drepper c2bd5f098c Define NDIGIT_MAX.
(fcvt_r): Limit precision in snprintf call to NDIGIT_MAX.
1999-06-23 12:40:47 +00:00
Ulrich Drepper 66566e012d Define NDIGIT_MAX.
(gcvt): Limit precision in sprintf call to NDIGIT_MAX.
Do not dynamically allocate the static buffers.  They are small enough.
1999-06-23 12:40:32 +00:00
Ulrich Drepper a22e6290bc Update. 1999-06-23 10:48:44 +00:00
Ulrich Drepper ec8c77a5ba Update from main branch. 1999-06-23 10:48:34 +00:00
Ulrich Drepper ea82c7fae2 Update. 1999-06-22 10:19:37 +00:00
Ulrich Drepper 0c72e72fda Don't return a zero result if the high bits of two words differ. 1999-06-22 10:12:25 +00:00
Ulrich Drepper 143e3b26a8 (x_inline): Cleanup pointer assignments. 1999-06-22 10:09:56 +00:00
Ulrich Drepper 4cf70ccf58 (_IO_old_proc_open): Apply change from 1999-03-29 to iopopen also here. 1999-06-22 10:08:44 +00:00
Ulrich Drepper 28018b6d29 Correct counting of subsections. 1999-06-22 10:07:33 +00:00
Roland McGrath 44df8bd267 . 1999-06-19 12:17:00 +00:00
Roland McGrath 3f584b92ef 1999-06-16 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/unix/sysv/linux/siglist.c: Moved to ...
	* sysdeps/gnu/siglist.c: ... here.
	Use <siglist.h> instead of "siglist.h", to ensure sysdeps-search.
	Use <bits/wordsize.h> instead of <sizes.h> to determine PTR_SIZE_STR.
	* sysdeps/gnu/siglist.h: New file, contents from linux version.
	Add entry for SIGLOST protected by #ifdef.
	* sysdeps/unix/sysv/linux/siglist.h: Just #include that file,
	and define OLD_SIGLIST_SIZE_STR.
	* sysdeps/mach/hurd/siglist.h: New file, likewise.
1999-06-19 12:15:13 +00:00
Ulrich Drepper 9bfaeaffc7 Update. 1999-06-18 19:06:16 +00:00
Ulrich Drepper 01bc6d525b (charmaps): Exclude SCCS.
(locales): Likewise.
(repertoiremaps): Likewise.
1999-06-18 19:05:40 +00:00
Ulrich Drepper 01d7b7cf09 Include setjmp.h. 1999-06-18 19:05:09 +00:00
Ulrich Drepper 6e727e8fc1 Update. 1999-06-17 15:20:19 +00:00
Ulrich Drepper 6dcbb40cc0 Add missing line disciplines. 1999-06-17 15:19:56 +00:00
Ulrich Drepper 46e9ccea85 Update. 1999-06-17 12:42:14 +00:00
Ulrich Drepper dd7f37f738 Return -1 in case nscd is not available and value > 0 for error. 1999-06-17 12:41:46 +00:00
Ulrich Drepper 0030f0f780 Expect return alue to be ERANGE if buffer is too small. 1999-06-17 12:41:26 +00:00
Ulrich Drepper 9105ced87a Return error code not -1. 1999-06-17 12:40:53 +00:00
Ulrich Drepper 26b208d274 Update. 1999-06-17 12:36:45 +00:00
Ulrich Drepper f02f9c8182 (AX25_PIDINCL): Added. 1999-06-17 12:36:27 +00:00
Ulrich Drepper e088133a39 Linux/SPARC sysmacros. 1999-06-17 12:36:06 +00:00
Ulrich Drepper eff9780051 Linux/Alpha sysmacros. 1999-06-17 12:35:52 +00:00
Ulrich Drepper d5a6cf276e [!__GNUC__]: Use correct word order. 1999-06-17 12:35:18 +00:00
Ulrich Drepper c8b0c2c05a Update. 1999-06-17 10:46:21 +00:00
Ulrich Drepper ce742e78fe Don't fail always when oact is NULL. 1999-06-17 10:45:49 +00:00
Ulrich Drepper 15c4564d6c Update. 1999-06-17 10:41:26 +00:00
Ulrich Drepper 45dea6bc6f (_dl_init_paths): Add one more element to aelem to not write beyond allocated
memory.
1999-06-17 10:41:12 +00:00
Ulrich Drepper ca754c997a Keep lock while printing output lines. 1999-06-17 10:40:55 +00:00
Ulrich Drepper cee511f0ec (jn_test): Adjust delta. 1999-06-17 10:40:35 +00:00
Ulrich Drepper cf54ce14d0 Update. 1999-06-16 10:36:06 +00:00
Ulrich Drepper cb2a8054f4 (re_error_msgid): Remove extra commas. 1999-06-16 10:35:56 +00:00
Ulrich Drepper 6574b4eae5 Update. 1999-06-16 10:30:53 +00:00
Ulrich Drepper 89d3e4e49c (sysdep_dirs): Exclude SCCS. 1999-06-16 10:30:37 +00:00
Ulrich Drepper 67c4805796 Update. 1999-06-15 12:08:33 +00:00
Ulrich Drepper b564554527 It is not generally true that if (unsigned)a*(unsigned)b overflows,
then the result is less than 'a'.
1999-06-15 12:08:14 +00:00
Ulrich Drepper 10e89a27de Document is_char in printf_info structure. 1999-06-13 15:21:00 +00:00
Ulrich Drepper b0473a0f6e Update. 1999-06-13 15:20:01 +00:00
Ulrich Drepper e0492b4acc Disable signbit* inline functions for gcc <= 2.7.x.
Add __extension__ to signbit definitions to calm down gcc.
1999-06-13 15:19:13 +00:00
Roland McGrath 673d66205c . 1999-06-13 13:57:19 +00:00
Roland McGrath 91fae3b292 1999-06-13 Roland McGrath <roland@baalperazim.frob.com>
* hurd/hurdsock.c (_hurd_socket_server): Fix fencepost error in last
	change.
1999-06-13 13:56:47 +00:00
Ulrich Drepper 531a23d909 Update from main branch. 1999-06-13 10:40:50 +00:00
Roland McGrath bc6f3d5a19 . 1999-06-13 10:02:58 +00:00
Roland McGrath 091b6505fc 1999-06-12 Mark Kettenis <kettenis@gnu.org>
* Makeconfig (static-start-installed-name): Set to
	$(start-installed-name) if not defined.
	(+link-static): Use $(static-start-installed-name) instead of
	$(start-installed-name).
	* sysdeps/mach/hurd/i386/Makefile (static-start-installed-name):
	Set to crt0.o.
1999-06-13 10:02:10 +00:00
Roland McGrath 1cf22aeeb8 copyright year 1999-06-13 09:53:22 +00:00
Roland McGrath 48ca274919 . 1999-06-13 09:52:16 +00:00
Roland McGrath 75913a5ef5 1999-06-12 Mark Kettenis <kettenis@gnu.org>
* sysdeps/mach/hurd/fork.c (__fork): Make use of `insert_type' when
	inserting a send right into the child instead of unconditionally
	copying the send right.
1999-06-13 09:51:02 +00:00
Ulrich Drepper 862ff21bcd Add some missing MSG_* flags from Linux 2.2.9. 1999-06-13 09:27:04 +00:00
Ulrich Drepper b77ab157d4 Update from main branch. 1999-06-13 09:23:55 +00:00
Roland McGrath ca0350310e . 1999-06-11 16:43:34 +00:00
Roland McGrath 6b113ae7dd 1999-06-11 Mark Kettenis <kettenis@gnu.org>
* hurd/hurdsock.c (max_domain): Initialize to `-1'.
	(_hurd_socket_server): Fix off-by-one error in setting `max_domain'.
1999-06-11 16:42:51 +00:00
Ulrich Drepper 3eb10d0154 Update. 1999-06-07 20:19:28 +00:00
Ulrich Drepper afa10f83bf (__fgetgrent_r): Set errno to ENOENT in case of EOF. 1999-06-07 20:18:43 +00:00
Ulrich Drepper 7a817a6932 (fgetgrent): Remember position of stream before
reading and reset in case the buffer was too small.
1999-06-07 20:18:31 +00:00
Roland McGrath 26083b2983 . 1999-06-07 18:09:58 +00:00
Roland McGrath 31b6743cea 1999-06-07 Roland McGrath <roland@baalperazim.frob.com>
* db2/os/os_oflags.c (__db_oflags): Fix checking of O_ACCMODE bits to
	be POSIX compliant.  Prior definition was broken for Hurd.
	Reported by Mark Kettenis <kettenis@gnu.org>.
1999-06-07 18:09:37 +00:00
Ulrich Drepper 4ddd6678c0 Update. 1999-06-07 15:53:25 +00:00
Ulrich Drepper fa1067535a (__printf_fphex): Don't ignore the precision if the mantissa is zero. 1999-06-07 15:53:16 +00:00
Ulrich Drepper cff4fed9a5 (j0_test, j1_test, jn_test, y0_test, y1_test, yn_test): Increase some epsilons. 1999-06-07 15:42:59 +00:00
Ulrich Drepper 0cd37396bd (Floating Point Parameters): GCC already supports long double for a long time. 1999-06-07 15:42:39 +00:00
Ulrich Drepper f89360dc95 Update. 1999-06-07 15:41:42 +00:00
Ulrich Drepper 342f145462 Update. 1999-06-06 13:12:18 +00:00
Ulrich Drepper bb8098fdd3 Introduce local variable __libc_getpagesize to
avoid multiple calls to getpagesize() which might be a syscall.
(check_action): Change into bitmap so that both
diagnostic and abort can be requested by setting it to 3.
(mALLOC_SET_STATe): Disable malloc checking if necessary.
1999-06-06 13:12:08 +00:00
Ulrich Drepper 4dc3856b63 (Running make install): Correct typo in dynamic linker invocation. 1999-06-06 13:11:41 +00:00
Ulrich Drepper 27f33e3714 Regenerated. 1999-06-06 13:11:22 +00:00
Ulrich Drepper a4cd0dce75 Fix typo in linker option. 1999-06-06 13:11:12 +00:00
Ulrich Drepper d1e8859b93 Update. 1999-06-03 14:03:39 +00:00
Ulrich Drepper 7450ca7ccb Set LC_ALL explicitly to archieve correct sorting of map files. 1999-06-03 14:03:11 +00:00
Ulrich Drepper f23286ebd0 Update 1999-06-02 11:56:15 +00:00
Ulrich Drepper 9e09707af1 (y1_test): New tests.
(y0_test): Likewise.
(j1_test): Likewise.
(j0_test): Likewise.
(main): Added new tests.
1999-06-02 11:55:10 +00:00
Ulrich Drepper eecd06f44a (__ieee754_y0): Fix array indices. 1999-06-02 11:54:38 +00:00
Ulrich Drepper 79a12dff59 Update. 1999-06-02 11:06:15 +00:00
Ulrich Drepper 4ef4e3084a (nscd_gethst_r): Align the h_addr_list pointers properly. 1999-06-02 11:05:41 +00:00
Ulrich Drepper 9788173e9b Update from official version. 1999-06-01 13:29:01 +00:00
Ulrich Drepper deed1afdee Update. 1999-05-27 11:33:07 +00:00
Ulrich Drepper d610d87c6c (Host Names): Remove statement that h_errno needs to be declared since
this isn't true anymore.
1999-05-27 11:32:22 +00:00
Ulrich Drepper bd38e9e96c Update. 1999-05-25 16:51:02 +00:00
Ulrich Drepper e80ac225ac (add_ssaaaa, sub_ddmmss, umul_ppmm): Optimized sparc64 routines. 1999-05-25 16:50:26 +00:00
Ulrich Drepper 91c17abf98 Update. 1999-05-25 14:31:56 +00:00
Ulrich Drepper 068ec9cb76 (VERSION): Bump to 2.1.2. 1999-05-25 14:31:44 +00:00
Ulrich Drepper 0e96cac494 Update from main branch. 1999-05-25 12:28:09 +00:00
23729 changed files with 671730 additions and 5165636 deletions
-4
View File
@@ -1,4 +0,0 @@
[b4]
midmask = https://inbox.sourceware.org/%s
linkmask = https://inbox.sourceware.org/%s
send-series-to = libc-alpha@sourceware.org
-156
View File
@@ -1,156 +0,0 @@
# clang-format file for GLIBC
# Copyright (C) 2022-2026 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
# <https://www.gnu.org/licenses/>.
#
# Requires clang-format version >= 11.0
#
# For more information, see:
#
# https://clang.llvm.org/docs/ClangFormat.html
# https://clang.llvm.org/docs/ClangFormatStyleOptions.html
#
# There are some known cases that this doesn't produce the desired
# style (i.e Preprocessor Directives are over-indented and not
# auto-commented). As a result, this is meant to be a utility to make
# formatting easier, not a definitive standard.
#
# To format the current git diff inplace (-i) the follow command can
# be used:
# $> git diff -U0 --no-color HEAD^ | clang-format-diff -i -p1
#
# To just view the diff clang-format would generate:
# $> git diff -U0 --no-color HEAD^ | clang-format-diff -p1
#
# NB: clang-format-diff, along with other clang-format related tools,
# can be found at: /path/to/llvm-project/clang/tools/clang-format/
#
#
# Based on autogenerated format from:
# $> clang-format --style=GNU -dump-config
---
AccessModifierOffset: -2
AlignAfterOpenBracket: Align
AlignConsecutiveMacros: false
AlignConsecutiveAssignments: false
AlignConsecutiveBitFields: false
AlignConsecutiveDeclarations: false
AlignEscapedNewlines: Right
AlignOperands: true
AlignTrailingComments: true
AllowAllArgumentsOnNextLine: true
AllowAllParametersOfDeclarationOnNextLine: true
AllowShortEnumsOnASingleLine: true
AllowShortBlocksOnASingleLine: false
AllowShortCaseLabelsOnASingleLine: false
AllowShortFunctionsOnASingleLine: All
AllowShortLambdasOnASingleLine: All
AllowShortIfStatementsOnASingleLine: Never
AllowShortLoopsOnASingleLine: false
AlwaysBreakAfterDefinitionReturnType: All
AlwaysBreakAfterReturnType: AllDefinitions
AlwaysBreakBeforeMultilineStrings: false
BinPackArguments: true
BinPackParameters: true
BraceWrapping:
AfterCaseLabel: true
AfterClass: true
AfterControlStatement: true
AfterEnum: true
AfterFunction: true
AfterNamespace: true
AfterStruct: true
AfterUnion: true
AfterExternBlock: true
BeforeCatch: true
BeforeElse: true
BeforeWhile: true
IndentBraces: true
SplitEmptyFunction: true
SplitEmptyRecord: true
SplitEmptyNamespace: true
BreakBeforeBinaryOperators: All
BreakBeforeBraces: GNU
BreakBeforeInheritanceComma: false
BreakInheritanceList: BeforeColon
BreakBeforeTernaryOperators: true
BreakStringLiterals: true
ColumnLimit: 79
CommentPragmas: '^ IWYU pragma:'
CompactNamespaces: false
ContinuationIndentWidth: 4
Cpp11BracedListStyle: false
DeriveLineEnding: true
DerivePointerAlignment: false
DisableFormat: false
ExperimentalAutoDetectBinPacking: false
FixNamespaceComments: false
IncludeBlocks: Preserve
IncludeCategories:
- Regex: '.*'
Priority: 1
IncludeIsMainRegex: '(Test)?$'
IndentCaseLabels: false
IndentCaseBlocks: false
IndentGotoLabels: true
IndentWidth: 2
IndentPPDirectives: AfterHash
IndentExternBlock: AfterExternBlock
IndentWrappedFunctionNames: false
InsertTrailingCommas: None
KeepEmptyLinesAtTheStartOfBlocks: true
MacroBlockBegin: ''
MacroBlockEnd: ''
MaxEmptyLinesToKeep: 1
NamespaceIndentation: None
PenaltyBreakAssignment: 2
PenaltyBreakBeforeFirstCallParameter: 19
PenaltyBreakComment: 300
PenaltyBreakFirstLessLess: 120
PenaltyBreakString: 1000
PenaltyExcessCharacter: 1000000
PenaltyReturnTypeOnItsOwnLine: 60
PointerAlignment: Right
ReflowComments: true
SortIncludes: false
SortUsingDeclarations: true
SpaceAfterCStyleCast: true
SpaceAfterLogicalNot: false
SpaceBeforeAssignmentOperators: true
SpaceBeforeCpp11BracedList: false
SpaceBeforeCtorInitializerColon: true
SpaceBeforeInheritanceColon: true
SpaceBeforeParens: Always
SpaceBeforeRangeBasedForLoopColon: true
SpaceInEmptyBlock: false
SpaceInEmptyParentheses: false
SpacesBeforeTrailingComments: 1
SpacesInAngles: false
SpacesInConditionalStatement: false
SpacesInContainerLiterals: true
SpacesInCStyleCastParentheses: false
SpacesInParentheses: false
SpacesInSquareBrackets: false
SpaceBeforeSquareBrackets: false
Standard: Cpp03
TabWidth: 8
UseTab: Always
ForEachMacros:
- 'FOR_EACH_IMPL'
- 'list_for_each'
- 'list_for_each_prev'
- 'list_for_each_prev_safe'
...
+26
View File
@@ -0,0 +1,26 @@
*.d *.o *.so *.po *.go *.bo stamp.* *.stamp *.ustamp *.udeps
*.gz *.Z *.tar *.tgz
=*
TODO AUTHORS copyr-* copying.*
glibc-*
configparms
sun[43]* i[345]86* hp300*
ieeetest hppa-sysdeps regex
gpl2lgpl.sed
distinfo
distinfo
test-include
analysis
docs
releases
crypt
linuxthreads
libc.prj .libc.prcs_aux
libc.proj .snprj
-2
View File
@@ -1,2 +0,0 @@
ChangeLog merge=merge-changelog
timezone/* -whitespace
-46
View File
@@ -1,46 +0,0 @@
*~
*.gz
*.Z
*.tar
*.tgz
*.bz2
*.rej
*.orig
=*
TAGS
TODO
AUTHORS
copyr-*
copying.*
glibc-*
configparms
ieeetest
regex
gpl2lgpl.sed
distinfo
test-include
analysis
docs
releases
libc.prj
.libc.prcs_aux
libc.proj
.snprj
TODO.html
autom4te*.cache
core
.gdb_history
.gdbinit
/linuxthreads
/linuxthreads_db
/rtkaio
*.pyc
+68
View File
@@ -0,0 +1,68 @@
List of known bugs (certainly very incomplete)
----------------------------------------------
Time-stamp: <1999-07-06T15:38:22-0700 drepper>
This following list contains those bugs which I'm aware of. Please
make sure that bugs you report are not listed here. If you can fix one
of these bugs/limitations I'll certainly be glad to receive a patch.
Another source of information about bugs is the problem data base of the
GNU project. There is an easy to use WWW interface available at
http://www-gnats.gnu.org:8080/cgi-bin/wwwgnats.pl
I would appreciate it very much if you could verify the problem was not
reported before by looking through the database. To make the information
in this database as useful as possible please report bugs always using the
`glibcbug' shell script which gets installed with GNU libc. Before reporting
a bug please check the FAQ since it discusses also a lot of problematic
situations.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Severity: [ *] to [***]
[ **] There are problems with signal handling when using LinuxThreads.
[ **] The RPC code is not 64 bit clean. This is getting slowly fixed
but expect incompatible changes on 64 bit platforms like Alpha.
[ *] The precision of the `sinhl' and/or `asinhl' function do not seem
to be the best.
[ *] On Linux, there should be a way to prevent defining the symbol
NGROUPS_MAX in the <linux/limits.h> header file. In glibc it
is defined in <posix1_lim.h> which must not make the other
symbols in <linux/limits.h> available.
[PR libc/140]
[ *] The localedef program should not generate errors if for categories
which are not used for the output there are characters referenced
which are not defined in the charmap.
[PR libc/229]
[ *] When assembling a locale definition, that uses the "copy"
directive, with localedef, not only the copied category is
checked for errors, but the whole file containing the same
category.
[PR libc/207 and PR libc/454]
[ *] The libm-ieee `gamma' function gives wrong results (at least for
-0.5).
[ *] The libm-ieee `scalb' function gives wrong results for
non-integral second parameters.
[ *] The *scanf() functions currently do not handle %l[ and %ls parameters
correctly since the parsing of the multi-byte characters does not
yet use mbsrtowcs().
[ *] The strftime() implementation cannot handle multibyte locales really
good since the TOLOWER and TOUPPER are not prepared.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Ulrich Drepper
drepper@cygnus.com
+127
View File
@@ -0,0 +1,127 @@
Conformance of the GNU libc with various standards
==================================================
The GNU libc is designed to be conformant with existing standard as
far as possible. To ensure this I've run various tests. The results
are presented here.
Open Group's hdrchk
-------------------
The hdrchk test suite is available from the Open Group at
ftp://ftp.rdg.opengroup.org/pub/unsupported/stdtools/hdrchk/
I've last run the suite on 1998-07-08 on a Linux/ix86 system with the
following results [*]:
FIPS No reported problems
POSIX90 No reported problems
XPG3 No reported problems
XPG4 The wide character I/O stuff is missing in glibc.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*** Starting wchar.h
Missing: extern wint_t fgetwc();
Missing: extern wchar_t *fgetws();
Missing: extern wint_t fputwc();
Missing: extern int fputws();
Missing: extern wint_t getwc();
Missing: extern wint_t getwchar();
Missing: extern wint_t putwc();
Missing: extern wchar_t putwchar();
Missing: extern wint_t ungetwc();
Missing: extern size_t wcsftime();
*** Completed wchar.h
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Beside this a problem in stdio.h is reported but
this is only because the scripts don't understand
the sometimes complex constructs in the header.
POSIX96 Same as UNIX98 [see below].
UNIX98 Quite a lot of problems, almost all due to limitations
of the Linux kernel (2.1.108):
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*** Starting mqueue.h
Missing #include file: mqueue.h
*** Completed mqueue.h
*** Starting semaphore.h
Missing: #define SEM_FAILED (-1)
Missing: extern int sem_close();
Missing: extern sem_t *sem_open();
Missing: extern int sem_unlink();
*** Completed semaphore.h
*** Starting signal.h
Missing: #define SIGSYS (-1)
*** Completed signal.h
*** Starting sys/mman.h
Missing: extern int shm_open();
Missing: extern int shm_unlink();
*** Completed sys/mman.h
*** Starting sys/stat.h
Missing: #define S_TYPEISMQ (-1)
Missing: #define S_TYPEISSEM (-1)
Missing: #define S_TYPEISSHM (-1)
*** Completed sys/stat.h
*** Starting sys/types.h
Missing: typedef <type> clockid_t;
Missing: typedef <type> timer_t;
*** Completed sys/types.h
*** Starting time.h
Missing: #define CLOCK_REALTIME (-1)
Missing: #define TIMER_ABSTIME (-1)
Missing: extern int clock_getres();
Missing: extern int clock_gettime();
Missing: extern int clock_settime();
Missing: struct itimerspec { <members> };
Missing: extern int timer_create();
Missing: extern int timer_delete();
Missing: extern int timer_getoverrun();
Missing: extern int timer_gettime();
Missing: extern int timer_settime();
*** Completed time.h
*** Starting unistd.h
Missing: #define _POSIX_MESSAGE_PASSING (-1)
Missing: #define _POSIX_SEMAPHORES (-1)
Missing: #define _POSIX_SHARED_MEMORY_OBJECTS (-1)
Missing: #define _POSIX_TIMERS (-1)
*** Completed unistd.h
*** Starting wchar.h
Missing: extern wint_t fgetwc();
Missing: extern wchar_t *fgetws();
Missing: extern wint_t fputwc();
Missing: extern int fputws();
Missing: extern int fwide();
Missing: extern int fwprintf();
Missing: extern int fwscanf();
Missing: extern wint_t getwc();
Missing: extern wint_t getwchar();
Missing: extern wint_t putwc();
Missing: extern wchar_t putwchar();
Missing: extern int swprintf();
Missing: extern int swscanf();
Missing: extern wint_t ungetwc();
Missing: extern int vfwprintf();
Missing: extern int vswprintf();
Missing: extern int vwprintf();
Missing: extern size_t wcsftime();
Missing: extern wchar_t *wcswcs();
Missing: extern int wprintf();
Missing: extern int wscanf();
*** Completed wchar.h
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Only the `wchar.h' problems result from glibc
defficiencies since we still don't support wide
character I/O.
[*] Since the scripts are not clever enough for the way gcc handles
include files (namely, putting some of them in gcc-local directory) I
copied over the iso646.h, float.h, and stddef.h headers and ignored the
problems resulting from the splitted limits.h file).
-10387
View File
File diff suppressed because it is too large Load Diff
+340
View File
@@ -0,0 +1,340 @@
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
License is intended to guarantee your freedom to share and change free
software--to make sure the software is free for all its users. This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it. (Some other Free Software Foundation software is covered by
the GNU Library General Public License instead.) You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
this service if you wish), that you receive source code or can get it
if you want it, that you can change the software or use pieces of it
in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if you
distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have. You must make sure that they, too, receive or can get the
source code. And you must show them these terms so they know their
rights.
We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain
that everyone understands that there is no warranty for this free
software. If the software is modified by someone else and passed on, we
want its recipients to know that what they have is not the original, so
that any problems introduced by others will not reflect on the original
authors' reputations.
Finally, any free program is threatened constantly by software
patents. We wish to avoid the danger that redistributors of a free
program will individually obtain patent licenses, in effect making the
program proprietary. To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and
modification follow.
GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License applies to any program or other work which contains
a notice placed by the copyright holder saying it may be distributed
under the terms of this General Public License. The "Program", below,
refers to any such program or work, and a "work based on the Program"
means either the Program or any derivative work under copyright law:
that is to say, a work containing the Program or a portion of it,
either verbatim or with modifications and/or translated into another
language. (Hereinafter, translation is included without limitation in
the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running the Program is not restricted, and the output from the Program
is covered only if its contents constitute a work based on the
Program (independent of having been made by running the Program).
Whether that is true depends on what the Program does.
1. You may copy and distribute verbatim copies of the Program's
source code as you receive it, in any medium, provided that you
conspicuously and appropriately publish on each copy an appropriate
copyright notice and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any warranty;
and give any other recipients of the Program a copy of this License
along with the Program.
You may charge a fee for the physical act of transferring a copy, and
you may at your option offer warranty protection in exchange for a fee.
2. You may modify your copy or copies of the Program or any portion
of it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
a) You must cause the modified files to carry prominent notices
stating that you changed the files and the date of any change.
b) You must cause any work that you distribute or publish, that in
whole or in part contains or is derived from the Program or any
part thereof, to be licensed as a whole at no charge to all third
parties under the terms of this License.
c) If the modified program normally reads commands interactively
when run, you must cause it, when started running for such
interactive use in the most ordinary way, to print or display an
announcement including an appropriate copyright notice and a
notice that there is no warranty (or else, saying that you provide
a warranty) and that users may redistribute the program under
these conditions, and telling the user how to view a copy of this
License. (Exception: if the Program itself is interactive but
does not normally print such an announcement, your work based on
the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based
on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Program.
In addition, mere aggregation of another work not based on the Program
with the Program (or with a work based on the Program) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.
3. You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the following:
a) Accompany it with the complete corresponding machine-readable
source code, which must be distributed under the terms of Sections
1 and 2 above on a medium customarily used for software interchange; or,
b) Accompany it with a written offer, valid for at least three
years, to give any third party, for a charge no more than your
cost of physically performing source distribution, a complete
machine-readable copy of the corresponding source code, to be
distributed under the terms of Sections 1 and 2 above on a medium
customarily used for software interchange; or,
c) Accompany it with the information you received as to the offer
to distribute corresponding source code. (This alternative is
allowed only for noncommercial distribution and only if you
received the program in object code or executable form with such
an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for
making modifications to it. For an executable work, complete source
code means all the source code for all modules it contains, plus any
associated interface definition files, plus the scripts used to
control compilation and installation of the executable. However, as a
special exception, the source code distributed need not include
anything that is normally distributed (in either source or binary
form) with the major components (compiler, kernel, and so on) of the
operating system on which the executable runs, unless that component
itself accompanies the executable.
If distribution of executable or object code is made by offering
access to copy from a designated place, then offering equivalent
access to copy the source code from the same place counts as
distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.
4. You may not copy, modify, sublicense, or distribute the Program
except as expressly provided under this License. Any attempt
otherwise to copy, modify, sublicense or distribute the Program is
void, and will automatically terminate your rights under this License.
However, parties who have received copies, or rights, from you under
this License will not have their licenses terminated so long as such
parties remain in full compliance.
5. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Program or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Program (or any work based on the
Program), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Program or works based on it.
6. Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the
original licensor to copy, distribute or modify the Program subject to
these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties to
this License.
7. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Program at all. For example, if a patent
license would not permit royalty-free redistribution of the Program by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under
any particular circumstance, the balance of the section is intended to
apply and the section as a whole is intended to apply in other
circumstances.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system, which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.
This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.
8. If the distribution and/or use of the Program is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Program under this License
may add an explicit geographical distribution limitation excluding
those countries, so that distribution is permitted only in or among
countries not thus excluded. In such case, this License incorporates
the limitation as if written in the body of this License.
9. The Free Software Foundation may publish revised and/or new versions
of the General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the Program
specifies a version number of this License which applies to it and "any
later version", you have the option of following the terms and conditions
either of that version or of any later version published by the Free
Software Foundation. If the Program does not specify a version number of
this License, you may choose any version ever published by the Free Software
Foundation.
10. If you wish to incorporate parts of the Program into other free
programs whose distribution conditions are different, write to the author
to ask for permission. For software which is copyrighted by the Free
Software Foundation, write to the Free Software Foundation; we sometimes
make exceptions for this. Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.
NO WARRANTY
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
REPAIR OR CORRECTION.
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
convey the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
<one line to give the program's name and a brief idea of what it does.>
Copyright (C) 19yy <name of author>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this
when it starts in an interactive mode:
Gnomovision version 69, Copyright (C) 19yy name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, the commands you use may
be called something other than `show w' and `show c'; they could even be
mouse-clicks or menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the program, if
necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
`Gnomovision' (which makes passes at compilers) written by James Hacker.
<signature of Ty Coon>, 1 April 1989
Ty Coon, President of Vice
This General Public License does not permit incorporating your program into
proprietary programs. If your program is a subroutine library, you may
consider it more useful to permit linking proprietary applications with the
library. If this is what you want to do, use the GNU Library General
Public License instead of this License.
-501
View File
@@ -1,501 +0,0 @@
GNU LESSER GENERAL PUBLIC LICENSE
Version 2.1, February 1999
Copyright (C) 1991, 1999 Free Software Foundation, Inc.
<https://fsf.org/>
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
[This is the first released version of the Lesser GPL. It also counts
as the successor of the GNU Library Public License, version 2, hence
the version number 2.1.]
Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
Licenses are intended to guarantee your freedom to share and change
free software--to make sure the software is free for all its users.
This license, the Lesser General Public License, applies to some
specially designated software packages--typically libraries--of the
Free Software Foundation and other authors who decide to use it. You
can use it too, but we suggest you first think carefully about whether
this license or the ordinary General Public License is the better
strategy to use in any particular case, based on the explanations below.
When we speak of free software, we are referring to freedom of use,
not price. Our General Public Licenses are designed to make sure that
you have the freedom to distribute copies of free software (and charge
for this service if you wish); that you receive source code or can get
it if you want it; that you can change the software and use pieces of
it in new free programs; and that you are informed that you can do
these things.
To protect your rights, we need to make restrictions that forbid
distributors to deny you these rights or to ask you to surrender these
rights. These restrictions translate to certain responsibilities for
you if you distribute copies of the library or if you modify it.
For example, if you distribute copies of the library, whether gratis
or for a fee, you must give the recipients all the rights that we gave
you. You must make sure that they, too, receive or can get the source
code. If you link other code with the library, you must provide
complete object files to the recipients, so that they can relink them
with the library after making changes to the library and recompiling
it. And you must show them these terms so they know their rights.
We protect your rights with a two-step method: (1) we copyright the
library, and (2) we offer you this license, which gives you legal
permission to copy, distribute and/or modify the library.
To protect each distributor, we want to make it very clear that
there is no warranty for the free library. Also, if the library is
modified by someone else and passed on, the recipients should know
that what they have is not the original version, so that the original
author's reputation will not be affected by problems that might be
introduced by others.
Finally, software patents pose a constant threat to the existence of
any free program. We wish to make sure that a company cannot
effectively restrict the users of a free program by obtaining a
restrictive license from a patent holder. Therefore, we insist that
any patent license obtained for a version of the library must be
consistent with the full freedom of use specified in this license.
Most GNU software, including some libraries, is covered by the
ordinary GNU General Public License. This license, the GNU Lesser
General Public License, applies to certain designated libraries, and
is quite different from the ordinary General Public License. We use
this license for certain libraries in order to permit linking those
libraries into non-free programs.
When a program is linked with a library, whether statically or using
a shared library, the combination of the two is legally speaking a
combined work, a derivative of the original library. The ordinary
General Public License therefore permits such linking only if the
entire combination fits its criteria of freedom. The Lesser General
Public License permits more lax criteria for linking other code with
the library.
We call this license the "Lesser" General Public License because it
does Less to protect the user's freedom than the ordinary General
Public License. It also provides other free software developers Less
of an advantage over competing non-free programs. These disadvantages
are the reason we use the ordinary General Public License for many
libraries. However, the Lesser license provides advantages in certain
special circumstances.
For example, on rare occasions, there may be a special need to
encourage the widest possible use of a certain library, so that it becomes
a de-facto standard. To achieve this, non-free programs must be
allowed to use the library. A more frequent case is that a free
library does the same job as widely used non-free libraries. In this
case, there is little to gain by limiting the free library to free
software only, so we use the Lesser General Public License.
In other cases, permission to use a particular library in non-free
programs enables a greater number of people to use a large body of
free software. For example, permission to use the GNU C Library in
non-free programs enables many more people to use the whole GNU
operating system, as well as its variant, the GNU/Linux operating
system.
Although the Lesser General Public License is Less protective of the
users' freedom, it does ensure that the user of a program that is
linked with the Library has the freedom and the wherewithal to run
that program using a modified version of the Library.
The precise terms and conditions for copying, distribution and
modification follow. Pay close attention to the difference between a
"work based on the library" and a "work that uses the library". The
former contains code derived from the library, whereas the latter must
be combined with the library in order to run.
GNU LESSER GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License Agreement applies to any software library or other
program which contains a notice placed by the copyright holder or
other authorized party saying it may be distributed under the terms of
this Lesser General Public License (also called "this License").
Each licensee is addressed as "you".
A "library" means a collection of software functions and/or data
prepared so as to be conveniently linked with application programs
(which use some of those functions and data) to form executables.
The "Library", below, refers to any such software library or work
which has been distributed under these terms. A "work based on the
Library" means either the Library or any derivative work under
copyright law: that is to say, a work containing the Library or a
portion of it, either verbatim or with modifications and/or translated
straightforwardly into another language. (Hereinafter, translation is
included without limitation in the term "modification".)
"Source code" for a work means the preferred form of the work for
making modifications to it. For a library, complete source code means
all the source code for all modules it contains, plus any associated
interface definition files, plus the scripts used to control compilation
and installation of the library.
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running a program using the Library is not restricted, and output from
such a program is covered only if its contents constitute a work based
on the Library (independent of the use of the Library in a tool for
writing it). Whether that is true depends on what the Library does
and what the program that uses the Library does.
1. You may copy and distribute verbatim copies of the Library's
complete source code as you receive it, in any medium, provided that
you conspicuously and appropriately publish on each copy an
appropriate copyright notice and disclaimer of warranty; keep intact
all the notices that refer to this License and to the absence of any
warranty; and distribute a copy of this License along with the
Library.
You may charge a fee for the physical act of transferring a copy,
and you may at your option offer warranty protection in exchange for a
fee.
2. You may modify your copy or copies of the Library or any portion
of it, thus forming a work based on the Library, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
a) The modified work must itself be a software library.
b) You must cause the files modified to carry prominent notices
stating that you changed the files and the date of any change.
c) You must cause the whole of the work to be licensed at no
charge to all third parties under the terms of this License.
d) If a facility in the modified Library refers to a function or a
table of data to be supplied by an application program that uses
the facility, other than as an argument passed when the facility
is invoked, then you must make a good faith effort to ensure that,
in the event an application does not supply such function or
table, the facility still operates, and performs whatever part of
its purpose remains meaningful.
(For example, a function in a library to compute square roots has
a purpose that is entirely well-defined independent of the
application. Therefore, Subsection 2d requires that any
application-supplied function or table used by this function must
be optional: if the application does not supply it, the square
root function must still compute square roots.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Library,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based
on the Library, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote
it.
Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Library.
In addition, mere aggregation of another work not based on the Library
with the Library (or with a work based on the Library) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.
3. You may opt to apply the terms of the ordinary GNU General Public
License instead of this License to a given copy of the Library. To do
this, you must alter all the notices that refer to this License, so
that they refer to the ordinary GNU General Public License, version 2,
instead of to this License. (If a newer version than version 2 of the
ordinary GNU General Public License has appeared, then you can specify
that version instead if you wish.) Do not make any other change in
these notices.
Once this change is made in a given copy, it is irreversible for
that copy, so the ordinary GNU General Public License applies to all
subsequent copies and derivative works made from that copy.
This option is useful when you wish to copy part of the code of
the Library into a program that is not a library.
4. You may copy and distribute the Library (or a portion or
derivative of it, under Section 2) in object code or executable form
under the terms of Sections 1 and 2 above provided that you accompany
it with the complete corresponding machine-readable source code, which
must be distributed under the terms of Sections 1 and 2 above on a
medium customarily used for software interchange.
If distribution of object code is made by offering access to copy
from a designated place, then offering equivalent access to copy the
source code from the same place satisfies the requirement to
distribute the source code, even though third parties are not
compelled to copy the source along with the object code.
5. A program that contains no derivative of any portion of the
Library, but is designed to work with the Library by being compiled or
linked with it, is called a "work that uses the Library". Such a
work, in isolation, is not a derivative work of the Library, and
therefore falls outside the scope of this License.
However, linking a "work that uses the Library" with the Library
creates an executable that is a derivative of the Library (because it
contains portions of the Library), rather than a "work that uses the
library". The executable is therefore covered by this License.
Section 6 states terms for distribution of such executables.
When a "work that uses the Library" uses material from a header file
that is part of the Library, the object code for the work may be a
derivative work of the Library even though the source code is not.
Whether this is true is especially significant if the work can be
linked without the Library, or if the work is itself a library. The
threshold for this to be true is not precisely defined by law.
If such an object file uses only numerical parameters, data
structure layouts and accessors, and small macros and small inline
functions (ten lines or less in length), then the use of the object
file is unrestricted, regardless of whether it is legally a derivative
work. (Executables containing this object code plus portions of the
Library will still fall under Section 6.)
Otherwise, if the work is a derivative of the Library, you may
distribute the object code for the work under the terms of Section 6.
Any executables containing that work also fall under Section 6,
whether or not they are linked directly with the Library itself.
6. As an exception to the Sections above, you may also combine or
link a "work that uses the Library" with the Library to produce a
work containing portions of the Library, and distribute that work
under terms of your choice, provided that the terms permit
modification of the work for the customer's own use and reverse
engineering for debugging such modifications.
You must give prominent notice with each copy of the work that the
Library is used in it and that the Library and its use are covered by
this License. You must supply a copy of this License. If the work
during execution displays copyright notices, you must include the
copyright notice for the Library among them, as well as a reference
directing the user to the copy of this License. Also, you must do one
of these things:
a) Accompany the work with the complete corresponding
machine-readable source code for the Library including whatever
changes were used in the work (which must be distributed under
Sections 1 and 2 above); and, if the work is an executable linked
with the Library, with the complete machine-readable "work that
uses the Library", as object code and/or source code, so that the
user can modify the Library and then relink to produce a modified
executable containing the modified Library. (It is understood
that the user who changes the contents of definitions files in the
Library will not necessarily be able to recompile the application
to use the modified definitions.)
b) Use a suitable shared library mechanism for linking with the
Library. A suitable mechanism is one that (1) uses at run time a
copy of the library already present on the user's computer system,
rather than copying library functions into the executable, and (2)
will operate properly with a modified version of the library, if
the user installs one, as long as the modified version is
interface-compatible with the version that the work was made with.
c) Accompany the work with a written offer, valid for at
least three years, to give the same user the materials
specified in Subsection 6a, above, for a charge no more
than the cost of performing this distribution.
d) If distribution of the work is made by offering access to copy
from a designated place, offer equivalent access to copy the above
specified materials from the same place.
e) Verify that the user has already received a copy of these
materials or that you have already sent this user a copy.
For an executable, the required form of the "work that uses the
Library" must include any data and utility programs needed for
reproducing the executable from it. However, as a special exception,
the materials to be distributed need not include anything that is
normally distributed (in either source or binary form) with the major
components (compiler, kernel, and so on) of the operating system on
which the executable runs, unless that component itself accompanies
the executable.
It may happen that this requirement contradicts the license
restrictions of other proprietary libraries that do not normally
accompany the operating system. Such a contradiction means you cannot
use both them and the Library together in an executable that you
distribute.
7. You may place library facilities that are a work based on the
Library side-by-side in a single library together with other library
facilities not covered by this License, and distribute such a combined
library, provided that the separate distribution of the work based on
the Library and of the other library facilities is otherwise
permitted, and provided that you do these two things:
a) Accompany the combined library with a copy of the same work
based on the Library, uncombined with any other library
facilities. This must be distributed under the terms of the
Sections above.
b) Give prominent notice with the combined library of the fact
that part of it is a work based on the Library, and explaining
where to find the accompanying uncombined form of the same work.
8. You may not copy, modify, sublicense, link with, or distribute
the Library except as expressly provided under this License. Any
attempt otherwise to copy, modify, sublicense, link with, or
distribute the Library is void, and will automatically terminate your
rights under this License. However, parties who have received copies,
or rights, from you under this License will not have their licenses
terminated so long as such parties remain in full compliance.
9. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Library or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Library (or any work based on the
Library), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Library or works based on it.
10. Each time you redistribute the Library (or any work based on the
Library), the recipient automatically receives a license from the
original licensor to copy, distribute, link with or modify the Library
subject to these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties with
this License.
11. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Library at all. For example, if a patent
license would not permit royalty-free redistribution of the Library by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Library.
If any portion of this section is held invalid or unenforceable under any
particular circumstance, the balance of the section is intended to apply,
and the section as a whole is intended to apply in other circumstances.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.
This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.
12. If the distribution and/or use of the Library is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Library under this License may add
an explicit geographical distribution limitation excluding those countries,
so that distribution is permitted only in or among countries not thus
excluded. In such case, this License incorporates the limitation as if
written in the body of this License.
13. The Free Software Foundation may publish revised and/or new
versions of the Lesser General Public License from time to time.
Such new versions will be similar in spirit to the present version,
but may differ in detail to address new problems or concerns.
Each version is given a distinguishing version number. If the Library
specifies a version number of this License which applies to it and
"any later version", you have the option of following the terms and
conditions either of that version or of any later version published by
the Free Software Foundation. If the Library does not specify a
license version number, you may choose any version ever published by
the Free Software Foundation.
14. If you wish to incorporate parts of the Library into other free
programs whose distribution conditions are incompatible with these,
write to the author to ask for permission. For software which is
copyrighted by the Free Software Foundation, write to the Free
Software Foundation; we sometimes make exceptions for this. Our
decision will be guided by the two goals of preserving the free status
of all derivatives of our free software and of promoting the sharing
and reuse of software generally.
NO WARRANTY
15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
DAMAGES.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Libraries
If you develop a new library, and you want it to be of the greatest
possible use to the public, we recommend making it free software that
everyone can redistribute and change. You can do so by permitting
redistribution under these terms (or, alternatively, under the terms of the
ordinary General Public License).
To apply these terms, attach the following notices to the library. It is
safest to attach them to the start of each source file to most effectively
convey the exclusion of warranty; and each file should have at least the
"copyright" line and a pointer to where the full notice is found.
<one line to give the library's name and a brief idea of what it does.>
Copyright (C) <year> <name of author>
This 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.
This 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 this library; if not, see <https://www.gnu.org/licenses/>.
Also add information on how to contact you by electronic and paper mail.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the library, if
necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the
library `Frob' (a library for tweaking knobs) written by James Random Hacker.
<signature of Moe Ghoul>, 1 April 1990
Moe Ghoul, President of Vice
That's all there is to it!
-1
View File
@@ -1 +0,0 @@
COPYING.LESSERv2
+482
View File
@@ -0,0 +1,482 @@
GNU LIBRARY GENERAL PUBLIC LICENSE
Version 2, June 1991
Copyright (C) 1991 Free Software Foundation, Inc.
59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
[This is the first released version of the library GPL. It is
numbered 2 because it goes with version 2 of the ordinary GPL.]
Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
Licenses are intended to guarantee your freedom to share and change
free software--to make sure the software is free for all its users.
This license, the Library General Public License, applies to some
specially designated Free Software Foundation software, and to any
other libraries whose authors decide to use it. You can use it for
your libraries, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
this service if you wish), that you receive source code or can get it
if you want it, that you can change the software or use pieces of it
in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if
you distribute copies of the library, or if you modify it.
For example, if you distribute copies of the library, whether gratis
or for a fee, you must give the recipients all the rights that we gave
you. You must make sure that they, too, receive or can get the source
code. If you link a program with the library, you must provide
complete object files to the recipients so that they can relink them
with the library, after making changes to the library and recompiling
it. And you must show them these terms so they know their rights.
Our method of protecting your rights has two steps: (1) copyright
the library, and (2) offer you this license which gives you legal
permission to copy, distribute and/or modify the library.
Also, for each distributor's protection, we want to make certain
that everyone understands that there is no warranty for this free
library. If the library is modified by someone else and passed on, we
want its recipients to know that what they have is not the original
version, so that any problems introduced by others will not reflect on
the original authors' reputations.
Finally, any free program is threatened constantly by software
patents. We wish to avoid the danger that companies distributing free
software will individually obtain patent licenses, thus in effect
transforming the program into proprietary software. To prevent this,
we have made it clear that any patent must be licensed for everyone's
free use or not licensed at all.
Most GNU software, including some libraries, is covered by the ordinary
GNU General Public License, which was designed for utility programs. This
license, the GNU Library General Public License, applies to certain
designated libraries. This license is quite different from the ordinary
one; be sure to read it in full, and don't assume that anything in it is
the same as in the ordinary license.
The reason we have a separate public license for some libraries is that
they blur the distinction we usually make between modifying or adding to a
program and simply using it. Linking a program with a library, without
changing the library, is in some sense simply using the library, and is
analogous to running a utility program or application program. However, in
a textual and legal sense, the linked executable is a combined work, a
derivative of the original library, and the ordinary General Public License
treats it as such.
Because of this blurred distinction, using the ordinary General
Public License for libraries did not effectively promote software
sharing, because most developers did not use the libraries. We
concluded that weaker conditions might promote sharing better.
However, unrestricted linking of non-free programs would deprive the
users of those programs of all benefit from the free status of the
libraries themselves. This Library General Public License is intended to
permit developers of non-free programs to use free libraries, while
preserving your freedom as a user of such programs to change the free
libraries that are incorporated in them. (We have not seen how to achieve
this as regards changes in header files, but we have achieved it as regards
changes in the actual functions of the Library.) The hope is that this
will lead to faster development of free libraries.
The precise terms and conditions for copying, distribution and
modification follow. Pay close attention to the difference between a
"work based on the library" and a "work that uses the library". The
former contains code derived from the library, while the latter only
works together with the library.
Note that it is possible for a library to be covered by the ordinary
General Public License rather than by this special one.
GNU LIBRARY GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License Agreement applies to any software library which
contains a notice placed by the copyright holder or other authorized
party saying it may be distributed under the terms of this Library
General Public License (also called "this License"). Each licensee is
addressed as "you".
A "library" means a collection of software functions and/or data
prepared so as to be conveniently linked with application programs
(which use some of those functions and data) to form executables.
The "Library", below, refers to any such software library or work
which has been distributed under these terms. A "work based on the
Library" means either the Library or any derivative work under
copyright law: that is to say, a work containing the Library or a
portion of it, either verbatim or with modifications and/or translated
straightforwardly into another language. (Hereinafter, translation is
included without limitation in the term "modification".)
"Source code" for a work means the preferred form of the work for
making modifications to it. For a library, complete source code means
all the source code for all modules it contains, plus any associated
interface definition files, plus the scripts used to control compilation
and installation of the library.
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running a program using the Library is not restricted, and output from
such a program is covered only if its contents constitute a work based
on the Library (independent of the use of the Library in a tool for
writing it). Whether that is true depends on what the Library does
and what the program that uses the Library does.
1. You may copy and distribute verbatim copies of the Library's
complete source code as you receive it, in any medium, provided that
you conspicuously and appropriately publish on each copy an
appropriate copyright notice and disclaimer of warranty; keep intact
all the notices that refer to this License and to the absence of any
warranty; and distribute a copy of this License along with the
Library.
You may charge a fee for the physical act of transferring a copy,
and you may at your option offer warranty protection in exchange for a
fee.
2. You may modify your copy or copies of the Library or any portion
of it, thus forming a work based on the Library, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
a) The modified work must itself be a software library.
b) You must cause the files modified to carry prominent notices
stating that you changed the files and the date of any change.
c) You must cause the whole of the work to be licensed at no
charge to all third parties under the terms of this License.
d) If a facility in the modified Library refers to a function or a
table of data to be supplied by an application program that uses
the facility, other than as an argument passed when the facility
is invoked, then you must make a good faith effort to ensure that,
in the event an application does not supply such function or
table, the facility still operates, and performs whatever part of
its purpose remains meaningful.
(For example, a function in a library to compute square roots has
a purpose that is entirely well-defined independent of the
application. Therefore, Subsection 2d requires that any
application-supplied function or table used by this function must
be optional: if the application does not supply it, the square
root function must still compute square roots.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Library,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based
on the Library, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote
it.
Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Library.
In addition, mere aggregation of another work not based on the Library
with the Library (or with a work based on the Library) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.
3. You may opt to apply the terms of the ordinary GNU General Public
License instead of this License to a given copy of the Library. To do
this, you must alter all the notices that refer to this License, so
that they refer to the ordinary GNU General Public License, version 2,
instead of to this License. (If a newer version than version 2 of the
ordinary GNU General Public License has appeared, then you can specify
that version instead if you wish.) Do not make any other change in
these notices.
Once this change is made in a given copy, it is irreversible for
that copy, so the ordinary GNU General Public License applies to all
subsequent copies and derivative works made from that copy.
This option is useful when you wish to copy part of the code of
the Library into a program that is not a library.
4. You may copy and distribute the Library (or a portion or
derivative of it, under Section 2) in object code or executable form
under the terms of Sections 1 and 2 above provided that you accompany
it with the complete corresponding machine-readable source code, which
must be distributed under the terms of Sections 1 and 2 above on a
medium customarily used for software interchange.
If distribution of object code is made by offering access to copy
from a designated place, then offering equivalent access to copy the
source code from the same place satisfies the requirement to
distribute the source code, even though third parties are not
compelled to copy the source along with the object code.
5. A program that contains no derivative of any portion of the
Library, but is designed to work with the Library by being compiled or
linked with it, is called a "work that uses the Library". Such a
work, in isolation, is not a derivative work of the Library, and
therefore falls outside the scope of this License.
However, linking a "work that uses the Library" with the Library
creates an executable that is a derivative of the Library (because it
contains portions of the Library), rather than a "work that uses the
library". The executable is therefore covered by this License.
Section 6 states terms for distribution of such executables.
When a "work that uses the Library" uses material from a header file
that is part of the Library, the object code for the work may be a
derivative work of the Library even though the source code is not.
Whether this is true is especially significant if the work can be
linked without the Library, or if the work is itself a library. The
threshold for this to be true is not precisely defined by law.
If such an object file uses only numerical parameters, data
structure layouts and accessors, and small macros and small inline
functions (ten lines or less in length), then the use of the object
file is unrestricted, regardless of whether it is legally a derivative
work. (Executables containing this object code plus portions of the
Library will still fall under Section 6.)
Otherwise, if the work is a derivative of the Library, you may
distribute the object code for the work under the terms of Section 6.
Any executables containing that work also fall under Section 6,
whether or not they are linked directly with the Library itself.
6. As an exception to the Sections above, you may also compile or
link a "work that uses the Library" with the Library to produce a
work containing portions of the Library, and distribute that work
under terms of your choice, provided that the terms permit
modification of the work for the customer's own use and reverse
engineering for debugging such modifications.
You must give prominent notice with each copy of the work that the
Library is used in it and that the Library and its use are covered by
this License. You must supply a copy of this License. If the work
during execution displays copyright notices, you must include the
copyright notice for the Library among them, as well as a reference
directing the user to the copy of this License. Also, you must do one
of these things:
a) Accompany the work with the complete corresponding
machine-readable source code for the Library including whatever
changes were used in the work (which must be distributed under
Sections 1 and 2 above); and, if the work is an executable linked
with the Library, with the complete machine-readable "work that
uses the Library", as object code and/or source code, so that the
user can modify the Library and then relink to produce a modified
executable containing the modified Library. (It is understood
that the user who changes the contents of definitions files in the
Library will not necessarily be able to recompile the application
to use the modified definitions.)
b) Accompany the work with a written offer, valid for at
least three years, to give the same user the materials
specified in Subsection 6a, above, for a charge no more
than the cost of performing this distribution.
c) If distribution of the work is made by offering access to copy
from a designated place, offer equivalent access to copy the above
specified materials from the same place.
d) Verify that the user has already received a copy of these
materials or that you have already sent this user a copy.
For an executable, the required form of the "work that uses the
Library" must include any data and utility programs needed for
reproducing the executable from it. However, as a special exception,
the source code distributed need not include anything that is normally
distributed (in either source or binary form) with the major
components (compiler, kernel, and so on) of the operating system on
which the executable runs, unless that component itself accompanies
the executable.
It may happen that this requirement contradicts the license
restrictions of other proprietary libraries that do not normally
accompany the operating system. Such a contradiction means you cannot
use both them and the Library together in an executable that you
distribute.
7. You may place library facilities that are a work based on the
Library side-by-side in a single library together with other library
facilities not covered by this License, and distribute such a combined
library, provided that the separate distribution of the work based on
the Library and of the other library facilities is otherwise
permitted, and provided that you do these two things:
a) Accompany the combined library with a copy of the same work
based on the Library, uncombined with any other library
facilities. This must be distributed under the terms of the
Sections above.
b) Give prominent notice with the combined library of the fact
that part of it is a work based on the Library, and explaining
where to find the accompanying uncombined form of the same work.
8. You may not copy, modify, sublicense, link with, or distribute
the Library except as expressly provided under this License. Any
attempt otherwise to copy, modify, sublicense, link with, or
distribute the Library is void, and will automatically terminate your
rights under this License. However, parties who have received copies,
or rights, from you under this License will not have their licenses
terminated so long as such parties remain in full compliance.
9. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Library or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Library (or any work based on the
Library), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Library or works based on it.
10. Each time you redistribute the Library (or any work based on the
Library), the recipient automatically receives a license from the
original licensor to copy, distribute, link with or modify the Library
subject to these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties to
this License.
11. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Library at all. For example, if a patent
license would not permit royalty-free redistribution of the Library by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Library.
If any portion of this section is held invalid or unenforceable under any
particular circumstance, the balance of the section is intended to apply,
and the section as a whole is intended to apply in other circumstances.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.
This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.
12. If the distribution and/or use of the Library is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Library under this License may add
an explicit geographical distribution limitation excluding those countries,
so that distribution is permitted only in or among countries not thus
excluded. In such case, this License incorporates the limitation as if
written in the body of this License.
13. The Free Software Foundation may publish revised and/or new
versions of the Library General Public License from time to time.
Such new versions will be similar in spirit to the present version,
but may differ in detail to address new problems or concerns.
Each version is given a distinguishing version number. If the Library
specifies a version number of this License which applies to it and
"any later version", you have the option of following the terms and
conditions either of that version or of any later version published by
the Free Software Foundation. If the Library does not specify a
license version number, you may choose any version ever published by
the Free Software Foundation.
14. If you wish to incorporate parts of the Library into other free
programs whose distribution conditions are incompatible with these,
write to the author to ask for permission. For software which is
copyrighted by the Free Software Foundation, write to the Free
Software Foundation; we sometimes make exceptions for this. Our
decision will be guided by the two goals of preserving the free status
of all derivatives of our free software and of promoting the sharing
and reuse of software generally.
NO WARRANTY
15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
DAMAGES.
END OF TERMS AND CONDITIONS
Appendix: How to Apply These Terms to Your New Libraries
If you develop a new library, and you want it to be of the greatest
possible use to the public, we recommend making it free software that
everyone can redistribute and change. You can do so by permitting
redistribution under these terms (or, alternatively, under the terms of the
ordinary General Public License).
To apply these terms, attach the following notices to the library. It is
safest to attach them to the start of each source file to most effectively
convey the exclusion of warranty; and each file should have at least the
"copyright" line and a pointer to where the full notice is found.
<one line to give the library's name and a brief idea of what it does.>
Copyright (C) <year> <name of author>
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
This 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
Library General Public License for more details.
You should have received a copy of the GNU Library General Public
License along with this library; if not, write to the Free
Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
MA 02111-1307, USA
Also add information on how to contact you by electronic and paper mail.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the library, if
necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the
library `Frob' (a library for tweaking knobs) written by James Random Hacker.
<signature of Ty Coon>, 1 April 1990
Ty Coon, President of Vice
That's all there is to it!
-338
View File
@@ -1,338 +0,0 @@
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
<https://fsf.org/>
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
License is intended to guarantee your freedom to share and change free
software--to make sure the software is free for all its users. This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it. (Some other Free Software Foundation software is covered by
the GNU Lesser General Public License instead.) You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
this service if you wish), that you receive source code or can get it
if you want it, that you can change the software or use pieces of it
in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if you
distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have. You must make sure that they, too, receive or can get the
source code. And you must show them these terms so they know their
rights.
We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain
that everyone understands that there is no warranty for this free
software. If the software is modified by someone else and passed on, we
want its recipients to know that what they have is not the original, so
that any problems introduced by others will not reflect on the original
authors' reputations.
Finally, any free program is threatened constantly by software
patents. We wish to avoid the danger that redistributors of a free
program will individually obtain patent licenses, in effect making the
program proprietary. To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and
modification follow.
GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License applies to any program or other work which contains
a notice placed by the copyright holder saying it may be distributed
under the terms of this General Public License. The "Program", below,
refers to any such program or work, and a "work based on the Program"
means either the Program or any derivative work under copyright law:
that is to say, a work containing the Program or a portion of it,
either verbatim or with modifications and/or translated into another
language. (Hereinafter, translation is included without limitation in
the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running the Program is not restricted, and the output from the Program
is covered only if its contents constitute a work based on the
Program (independent of having been made by running the Program).
Whether that is true depends on what the Program does.
1. You may copy and distribute verbatim copies of the Program's
source code as you receive it, in any medium, provided that you
conspicuously and appropriately publish on each copy an appropriate
copyright notice and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any warranty;
and give any other recipients of the Program a copy of this License
along with the Program.
You may charge a fee for the physical act of transferring a copy, and
you may at your option offer warranty protection in exchange for a fee.
2. You may modify your copy or copies of the Program or any portion
of it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
a) You must cause the modified files to carry prominent notices
stating that you changed the files and the date of any change.
b) You must cause any work that you distribute or publish, that in
whole or in part contains or is derived from the Program or any
part thereof, to be licensed as a whole at no charge to all third
parties under the terms of this License.
c) If the modified program normally reads commands interactively
when run, you must cause it, when started running for such
interactive use in the most ordinary way, to print or display an
announcement including an appropriate copyright notice and a
notice that there is no warranty (or else, saying that you provide
a warranty) and that users may redistribute the program under
these conditions, and telling the user how to view a copy of this
License. (Exception: if the Program itself is interactive but
does not normally print such an announcement, your work based on
the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based
on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Program.
In addition, mere aggregation of another work not based on the Program
with the Program (or with a work based on the Program) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.
3. You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the following:
a) Accompany it with the complete corresponding machine-readable
source code, which must be distributed under the terms of Sections
1 and 2 above on a medium customarily used for software interchange; or,
b) Accompany it with a written offer, valid for at least three
years, to give any third party, for a charge no more than your
cost of physically performing source distribution, a complete
machine-readable copy of the corresponding source code, to be
distributed under the terms of Sections 1 and 2 above on a medium
customarily used for software interchange; or,
c) Accompany it with the information you received as to the offer
to distribute corresponding source code. (This alternative is
allowed only for noncommercial distribution and only if you
received the program in object code or executable form with such
an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for
making modifications to it. For an executable work, complete source
code means all the source code for all modules it contains, plus any
associated interface definition files, plus the scripts used to
control compilation and installation of the executable. However, as a
special exception, the source code distributed need not include
anything that is normally distributed (in either source or binary
form) with the major components (compiler, kernel, and so on) of the
operating system on which the executable runs, unless that component
itself accompanies the executable.
If distribution of executable or object code is made by offering
access to copy from a designated place, then offering equivalent
access to copy the source code from the same place counts as
distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.
4. You may not copy, modify, sublicense, or distribute the Program
except as expressly provided under this License. Any attempt
otherwise to copy, modify, sublicense or distribute the Program is
void, and will automatically terminate your rights under this License.
However, parties who have received copies, or rights, from you under
this License will not have their licenses terminated so long as such
parties remain in full compliance.
5. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Program or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Program (or any work based on the
Program), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Program or works based on it.
6. Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the
original licensor to copy, distribute or modify the Program subject to
these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties to
this License.
7. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Program at all. For example, if a patent
license would not permit royalty-free redistribution of the Program by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under
any particular circumstance, the balance of the section is intended to
apply and the section as a whole is intended to apply in other
circumstances.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system, which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.
This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.
8. If the distribution and/or use of the Program is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Program under this License
may add an explicit geographical distribution limitation excluding
those countries, so that distribution is permitted only in or among
countries not thus excluded. In such case, this License incorporates
the limitation as if written in the body of this License.
9. The Free Software Foundation may publish revised and/or new versions
of the General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the Program
specifies a version number of this License which applies to it and "any
later version", you have the option of following the terms and conditions
either of that version or of any later version published by the Free
Software Foundation. If the Program does not specify a version number of
this License, you may choose any version ever published by the Free Software
Foundation.
10. If you wish to incorporate parts of the Program into other free
programs whose distribution conditions are different, write to the author
to ask for permission. For software which is copyrighted by the Free
Software Foundation, write to the Free Software Foundation; we sometimes
make exceptions for this. Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.
NO WARRANTY
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
REPAIR OR CORRECTION.
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
convey the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
<one line to give the program's name and a brief idea of what it does.>
Copyright (C) <year> <name of author>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, see <https://www.gnu.org/licenses/>.
Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this
when it starts in an interactive mode:
Gnomovision version 69, Copyright (C) year name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, the commands you use may
be called something other than `show w' and `show c'; they could even be
mouse-clicks or menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the program, if
necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
`Gnomovision' (which makes passes at compilers) written by James Hacker.
<signature of Moe Ghoul>, 1 April 1989
Moe Ghoul, President of Vice
This General Public License does not permit incorporating your program into
proprietary programs. If your program is a subroutine library, you may
consider it more useful to permit linking proprietary applications with the
library. If this is what you want to do, use the GNU Lesser General
Public License instead of this License.
-674
View File
@@ -1,674 +0,0 @@
GNU GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
Copyright (C) 2007 Free Software Foundation, Inc. <https://fsf.org/>
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The GNU General Public License is a free, copyleft license for
software and other kinds of works.
The licenses for most software and other practical works are designed
to take away your freedom to share and change the works. By contrast,
the GNU General Public License is intended to guarantee your freedom to
share and change all versions of a program--to make sure it remains free
software for all its users. We, the Free Software Foundation, use the
GNU General Public License for most of our software; it applies also to
any other work released this way by its authors. You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
them if you wish), that you receive source code or can get it if you
want it, that you can change the software or use pieces of it in new
free programs, and that you know you can do these things.
To protect your rights, we need to prevent others from denying you
these rights or asking you to surrender the rights. Therefore, you have
certain responsibilities if you distribute copies of the software, or if
you modify it: responsibilities to respect the freedom of others.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must pass on to the recipients the same
freedoms that you received. You must make sure that they, too, receive
or can get the source code. And you must show them these terms so they
know their rights.
Developers that use the GNU GPL protect your rights with two steps:
(1) assert copyright on the software, and (2) offer you this License
giving you legal permission to copy, distribute and/or modify it.
For the developers' and authors' protection, the GPL clearly explains
that there is no warranty for this free software. For both users' and
authors' sake, the GPL requires that modified versions be marked as
changed, so that their problems will not be attributed erroneously to
authors of previous versions.
Some devices are designed to deny users access to install or run
modified versions of the software inside them, although the manufacturer
can do so. This is fundamentally incompatible with the aim of
protecting users' freedom to change the software. The systematic
pattern of such abuse occurs in the area of products for individuals to
use, which is precisely where it is most unacceptable. Therefore, we
have designed this version of the GPL to prohibit the practice for those
products. If such problems arise substantially in other domains, we
stand ready to extend this provision to those domains in future versions
of the GPL, as needed to protect the freedom of users.
Finally, every program is threatened constantly by software patents.
States should not allow patents to restrict development and use of
software on general-purpose computers, but in those that do, we wish to
avoid the special danger that patents applied to a free program could
make it effectively proprietary. To prevent this, the GPL assures that
patents cannot be used to render the program non-free.
The precise terms and conditions for copying, distribution and
modification follow.
TERMS AND CONDITIONS
0. Definitions.
"This License" refers to version 3 of the GNU General Public License.
"Copyright" also means copyright-like laws that apply to other kinds of
works, such as semiconductor masks.
"The Program" refers to any copyrightable work licensed under this
License. Each licensee is addressed as "you". "Licensees" and
"recipients" may be individuals or organizations.
To "modify" a work means to copy from or adapt all or part of the work
in a fashion requiring copyright permission, other than the making of an
exact copy. The resulting work is called a "modified version" of the
earlier work or a work "based on" the earlier work.
A "covered work" means either the unmodified Program or a work based
on the Program.
To "propagate" a work means to do anything with it that, without
permission, would make you directly or secondarily liable for
infringement under applicable copyright law, except executing it on a
computer or modifying a private copy. Propagation includes copying,
distribution (with or without modification), making available to the
public, and in some countries other activities as well.
To "convey" a work means any kind of propagation that enables other
parties to make or receive copies. Mere interaction with a user through
a computer network, with no transfer of a copy, is not conveying.
An interactive user interface displays "Appropriate Legal Notices"
to the extent that it includes a convenient and prominently visible
feature that (1) displays an appropriate copyright notice, and (2)
tells the user that there is no warranty for the work (except to the
extent that warranties are provided), that licensees may convey the
work under this License, and how to view a copy of this License. If
the interface presents a list of user commands or options, such as a
menu, a prominent item in the list meets this criterion.
1. Source Code.
The "source code" for a work means the preferred form of the work
for making modifications to it. "Object code" means any non-source
form of a work.
A "Standard Interface" means an interface that either is an official
standard defined by a recognized standards body, or, in the case of
interfaces specified for a particular programming language, one that
is widely used among developers working in that language.
The "System Libraries" of an executable work include anything, other
than the work as a whole, that (a) is included in the normal form of
packaging a Major Component, but which is not part of that Major
Component, and (b) serves only to enable use of the work with that
Major Component, or to implement a Standard Interface for which an
implementation is available to the public in source code form. A
"Major Component", in this context, means a major essential component
(kernel, window system, and so on) of the specific operating system
(if any) on which the executable work runs, or a compiler used to
produce the work, or an object code interpreter used to run it.
The "Corresponding Source" for a work in object code form means all
the source code needed to generate, install, and (for an executable
work) run the object code and to modify the work, including scripts to
control those activities. However, it does not include the work's
System Libraries, or general-purpose tools or generally available free
programs which are used unmodified in performing those activities but
which are not part of the work. For example, Corresponding Source
includes interface definition files associated with source files for
the work, and the source code for shared libraries and dynamically
linked subprograms that the work is specifically designed to require,
such as by intimate data communication or control flow between those
subprograms and other parts of the work.
The Corresponding Source need not include anything that users
can regenerate automatically from other parts of the Corresponding
Source.
The Corresponding Source for a work in source code form is that
same work.
2. Basic Permissions.
All rights granted under this License are granted for the term of
copyright on the Program, and are irrevocable provided the stated
conditions are met. This License explicitly affirms your unlimited
permission to run the unmodified Program. The output from running a
covered work is covered by this License only if the output, given its
content, constitutes a covered work. This License acknowledges your
rights of fair use or other equivalent, as provided by copyright law.
You may make, run and propagate covered works that you do not
convey, without conditions so long as your license otherwise remains
in force. You may convey covered works to others for the sole purpose
of having them make modifications exclusively for you, or provide you
with facilities for running those works, provided that you comply with
the terms of this License in conveying all material for which you do
not control copyright. Those thus making or running the covered works
for you must do so exclusively on your behalf, under your direction
and control, on terms that prohibit them from making any copies of
your copyrighted material outside their relationship with you.
Conveying under any other circumstances is permitted solely under
the conditions stated below. Sublicensing is not allowed; section 10
makes it unnecessary.
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
No covered work shall be deemed part of an effective technological
measure under any applicable law fulfilling obligations under article
11 of the WIPO copyright treaty adopted on 20 December 1996, or
similar laws prohibiting or restricting circumvention of such
measures.
When you convey a covered work, you waive any legal power to forbid
circumvention of technological measures to the extent such circumvention
is effected by exercising rights under this License with respect to
the covered work, and you disclaim any intention to limit operation or
modification of the work as a means of enforcing, against the work's
users, your or third parties' legal rights to forbid circumvention of
technological measures.
4. Conveying Verbatim Copies.
You may convey verbatim copies of the Program's source code as you
receive it, in any medium, provided that you conspicuously and
appropriately publish on each copy an appropriate copyright notice;
keep intact all notices stating that this License and any
non-permissive terms added in accord with section 7 apply to the code;
keep intact all notices of the absence of any warranty; and give all
recipients a copy of this License along with the Program.
You may charge any price or no price for each copy that you convey,
and you may offer support or warranty protection for a fee.
5. Conveying Modified Source Versions.
You may convey a work based on the Program, or the modifications to
produce it from the Program, in the form of source code under the
terms of section 4, provided that you also meet all of these conditions:
a) The work must carry prominent notices stating that you modified
it, and giving a relevant date.
b) The work must carry prominent notices stating that it is
released under this License and any conditions added under section
7. This requirement modifies the requirement in section 4 to
"keep intact all notices".
c) You must license the entire work, as a whole, under this
License to anyone who comes into possession of a copy. This
License will therefore apply, along with any applicable section 7
additional terms, to the whole of the work, and all its parts,
regardless of how they are packaged. This License gives no
permission to license the work in any other way, but it does not
invalidate such permission if you have separately received it.
d) If the work has interactive user interfaces, each must display
Appropriate Legal Notices; however, if the Program has interactive
interfaces that do not display Appropriate Legal Notices, your
work need not make them do so.
A compilation of a covered work with other separate and independent
works, which are not by their nature extensions of the covered work,
and which are not combined with it such as to form a larger program,
in or on a volume of a storage or distribution medium, is called an
"aggregate" if the compilation and its resulting copyright are not
used to limit the access or legal rights of the compilation's users
beyond what the individual works permit. Inclusion of a covered work
in an aggregate does not cause this License to apply to the other
parts of the aggregate.
6. Conveying Non-Source Forms.
You may convey a covered work in object code form under the terms
of sections 4 and 5, provided that you also convey the
machine-readable Corresponding Source under the terms of this License,
in one of these ways:
a) Convey the object code in, or embodied in, a physical product
(including a physical distribution medium), accompanied by the
Corresponding Source fixed on a durable physical medium
customarily used for software interchange.
b) Convey the object code in, or embodied in, a physical product
(including a physical distribution medium), accompanied by a
written offer, valid for at least three years and valid for as
long as you offer spare parts or customer support for that product
model, to give anyone who possesses the object code either (1) a
copy of the Corresponding Source for all the software in the
product that is covered by this License, on a durable physical
medium customarily used for software interchange, for a price no
more than your reasonable cost of physically performing this
conveying of source, or (2) access to copy the
Corresponding Source from a network server at no charge.
c) Convey individual copies of the object code with a copy of the
written offer to provide the Corresponding Source. This
alternative is allowed only occasionally and noncommercially, and
only if you received the object code with such an offer, in accord
with subsection 6b.
d) Convey the object code by offering access from a designated
place (gratis or for a charge), and offer equivalent access to the
Corresponding Source in the same way through the same place at no
further charge. You need not require recipients to copy the
Corresponding Source along with the object code. If the place to
copy the object code is a network server, the Corresponding Source
may be on a different server (operated by you or a third party)
that supports equivalent copying facilities, provided you maintain
clear directions next to the object code saying where to find the
Corresponding Source. Regardless of what server hosts the
Corresponding Source, you remain obligated to ensure that it is
available for as long as needed to satisfy these requirements.
e) Convey the object code using peer-to-peer transmission, provided
you inform other peers where the object code and Corresponding
Source of the work are being offered to the general public at no
charge under subsection 6d.
A separable portion of the object code, whose source code is excluded
from the Corresponding Source as a System Library, need not be
included in conveying the object code work.
A "User Product" is either (1) a "consumer product", which means any
tangible personal property which is normally used for personal, family,
or household purposes, or (2) anything designed or sold for incorporation
into a dwelling. In determining whether a product is a consumer product,
doubtful cases shall be resolved in favor of coverage. For a particular
product received by a particular user, "normally used" refers to a
typical or common use of that class of product, regardless of the status
of the particular user or of the way in which the particular user
actually uses, or expects or is expected to use, the product. A product
is a consumer product regardless of whether the product has substantial
commercial, industrial or non-consumer uses, unless such uses represent
the only significant mode of use of the product.
"Installation Information" for a User Product means any methods,
procedures, authorization keys, or other information required to install
and execute modified versions of a covered work in that User Product from
a modified version of its Corresponding Source. The information must
suffice to ensure that the continued functioning of the modified object
code is in no case prevented or interfered with solely because
modification has been made.
If you convey an object code work under this section in, or with, or
specifically for use in, a User Product, and the conveying occurs as
part of a transaction in which the right of possession and use of the
User Product is transferred to the recipient in perpetuity or for a
fixed term (regardless of how the transaction is characterized), the
Corresponding Source conveyed under this section must be accompanied
by the Installation Information. But this requirement does not apply
if neither you nor any third party retains the ability to install
modified object code on the User Product (for example, the work has
been installed in ROM).
The requirement to provide Installation Information does not include a
requirement to continue to provide support service, warranty, or updates
for a work that has been modified or installed by the recipient, or for
the User Product in which it has been modified or installed. Access to a
network may be denied when the modification itself materially and
adversely affects the operation of the network or violates the rules and
protocols for communication across the network.
Corresponding Source conveyed, and Installation Information provided,
in accord with this section must be in a format that is publicly
documented (and with an implementation available to the public in
source code form), and must require no special password or key for
unpacking, reading or copying.
7. Additional Terms.
"Additional permissions" are terms that supplement the terms of this
License by making exceptions from one or more of its conditions.
Additional permissions that are applicable to the entire Program shall
be treated as though they were included in this License, to the extent
that they are valid under applicable law. If additional permissions
apply only to part of the Program, that part may be used separately
under those permissions, but the entire Program remains governed by
this License without regard to the additional permissions.
When you convey a copy of a covered work, you may at your option
remove any additional permissions from that copy, or from any part of
it. (Additional permissions may be written to require their own
removal in certain cases when you modify the work.) You may place
additional permissions on material, added by you to a covered work,
for which you have or can give appropriate copyright permission.
Notwithstanding any other provision of this License, for material you
add to a covered work, you may (if authorized by the copyright holders of
that material) supplement the terms of this License with terms:
a) Disclaiming warranty or limiting liability differently from the
terms of sections 15 and 16 of this License; or
b) Requiring preservation of specified reasonable legal notices or
author attributions in that material or in the Appropriate Legal
Notices displayed by works containing it; or
c) Prohibiting misrepresentation of the origin of that material, or
requiring that modified versions of such material be marked in
reasonable ways as different from the original version; or
d) Limiting the use for publicity purposes of names of licensors or
authors of the material; or
e) Declining to grant rights under trademark law for use of some
trade names, trademarks, or service marks; or
f) Requiring indemnification of licensors and authors of that
material by anyone who conveys the material (or modified versions of
it) with contractual assumptions of liability to the recipient, for
any liability that these contractual assumptions directly impose on
those licensors and authors.
All other non-permissive additional terms are considered "further
restrictions" within the meaning of section 10. If the Program as you
received it, or any part of it, contains a notice stating that it is
governed by this License along with a term that is a further
restriction, you may remove that term. If a license document contains
a further restriction but permits relicensing or conveying under this
License, you may add to a covered work material governed by the terms
of that license document, provided that the further restriction does
not survive such relicensing or conveying.
If you add terms to a covered work in accord with this section, you
must place, in the relevant source files, a statement of the
additional terms that apply to those files, or a notice indicating
where to find the applicable terms.
Additional terms, permissive or non-permissive, may be stated in the
form of a separately written license, or stated as exceptions;
the above requirements apply either way.
8. Termination.
You may not propagate or modify a covered work except as expressly
provided under this License. Any attempt otherwise to propagate or
modify it is void, and will automatically terminate your rights under
this License (including any patent licenses granted under the third
paragraph of section 11).
However, if you cease all violation of this License, then your
license from a particular copyright holder is reinstated (a)
provisionally, unless and until the copyright holder explicitly and
finally terminates your license, and (b) permanently, if the copyright
holder fails to notify you of the violation by some reasonable means
prior to 60 days after the cessation.
Moreover, your license from a particular copyright holder is
reinstated permanently if the copyright holder notifies you of the
violation by some reasonable means, this is the first time you have
received notice of violation of this License (for any work) from that
copyright holder, and you cure the violation prior to 30 days after
your receipt of the notice.
Termination of your rights under this section does not terminate the
licenses of parties who have received copies or rights from you under
this License. If your rights have been terminated and not permanently
reinstated, you do not qualify to receive new licenses for the same
material under section 10.
9. Acceptance Not Required for Having Copies.
You are not required to accept this License in order to receive or
run a copy of the Program. Ancillary propagation of a covered work
occurring solely as a consequence of using peer-to-peer transmission
to receive a copy likewise does not require acceptance. However,
nothing other than this License grants you permission to propagate or
modify any covered work. These actions infringe copyright if you do
not accept this License. Therefore, by modifying or propagating a
covered work, you indicate your acceptance of this License to do so.
10. Automatic Licensing of Downstream Recipients.
Each time you convey a covered work, the recipient automatically
receives a license from the original licensors, to run, modify and
propagate that work, subject to this License. You are not responsible
for enforcing compliance by third parties with this License.
An "entity transaction" is a transaction transferring control of an
organization, or substantially all assets of one, or subdividing an
organization, or merging organizations. If propagation of a covered
work results from an entity transaction, each party to that
transaction who receives a copy of the work also receives whatever
licenses to the work the party's predecessor in interest had or could
give under the previous paragraph, plus a right to possession of the
Corresponding Source of the work from the predecessor in interest, if
the predecessor has it or can get it with reasonable efforts.
You may not impose any further restrictions on the exercise of the
rights granted or affirmed under this License. For example, you may
not impose a license fee, royalty, or other charge for exercise of
rights granted under this License, and you may not initiate litigation
(including a cross-claim or counterclaim in a lawsuit) alleging that
any patent claim is infringed by making, using, selling, offering for
sale, or importing the Program or any portion of it.
11. Patents.
A "contributor" is a copyright holder who authorizes use under this
License of the Program or a work on which the Program is based. The
work thus licensed is called the contributor's "contributor version".
A contributor's "essential patent claims" are all patent claims
owned or controlled by the contributor, whether already acquired or
hereafter acquired, that would be infringed by some manner, permitted
by this License, of making, using, or selling its contributor version,
but do not include claims that would be infringed only as a
consequence of further modification of the contributor version. For
purposes of this definition, "control" includes the right to grant
patent sublicenses in a manner consistent with the requirements of
this License.
Each contributor grants you a non-exclusive, worldwide, royalty-free
patent license under the contributor's essential patent claims, to
make, use, sell, offer for sale, import and otherwise run, modify and
propagate the contents of its contributor version.
In the following three paragraphs, a "patent license" is any express
agreement or commitment, however denominated, not to enforce a patent
(such as an express permission to practice a patent or covenant not to
sue for patent infringement). To "grant" such a patent license to a
party means to make such an agreement or commitment not to enforce a
patent against the party.
If you convey a covered work, knowingly relying on a patent license,
and the Corresponding Source of the work is not available for anyone
to copy, free of charge and under the terms of this License, through a
publicly available network server or other readily accessible means,
then you must either (1) cause the Corresponding Source to be so
available, or (2) arrange to deprive yourself of the benefit of the
patent license for this particular work, or (3) arrange, in a manner
consistent with the requirements of this License, to extend the patent
license to downstream recipients. "Knowingly relying" means you have
actual knowledge that, but for the patent license, your conveying the
covered work in a country, or your recipient's use of the covered work
in a country, would infringe one or more identifiable patents in that
country that you have reason to believe are valid.
If, pursuant to or in connection with a single transaction or
arrangement, you convey, or propagate by procuring conveyance of, a
covered work, and grant a patent license to some of the parties
receiving the covered work authorizing them to use, propagate, modify
or convey a specific copy of the covered work, then the patent license
you grant is automatically extended to all recipients of the covered
work and works based on it.
A patent license is "discriminatory" if it does not include within
the scope of its coverage, prohibits the exercise of, or is
conditioned on the non-exercise of one or more of the rights that are
specifically granted under this License. You may not convey a covered
work if you are a party to an arrangement with a third party that is
in the business of distributing software, under which you make payment
to the third party based on the extent of your activity of conveying
the work, and under which the third party grants, to any of the
parties who would receive the covered work from you, a discriminatory
patent license (a) in connection with copies of the covered work
conveyed by you (or copies made from those copies), or (b) primarily
for and in connection with specific products or compilations that
contain the covered work, unless you entered into that arrangement,
or that patent license was granted, prior to 28 March 2007.
Nothing in this License shall be construed as excluding or limiting
any implied license or other defenses to infringement that may
otherwise be available to you under applicable patent law.
12. No Surrender of Others' Freedom.
If conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot convey a
covered work so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you may
not convey it at all. For example, if you agree to terms that obligate you
to collect a royalty for further conveying from those to whom you convey
the Program, the only way you could satisfy both those terms and this
License would be to refrain entirely from conveying the Program.
13. Use with the GNU Affero General Public License.
Notwithstanding any other provision of this License, you have
permission to link or combine any covered work with a work licensed
under version 3 of the GNU Affero General Public License into a single
combined work, and to convey the resulting work. The terms of this
License will continue to apply to the part which is the covered work,
but the special requirements of the GNU Affero General Public License,
section 13, concerning interaction through a network will apply to the
combination as such.
14. Revised Versions of this License.
The Free Software Foundation may publish revised and/or new versions of
the GNU General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the
Program specifies that a certain numbered version of the GNU General
Public License "or any later version" applies to it, you have the
option of following the terms and conditions either of that numbered
version or of any later version published by the Free Software
Foundation. If the Program does not specify a version number of the
GNU General Public License, you may choose any version ever published
by the Free Software Foundation.
If the Program specifies that a proxy can decide which future
versions of the GNU General Public License can be used, that proxy's
public statement of acceptance of a version permanently authorizes you
to choose that version for the Program.
Later license versions may give you additional or different
permissions. However, no additional obligations are imposed on any
author or copyright holder as a result of your choosing to follow a
later version.
15. Disclaimer of Warranty.
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
16. Limitation of Liability.
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
SUCH DAMAGES.
17. Interpretation of Sections 15 and 16.
If the disclaimer of warranty and limitation of liability provided
above cannot be given local legal effect according to their terms,
reviewing courts shall apply local law that most closely approximates
an absolute waiver of all civil liability in connection with the
Program, unless a warranty or assumption of liability accompanies a
copy of the Program in return for a fee.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
state the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
<one line to give the program's name and a brief idea of what it does.>
Copyright (C) <year> <name of author>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.
Also add information on how to contact you by electronic and paper mail.
If the program does terminal interaction, make it output a short
notice like this when it starts in an interactive mode:
<program> Copyright (C) <year> <name of author>
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, your program's commands
might be different; for a GUI interface, you would use an "about box".
You should also get your employer (if you work as a programmer) or school,
if any, to sign a "copyright disclaimer" for the program, if necessary.
For more information on this, and how to apply and follow the GNU GPL, see
<https://www.gnu.org/licenses/>.
The GNU General Public License does not permit incorporating your program
into proprietary programs. If your program is a subroutine library, you
may consider it more useful to permit linking proprietary applications with
the library. If this is what you want to do, use the GNU Lesser General
Public License instead of this License. But first, please read
<https://www.gnu.org/licenses/why-not-lgpl.html>.
+3835
View File
File diff suppressed because it is too large Load Diff
+2 -2
View File
@@ -226,7 +226,7 @@ Thu Jul 30 15:42:01 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu)
* misc/getusersh.c (okshells): Make const.
(initshells): Properly declare static.
* sysdeps/unix/bsd/__tcgetatr.c: Cast sg_[io]speed to (unsigned char)
* sysdeps/unix/bsd/__tcgetatr.c: Cast sg_[io]speed to (unsigned char)
to avoid gcc warnings.
* math/bsd/common/atan2.c, math/bsd/common/tan.c,
@@ -2631,7 +2631,7 @@ Tue Oct 8 15:27:54 1991 Roland McGrath (roland@albert.gnu.ai.mit.edu)
* Version 0.1.
* This ChangeLog is lacking much information.
* After this release, I hope to maintain the log well.
* After this release, I hope to maintain the log well.
Fri Jul 26 18:02:57 1991 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
+12 -12
View File
@@ -370,7 +370,7 @@ Fri Dec 17 01:18:27 1993 Michael I Bushnell (mib@geech.gnu.ai.mit.edu)
* Made the Hurd error system 0x10 again; this undid many
of the changes of Nov 23. Affected all the err_ files in
mach; recreated sysdeps/hurd/err_hurd.sub; changed back
err_kern.sub to have the Unix error codes.
err_kern.sub to have the Unix error codes.
Thu Dec 16 15:40:25 1993 Brendan Kehoe (brendan@zen.org)
@@ -517,7 +517,7 @@ Mon Nov 29 16:21:38 1993 Michael I Bushnell (mib@geech.gnu.ai.mit.edu)
* sysdeps/mach/_strerror.c: Include <mach/errorlib.h>.
* hurd/setuids.c: Put entire file inside #ifndef MIB_HACKS;
* hurd/setuids.c: Put entire file inside #ifndef MIB_HACKS;
it uses the old auth_makeauth call.
* hurd/__setauth.c: Put entire file inside #ifndef MIB_HACKS;
@@ -532,7 +532,7 @@ Wed Nov 24 00:59:15 1993 Michael I Bushnell (mib@geech.gnu.ai.mit.edu)
* mach/mach_error_string.c (do_compat): Change name to
__mach_error_map_compat; make it no longer static.
(mach_error_type, mach_error_string_int): Use
(mach_error_type, mach_error_string_int): Use
__mach_error_map_compat instead of do_compat.
* sysdeps/mach/_strerror.c: Use __mach_error_map_compat.
@@ -551,7 +551,7 @@ Tue Nov 23 23:16:13 1993 Michael I Bushnell (mib@geech.gnu.ai.mit.edu)
they are meaningful in our environment. The files have been
renamed to equivalent names with an equal sign prepended; this
will inhibit distribution and prevent the Makefile from looking at
them.
them.
* mach/err_kern.sub: Deleted the definitios of err_codes_unix;
get the strings from _sys_errlist. Rename `unix' to `hurd'.
Rename err_os_sub to be err_kern_sub to match what errsystems.awk
@@ -577,7 +577,7 @@ Tue Nov 23 12:43:38 1993 Michael I. Bushnell (mib at ernst.gnu.ai.mit.edu)
* mach/errsystems.awk: $i is not an index; make i a variable and
increment it properly. Don't call `err_get_system'; use the
system number as the index in the array directly.
system number as the index in the array directly.
* mach/errorlib.h: Added `const' in all the right places.
* sysdeps/mach/hurd/err_hurd.sub: Cast _sys_errlist to
@@ -604,8 +604,8 @@ Tue Nov 23 12:43:38 1993 Michael I. Bushnell (mib at ernst.gnu.ai.mit.edu)
* mach/errsystems.awk: The array that split creates is origin 1,
not origin 0; fixed loop to match.
* sysdeps/mach/hurd/errnos.awk: Ernst's awk doesn't grok
backslash-newline inside strings.
* sysdeps/mach/hurd/errnos.awk: Ernst's awk doesn't grok
backslash-newline inside strings.
Sat Nov 20 19:02:25 1993 Brendan Kehoe (brendan@zen.org)
@@ -757,7 +757,7 @@ Tue Oct 26 18:19:34 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
* sysdeps/unix/sysv/sco3.2.4/__sysconf.S: Don't include <limits.h>.
* Makerules [inhibit-sysdep-asm]
* Makerules [inhibit-sysdep-asm]
(open-check-inhibit-asm, close-check-inhibit-asm): New variables.
($(+sysdir_pfx)sysd-rules): Use them around .s and .S rules.
Depend on existing sysdep makefiles.
@@ -1326,7 +1326,7 @@ Mon May 31 21:49:04 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
Sun May 30 20:04:50 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
* sysdeps/posix/stdio_init.c: (int)cookie is FD, not *(int*)cookie.
* sysdeps/posix/stdio_init.c: (int)cookie is FD, not *(int*)cookie.
* time/Makefile ($({localtime,posixrules}-file)): Don't pass -d
switch (no need, since directory is compiled into zic). Don't use
@@ -1466,7 +1466,7 @@ Mon May 24 16:49:54 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
Use $(<D) for directory to pass zic.
* Makerules (installdirs): Use `sort' function to uniquize list of
directories.
directories.
* time/Makefile (install-others): Use $(datadir)/zoneinfo, not
$(datadir)zoneinfo (missing /).
@@ -2324,7 +2324,7 @@ Fri Apr 16 12:24:21 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
* stdio/ungetc.c: Test STREAM->__pushed_back before flushing the
STREAM if it's writable.
* posix/glob.c, posix/fnmatch.c: Surround code with
* posix/glob.c, posix/fnmatch.c: Surround code with
#if defined (_LIBC) || !defined (__GNU_LIBRARY__)
Thu Apr 15 19:35:59 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
@@ -2571,7 +2571,7 @@ Thu Mar 25 13:40:17 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
* Rules (all): Depend on others.
* time/Makefile (zonenames): Change target to $(objpfx)zonenames.
Make the generated file prepend $(objpfx) to
Make the generated file prepend $(objpfx) to
Include that instead of zonenames.
(zones-%): Change target to $(objpfx)zones-%.
+15 -15
View File
@@ -134,7 +134,7 @@ Thu May 26 12:09:51 1994 Michael I Bushnell (mib@churchy.gnu.ai.mit.edu)
_hurd_dtablesize is as big as _hurd_dtable_rlimit, then return
EMFILE. When growing _hurd_dtable, actually do something if
_hurd_dtablesize is zero.
* hurd/hurdmalloc.c (malloc_fork_prepare, malloc_fork_parent,
malloc_fork_child): Declare as static so they don't conflict with
the user's version of this file.
@@ -227,12 +227,12 @@ Mon May 23 14:24:50 1994 Michael I Bushnell (mib@churchy.gnu.ai.mit.edu)
is D, not FD.
* hurd/alloc-fd.c (_hurd_alloc_fd): Arg FIRST_FD is not actually
const.
const.
* hurd/hurdsig.c (_hurd_internal_post_signal [case SIGINFO]): If
we are not the process group leader, ignore the signal.
(_S_sig_post [case SIGURG]): Declaration of D was out of place.
* sysdeps/mach/hurd/fdopen.c: Include <hurd/io.h> for
* sysdeps/mach/hurd/fdopen.c: Include <hurd/io.h> for
io_get_openmodes prototype.
Sat May 21 16:03:23 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
@@ -425,13 +425,13 @@ Wed May 18 17:54:00 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
Tue May 17 12:46:31 1994 Michael I Bushnell (mib@churchy.gnu.ai.mit.edu)
* mach/mach/mach_traps.h (__mach_reply_port, __mach_thread_self,
__mach_task_self, __mach_host_self): New declarations of __
__mach_task_self, __mach_host_self): New declarations of __
versions of syscall traps.
(swtch, __swtch, swtch_pri, __swtch_pri, thread_switch,
__thread_switch, evc_wait, __evc_wait): New prototypes.
* mach/Makefile (headers): Added mach/mach_traps.h so that the
GNU version is installed instead of the Mach version.
Mon May 16 15:34:12 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
* sysdeps/stub/sys/param.h: New file.
@@ -543,7 +543,7 @@ Wed May 11 18:49:31 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
* hurd/hurd/signal.h (struct hurd_sigstate): Add new
`critical_section' member. Remove #if 0'd out vfork crap.
(_hurd_critical_section_lock, _hurd_critical_section_unlock): New
functions.
functions.
(HURD_CRITICAL_BEGIN, HURD_CRITICAL_END): New macros.
* io/Makefile (headers): Add poll.h and sys/poll.h.
@@ -564,7 +564,7 @@ Wed May 11 18:49:31 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
Wed May 11 13:44:33 1994 Michael I Bushnell (mib@geech.gnu.ai.mit.edu)
* hurd/hurd/threadvar.h (__hurd_errno_location): Remove
* hurd/hurd/threadvar.h (__hurd_errno_location): Remove
__volatile keyword. `volatile int errno' is not the same
as `int errno'; user programs often mention the latter.
* errno.h: Remove __volatile keyword; same reason.
@@ -648,10 +648,10 @@ Wed May 4 14:02:29 1994 Michael I Bushnell (mib@churchy.gnu.ai.mit.edu)
* sysdeps/mach/hurd/__getitmr.c: Corresponding changes from
mutex calls to spin lock calls here too.
* sysdeps/mach/hurd/__setitmr.c (setitimer_locked): Fixed syntax
* sysdeps/mach/hurd/__setitmr.c (setitimer_locked): Fixed syntax
of declaration of PREEMPT.
(setitimer_locked): Declare variables ERR and ELAPSED.
(setitimer_locked): Fix some references to REMAINING that
(setitimer_locked): Fix some references to REMAINING that
were using it as an itimerval instead of a timeval.
(setitimer_locked): Deleted unused label STILLBORN.
@@ -750,7 +750,7 @@ Thu Apr 28 21:29:47 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
* Merged gmp-1.99.3+ mpn code from tege for printf_fp.
* stdio/printf_fp.c: Include "longlong.h"; gmp-impl.h no longer does.
* Makerules (+depfiles): Filter $(extra-objs) to get only .o files.
Wed Apr 27 00:20:41 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
@@ -760,7 +760,7 @@ Wed Apr 27 00:20:41 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
Tue Apr 26 20:05:55 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
* sysdeps/unix/bsd/bsd4.4/tcdrain.c: Don't include <termios.h> to
* sysdeps/unix/bsd/bsd4.4/tcdrain.c: Don't include <termios.h> to
avoid <sys/ioctl.h> conflicts.
* sysdeps/unix/bsd/bsd4.4/tcsetattr.c: Undefine ECHO, MDMBUF,
TOSTOP, FLUSHO, PENDIN, and NOFLSH after including <termios.h> and
@@ -838,7 +838,7 @@ Mon Apr 11 17:36:59 1994 Michael I Bushnell (mib@churchy.gnu.ai.mit.edu)
* sysdeps/mach/hurd/start.c (start1): Bother to set __environ.
* sysdeps/mach/hurd/__ioctl.c (__ioctl): Comment out use of
* sysdeps/mach/hurd/__ioctl.c (__ioctl): Comment out use of
HURD_EINTR_RPC until signals work.
Mon Apr 11 14:16:40 1994 Michael I Bushnell (mib@geech.gnu.ai.mit.edu)
@@ -854,7 +854,7 @@ Mon Apr 11 14:16:40 1994 Michael I Bushnell (mib@geech.gnu.ai.mit.edu)
needs to be allocated with ANYWHERE cleared.
* (This change occurred on April 8, 1994) hurd/hurdexec.c
(_hurd_exec): The arguments to exec_exec had the length and
(_hurd_exec): The arguments to exec_exec had the length and
type parameters transposed. In addition, fetch the correct
procserver port for the new task.
@@ -1425,7 +1425,7 @@ Wed Feb 2 16:56:29 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
* sysdeps/unix/sysv/sco3.2.4/sigsuspend.S: Moved to unix/sysv/sysv4.
Replaced with #include of that file.
* sysdeps/unix/sysv/sysv4/solaris2/sigaltstack.S: Moved to
* sysdeps/unix/sysv/sysv4/solaris2/sigaltstack.S: Moved to
sysdeps/unix/sysv/sysv4/sigaltstk.S.
* sysdeps/unix/sysv/sysv4/i386/__lstat.S: Syscall lxstat, not xlstat.
@@ -1466,7 +1466,7 @@ Mon Jan 31 19:33:04 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu)
* sysdeps/unix/sparc/sysdep.S: New file.
* sysdeps/unix/sysv/sysv4/i386/__vfork.S: New file, just #include
unix/bsd/i386 version.
unix/bsd/i386 version.
* sysdeps/unix/bsd/i386/__vfork.S: Use `scratch' in place of %edx.
+4 -4
View File
@@ -117,7 +117,7 @@ Fri Dec 9 00:01:21 1994 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* sysdeps/mach/hurd/i386/trampoline.c: Likewise.
* hurd/preempt-sig.c: Likewise.
* configure.in (machine): Don't recognize r[34]00.
* configure.in (machine): Don't recognize r[34]00.
Convert mips64* to mips/mips64/& and mips* to mips/&.
* sysdeps/mips/mipsel/bytesex.h: New file.
* sysdeps/mips/r4000: Directory renamed to sysdeps/mips/mips64.
@@ -254,7 +254,7 @@ Sun Dec 4 12:06:36 1994 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
__FAVOR_BSD.
[__OPTIMIZE__] (longjmp): Remove #define.
[__USE_BSD] (_longjmp): Declare it, another name for `longjmp'.
[__USE_BSD] (_setjmp): Define macro to do __sigsetjmp (ENV, 0).
[__USE_BSD] (_setjmp): Define macro to do __sigsetjmp (ENV, 0).
[__FAVOR_BSD]: Remove all these defns.
[__USE_POSIX] (sigjmp_buf): Define as another name for `jmp_buf'.
[__USE_POSIX] (sigsetjmp): Define to call __sigsetjmp.
@@ -652,7 +652,7 @@ Wed Oct 19 02:40:02 1994 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* assert/assert-perror.c (__assert_perror_fail): New file.
* assert/assert.h (assert_perror): New macro.
* Version 1.08.11.
* hurd/hurdsig.c (abort_rpcs): Actually return a port instead of
@@ -760,7 +760,7 @@ Fri Sep 30 16:49:09 1994 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
For ctty fds, use the `ctty' cell for the ctty-special port.
* hurd/dtable.c (get_dtable_port): Use port, never ctty.
(fork_child_dtable): Reset D->ctty instead of D->port.
(ctty_new_pgrp): Likewise.
(ctty_new_pgrp): Likewise.
* sysdeps/mach/hurd/__ioctl.c: Use ctty port for RPC if set and
!NOCTTY.
* hurd/port2fd.c (_hurd_port2fd): Install normal port in D->port
File diff suppressed because it is too large Load Diff
+11 -11
View File
@@ -997,8 +997,8 @@ Mon Jan 6 03:31:46 1997 Ulrich Drepper <drepper@cygnus.com>
* signal/sigfillset.c: Likewise.
* signal/signal.h: Change back handling of signal. The BSD
version is preferred and the new sysv_signal is used when
__USE_XOPEN.
version is preferred and the new sysv_signal is used when
__USE_XOPEN.
* sysdeps/posix/sysv_signal.c: Renamed from signal.c. Use SVID
semantic.
* sysdeps/posix/signal.c: Renamed from bsd_signal.c. Use BSD
@@ -1579,8 +1579,8 @@ Thu Dec 19 14:24:50 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.
* nis/nss_nis/nis-spwd.c: Likewise.
* nis/nss_compat/compat-grp.c (getgrent_next_nis,
getgrent_next_file): Pass the correct type for the buffer to the
parser function.
getgrent_next_file): Pass the correct type for the buffer to the
parser function.
* nis/nss_compat/compat-pwd.c (getpwent_next_netgr,
getpwent_next_nis, getpwent_next_file): Likewise.
* nis/nss_compat/compat-spwd.c (getspent_next_netgr,
@@ -1636,7 +1636,7 @@ Thu Dec 19 20:58:53 1996 Ulrich Drepper <drepper@cygnus.com>
Define __USE_POSIX199309.
* posix/unistd.h: Declare fdatasync only if __USE_POSIX199309.
* time/time.c: Declare nanosleep only if __USE_POSIX199309.
Patches by Rüdiger Helsch <rh@unifix.de>.
Patches by Rüdiger Helsch <rh@unifix.de>.
* locale/locale.h: Add declaration of newlocale and freelocale.
@@ -3267,7 +3267,7 @@ Fri Nov 15 12:27:25 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
funlockfile, not _IO_funlockfile.
* sysdeps/posix/readv.c (readv): Change return type to ssize_t.
Deansideclized.
Deansideclized.
* sysdeps/posix/writev.c (writev): Likewise.
* sysdeps/mach/hurd/lchown.c: Include <fcntl.h> and fix typo.
@@ -3331,7 +3331,7 @@ Wed Nov 13 03:09:16 1996 Ulrich Drepper <drepper@cygnus.com>
Tue Nov 12 16:58:41 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* mach/mach.h (__mach_msg_destroy, mach_msg_destroy, __mach_msg):
Provide prototypes.
Provide prototypes.
* mach/msg-destroy.c (mach_msg_destroy_port,
mach_msg_destroy_memory): Use prototype syntax.
@@ -3344,9 +3344,9 @@ Tue Nov 12 16:58:41 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
we pass O_NOLINK on the open.
* manual/errno.texi (EBADMSG, EIDRM, EMULTIHOP, ENODATA, ENOLINK,
ENOMSG, ENOSR, ENOSTR, EOVERFLOW, EPROTO, ETIME): Redesignate as
an XOPEN error code, move to before the "Linux only" section, and
give it a new number for the Hurd.
ENOMSG, ENOSR, ENOSTR, EOVERFLOW, EPROTO, ETIME): Redesignate as
an XOPEN error code, move to before the "Linux only" section, and
give it a new number for the Hurd.
Tue Nov 12 03:35:01 1996 Christian von Roques <roques@pond.sub.org>
@@ -5519,7 +5519,7 @@ Thu Sep 26 14:40:10 1996 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/posix/pathconf.c: Pass descriptor for just opened file
to fpathconf.
Reported by Martin von Löwis <martin@mira.isdn.cs.tu-berlin.de>.
Reported by Martin von Loewis <martin@mira.isdn.cs.tu-berlin.de>.
Thu Sep 26 04:02:43 1996 Ulrich Drepper <drepper@cygnus.com>
+6 -6
View File
@@ -415,7 +415,7 @@
definition. Patch by Zack Weinberg <zack@rabi.phys.columbia.edu>.
* stdlib/strtod.c: Handle numbers like 0.0e10000 correctly which
produce ±0.0. Reported by Joe Keane <jgk@jgk.org>.
produce ±0.0. Reported by Joe Keane <jgk@jgk.org>.
* sysdeps/libm-ieee754/s_ceill.c: Fix typos.
* sysdeps/libm-ieee754/s_llrint.c: Correct code, it never worked.
@@ -4010,7 +4010,7 @@
* login/getutid.c: Rename to __getutid and make getutid and getutxid
weak aliases.
Patch by ir. Mark M. Kettenis <kettenis@phys.uva.nl>.
Patch by ir. Mark M._Kettenis <kettenis@phys.uva.nl>.
1997-08-11 23:55 Ulrich Drepper <drepper@cygnus.com>
@@ -5401,7 +5401,7 @@
1997-06-30 14:49 H.J. Lu <hjl@gnu.ai.mit.edu>
From Ralf Bächle <ralf@informatik.uni-koblenz.de> on
From Ralf Baechle <ralf@informatik.uni-koblenz.de> on
Sat Jun 21 18:11:21 1997:
* sysdeps/unix/sysv/linux/syscalls.list (swapon): Add __swapon alias.
@@ -5782,7 +5782,7 @@
1997-07-05 11:56 Ulrich Drepper <drepper@cygnus.com>
* login/login.c (tty_name): Use newly allocated buffer.
Patch by Jaakko Hyvätti <jaakko.hyvatti@iki.fi>.
Patch by Jaakko Hyvätti <jaakko.hyvatti@iki.fi>.
* time/asctime.c: Never translate week and month name according
to LC_TIME. Patch by Paul Eggert <eggert@twinsun.com>.
@@ -9333,7 +9333,7 @@
* string/tst-svc.c: New file. Test for strverscmp.
* string/tst-svc.input: New file. Input data for tst-svc.
* string/tst-svc.expect: New file. Expected out from tst-svc.
Patches by Jean-François Bignolles <bignolle@ecoledoc.ibp.fr>.
Patches by Jean-François Bignolles <bignolle@ecoledoc.ibp.fr>.
* math/Makefile (calls): Add s_signbit.
@@ -14547,7 +14547,7 @@
* malloc/malloc.h (__malloc_initialized) [_LIBC]: Define as
__libc_malloc_initialized so that this variable is not shared with
other users of GNU malloc.
Suggested by Martin von Löwis <martin@mira.isdn.cs.tu-berlin.de>.
Suggested by Martin von Loewis <martin@mira.isdn.cs.tu-berlin.de>.
* mcheck.h: Correct typo. Use malloc/ instead of new-malloc/.
+7 -7
View File
@@ -525,7 +525,7 @@
1998-07-29 12:58 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/generic/glob.c: Windows compatibility stuff.
* sysdeps/generic/glob.c: Winblowz compatibility stuff.
Patch received from Paul D. Smith <psmith@BayNetworks.COM>.
1998-07-29 Andreas Jaeger <aj@arthur.rhein-neckar.de>
@@ -6025,7 +6025,7 @@
(Host Address Functions): Use uint32_t consequently and add a
number of clarifications for IPv4/IPv6, classless addresses.
(Internet Namespace): Added some paragraphs about IPv6.
Based on suggestions by Francesco Potortì <F.Potorti@cnuce.cnr.it>.
Based on suggestions by Francesco Potorti` <F.Potorti@cnuce.cnr.it>.
1998-04-05 Philip Blundell <Philip.Blundell@pobox.com>
@@ -6565,7 +6565,7 @@
* manual/examples/mkfsock.c (make_named_socket): Removed blank
lines for clarification.
(make_named_socket): Use strncpy instead of strcpy.
Reported by Francesco Potortì <F.Potorti@cnuce.cnr.it>.
Reported by Francesco Potorti` <F.Potorti@cnuce.cnr.it>.
1998-03-30 13:28 Ulrich Drepper <drepper@cygnus.com>
@@ -7975,7 +7975,7 @@
* sysdeps/generic/getresuid.c (__getresuid): Use ISO C
declaration style to avoid warnings.
1998-03-06 11:48 Mark M. Kettenis <kettenis@hall.phys.uva.nl>
1998-03-06 11:48 Mark M._Kettenis <kettenis@hall.phys.uva.nl>
* elf/rtld.c (process_dl_debug): Fix typo: "DL_DEBUG" ->
"LD_DEBUG".
@@ -8314,7 +8314,7 @@
1998-02-27 Ulrich Drepper <drepper@cygnus.com>
* misc/efgcvt_r.c (APPEND): Handle printing of 0.0 correctly.
Reported by Göran Uddeborg <goeran@uddeborg.pp.se>.
Reported by Göran Uddeborg <goeran@uddeborg.pp.se>.
* misc/tst-efgcvt.c (ecvt_tests): Add new test case for reported
bug.
@@ -8322,7 +8322,7 @@
1998-02-25 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* manual/arith.texi (Old-style number conversion): Correct
typo. Reported by Göran Uddeborg <goeran@uddeborg.pp.se>.
typo. Reported by Göran Uddeborg <goeran@uddeborg.pp.se>.
1998-02-27 Ulrich Drepper <drepper@cygnus.com>
@@ -12044,7 +12044,7 @@
* libio/stdio.h: Correct comment of sys_nerr/sys_errlist.
1997-11-25 Paul Eggert <eggert@twinsun.com>
1997-11-25 Paul Eggert <eggert@shade.twinsun.com>
* strftime.c (strftime):
No longer any need to undef or declare if emacs is defined.
+7 -32
View File
@@ -727,7 +727,7 @@
1998-12-30 Andreas Jaeger <aj@arthur.rhein-neckar.de>
Patche by Ralf Bächle <ralf@gnu.org>:
Patche by Ralf Baechle <ralf@gnu.org>:
* sysdeps/mips/sys/regdef.h: New file, enhanced versions of
deleted linux specific files.
@@ -1098,7 +1098,7 @@
1998-12-30 Andreas Jaeger <aj@arthur.rhein-neckar.de>
Patches by Ralf Bächle <ralf@gnu.org>:
Patches by Ralf Baechle <ralf@gnu.org>:
* sysdeps/unix/sysv/linux/mips/sgidefs.h: Removed.
* sysdeps/unix/sysv/linux/mips/sys/asm.h: Removed.
* sysdeps/unix/sysv/linux/mips/sys/regdef.h: Removed.
@@ -1169,7 +1169,7 @@
1998-12-28 Andreas Jaeger <aj@arthur.rhein-neckar.de>
Patches by Ralf Bächle <ralf@gnu.org> for Linux/MIPS:
Patches by Ralf Baechle <ralf@gnu.org> for Linux/MIPS:
* sysdeps/unix/sysv/linux/mips/syscalls.list: Add ipc, change
pread/pwrite and llseek calls.
@@ -1261,13 +1261,6 @@
* sysdeps/generic/statvfs64.c: Likewise.
* sysdeps/unix/sysv/linux/statvfs64.c: Likewise.
1998-12-25 Geoff Keating <geoffk@ozemail.com.au>
* crypt/sysdeps/unix/ufc-crypt.h: Use <stdint.h>.
* crypt/configure: Delete the code dealing with building the add-on
outside glibc, as this doesn't work.
1998-12-25 Ulrich Drepper <drepper@cygnus.com>
* elf/dl-hash.h: Move to...
@@ -1688,24 +1681,6 @@
* po/es.po: Update from translation team.
* po/fr.po: Likewise.
1998-12-10 Geoff Keating <geoffk@ozemail.com.au>
* crypt/sysdeps/unix/crypt-entry.c: Don't include "patchlevel.h".
* crypt/sysdeps/unix/crypt.h: Move __crypt_r, __setkey_r,
__encrypt_r to...
* crypt/sysdeps/unix/crypt-private.h: ...here.
* crypt/sysdeps/unix/crypt.h: Add __restrict to the structure
parameters.
* crypt/sysdeps/unix/crypt-private.h: Likewise. Also add const to
first parameter of _ufc_mk_keytab_r.
* crypt/sysdeps/unix/crypt.c: Update prototypes.
* crypt/sysdeps/unix/crypt-entry.c: Likewise.
* crypt/sysdeps/unix/crypt_util.c: Likewise.
* crypt/sysdeps/unix/crypt-entry.c (crypt): Use __crypt_r not crypt_r.
1998-12-10 Thorsten Kukuk <kukuk@vt.uni-paderborn.de>
* nis/nss_compat/compat-pwd.c: Fix handling of +/- entries.
@@ -2213,7 +2188,7 @@
<asm/signal.h> and add needed symbols from <asm/signal.h>; bring
in sync with linux specific version.
Patches by Ralf Bächle <ralf@uni-koblenz.de> for mips-linux:
Patches by Ralf Baechle <ralf@uni-koblenz.de> for mips-linux:
* sysdeps/unix/mips/sysdep.S: Define _errno as weak_alias, rewrite
errno declaration.
@@ -2772,7 +2747,7 @@
* elf/dynamic-link.h (_ELF_DYNAMIC_DO_RELOC): Rename macro
parameter lazy to do_lazy to avoid clashing with struct member name.
Reported by Ralf Bächle <ralf@uni-koblenz.de>.
Reported by Ralf Baechle <ralf@uni-koblenz.de>.
1998-11-10 H.J. Lu <hjl@gnu.org>
@@ -4060,7 +4035,7 @@
* sysdeps/unix/sysv/linux/bits/fcntl.h: Add dummy definition of
O_LARGEFILE back.
1998-10-16 Paul Eggert <eggert@twinsun.com>
1998-10-16 Paul Eggert <eggert@shade.twinsun.com>
* time/mktime.c: Some systems require <unistd.h> to be
included before <time.h> for localtime_r to be declared
@@ -4618,7 +4593,7 @@
strftime, and check to see whether strftime has set the buffer to zero.
This lets us distinguish between an empty buffer and an error.
1998-09-24 Paul Eggert <eggert@twinsun.com>
1998-09-24 Paul Eggert <eggert@shade.twinsun.com>
* time/strftime.c (INT_STRLEN_BOUND): Fix typo by changing 100 to 1000.
This fix is propagated from tzcode1998g.tar.gz.
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
-184
View File
@@ -1,184 +0,0 @@
2017-01-01 Joseph Myers <joseph@codesourcery.com>
* All files with FSF copyright notices: Update copyright dates
using scripts/update-copyrights.
2016-01-04 Joseph Myers <joseph@codesourcery.com>
* All files with FSF copyright notices: Update copyright dates
using ../scripts/update-copyrights.
2015-01-02 Joseph Myers <joseph@codesourcery.com>
* All files with FSF copyright notices: Update copyright dates
using ../scripts/update-copyrights.
2014-09-12 Joseph Myers <joseph@codesourcery.com>
* shlib-versions: Remove first column with configuration names.
2014-02-26 Joseph Myers <joseph@codesourcery.com>
* Makefile: Include Makeconfig immediately after defining subdir.
2013-10-30 Mike Frysinger <vapier@gentoo.org>
* configure.in: Moved to ...
* configure.ac: ... here.
* configure: Regenerated.
2013-08-29 Ondřej Bílka <neleai@seznam.cz>
* stringprep.c: Fix typos.
2013-06-11 Ondřej Bílka <neleai@seznam.cz>
* gunicomp.h: Fix trailing whitespaces.
* gunidecomp.h: Likewise.
* nfkc.c: Likewise.
* rfc3454.c: Likewise.
2013-05-31 Joseph Myers <joseph@codesourcery.com>
* Makefile ($(objpfx)libcidn.so): Remove dependencies on libc.
2013-05-16 Ryan S. Arnold <rsa@linux.vnet.ibm.com>
* idna.c: Add missing #include <stdint.h> due to uint64_t or uint32_t
usage.
* nfkc.c: Likewise.
* stringprep.c: Likewise.
2013-01-02 Joseph Myers <joseph@codesourcery.com>
* All files with FSF copyright notices: Update copyright dates
using scripts/update-copyrights.
2012-10-09 Roland McGrath <roland@hack.frob.com>
* configure.in: If $shared != yes, just disable the add-on entirely
and issue a warning.
* configure: Regenerated.
2012-03-07 Ulrich Drepper <drepper@gmail.com>
* Makefile (distribute): Remove variable.
2011-12-03 Ulrich Drepper <drepper@gmail.com>
* idna.c (idna_to_unicode_4z4z): Remove variable rc.
2008-02-10 Jim Meyering <meyering@redhat.com>
* stringprep.c (stringprep, stringprep_profile): Remove useless
"if" before "free".
2006-02-27 Roland McGrath <roland@redhat.com>
* Makefile: Use $(..) in place of ../.
* configure.in (libc_add_on_canonical, libc_add_on_subdirs): Set them.
* configure: Regenerated.
2006-02-25 Roland McGrath <roland@redhat.com>
* configure.in: New file.
* configure: Replaced with generated file.
* sysdeps/unix/configure: File removed.
2005-03-08 Paul Eggert <eggert@cs.ucla.edu>
* iconvme.c (SIZE_MAX): New macro, if not already defined.
(iconv_string): Don't guess a size-zero buffer, as that might cause
buffer overrun. Instead, avoid multiplying by MB_LEN_MAX if the
result would be 'too large', where 'too large' is (heuristically)
the square root of SIZE_MAX, divided by MB_LEN_MAX to allay
overflow concerns. This will prevent some unwanted malloc failures
when the inputs are very large.
2005-02-12 Simon Josefsson <jas@extundo.com >
* iconvme.h: New file, extracted from toutf8.c but improved.
* iconvme.c: New file.
* toutf8.c: Include stringprep.h first, to make the compiler check
that stringprep.h is standalone. Improve comments. Replace
#include of errno.h and sys/param.h with iconvme.h. Don't define
ICONV_CONST.
(stringprep_convert): Rewrite to use iconvme.h.
* Makefile (libcidn-routines): Add iconvme.
2004-10-05 Ulrich Drepper <drepper@redhat.com>
* idn-stub.c (unload_libidn): Don't define outside libc.
2004-07-02 Roland McGrath <roland@redhat.com>
* configure: Don't exit.
2004-05-21 Ulrich Drepper <drepper@redhat.com>
* idna.c (idna_to_unicode_4z4z): Fix test for failed memory allocation.
Patch by Simon Josefsson.
2004-05-06 Ulrich Drepper <drepper@redhat.com>
* stringprep.c (stringprep): Free memory if allocation failed.
* idna.c: Fix memory handling in several places.
2004-04-22 Simon Josefsson <jas@extundo.com>
* stringprep.h: Update to latest libidn version.
* stringprep.c: Likewise.
* idna.c: Likewise.
2004-03-14 Ulrich Drepper <drepper@redhat.com>
* idn-stub.c (__idna_to_unicode_lzlz): Use __strchrnul, not strchrnul.
* idna.c (idna_to_ascii_4z): Revert last patch.
2004-03-12 Ulrich Drepper <drepper@redhat.com>
* idna.c (idna_to_ascii_4z): Use strdup if available. Unify two ifs.
* idn-stub.c: Implement __idna_to_unicode_lzlz. Split
__idna_to_ascii_lz in two parts so that loading can be shared with
the new function.
* Versions (libcidn): Export idna_to_unicode_lzlz.
* Makefile (libcidn-inhibit-o): Define. We need no archive.
2004-03-08 Simon Josefsson <jas@extundo.com>
* toutf8.c: Update to latest libidn version.
2004-03-08 Ulrich Drepper <drepper@redhat.com>
* stringprep.h: Don't include idn-int.h in glibc.
* idn-int.h: Removed.
2004-03-07 Ulrich Drepper <drepper@redhat.com>
* idn-stub.c: Include <gnu/lib-names.h>. Use LIBCIDN_SO for dlopen.
* shlib-versions: New file.
* toutf8.c: Include <sys/param.h>.
2004-03-07 Simon Josefsson <jas@extundo.com>
* Banner: New file.
* Makefile: New file.
* Version: New file.
* configure: New file.
* idn-stub.c: New file.
* gunibreak.h: New file. Copied from Libidn.
* gunicomp.h: New file. Copied from Libidn.
* gunidecomp.h: New file. Copied from Libidn.
* idna.h: New file. Copied from Libidn.
* idna.c: New file. Copied from Libidn.
* nfkc.c: New file. Copied from Libidn.
* profiles.c: New file. Copied from Libidn.
* punycode.c: New file. Copied from Libidn.
* punycode.h: New file. Copied from Libidn.
* rfc3454.c: New file. Copied from Libidn.
* stringprep.c: New file. Copied from Libidn.
* stringprep.h: New file. Copied from Libidn.
* toutf8.c: New file. Copied from Libidn. Modified for use in glibc.
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
-347
View File
@@ -1,347 +0,0 @@
This file describes changes to the nptl_db/ subdirectory prior to 2014-03-03.
Later nptl_db/ changes go into the top-level ChangeLog file, not here.
2014-02-26 Joseph Myers <joseph@codesourcery.com>
* Makefile: Include Makeconfig immediately after defining subdir.
2014-02-21 Joseph Myers <joseph@codesourcery.com>
* Makefile ($(objpfx)db-symbols.out): Use
$(evaluate-test).
2013-05-31 Joseph Myers <joseph@codesourcery.com>
* Makefile ($(objpfx)libthread_db.so): Remove dependencies on
libc.
2013-05-16 Ryan S. Arnold <rsa@linux.vnet.ibm.com>
* db_info.c: Add missing #include <stdint.h> due to uint64_t or
uint32_t usage.
* fetch-value.c: Likewise.
* td_ta_clear_event.c: Likewise.
* td_ta_set_event.c: Likewise.
* td_ta_tsd_iter.c: Likewise.
* td_thr_clear_event.c: Likewise.
* td_thr_get_info.c: Likewise.
* td_thr_set_event.c: Likewise.
* td_thr_tsd.c: Likewise.
2013-01-02 Joseph Myers <joseph@codesourcery.com>
* All files with FSF copyright notices: Update copyright dates
using scripts/update-copyrights.
2013-01-01 Joseph Myers <joseph@codesourcery.com>
* td_ta_thr_iter.c: Reformat copyright notice.
* td_thr_validate.c: Likewise.
2012-11-23 Mike Frysinger <vapier@gentoo.org>
* Makefile ($(objpfx)db-symbols.out): Change readelf to $(READELF).
2012-10-08 Jonathan Nieder <jrnieder@gmail.com>
[BZ #14661]
* Makefile ($(objpfx)db-symbols.out): Force C locale when running
readelf -s.
2012-03-07 Ulrich Drepper <drepper@gmail.com>
* Makefile (distribute): Remove variable.
2011-09-15 Andreas Schwab <schwab@redhat.com>
* thread_dbP.h: Include <list.h>
2009-08-23 Roland McGrath <roland@redhat.com>
* td_ta_map_lwp2thr.c (__td_ta_lookup_th_unique): Move ta_ok check
and LOG call back to ...
(td_ta_map_lwp2thr): ... here.
Reported by Maciej W. Rozycki <macro@codesourcery.com>.
2009-05-25 Aurelien Jarno <aurelien@aurel32.net>
[BZ #10200]
* db-symbols.awk: Use the last field for the symbol name instead
of the 8th one.
2009-03-19 Roland McGrath <roland@redhat.com>
* td_symbol_list.c (DB_LOOKUP_NAME, DB_LOOKUP_NAME_TH_UNIQUE):
Use STRINGIFY macro in place of #argument.
2009-02-27 Roland McGrath <roland@redhat.com>
* td_symbol_list.c (symbol_list_arr): Move initializer guts to ...
* db-symbols.h: ... here, new file.
* db-symbols.awk: New file.
* Makefile (distribute): Add them.
($(objpfx)db-symbols.out): New target.
(tests): Depend on it.
($(objpfx)db-symbols.v.i): New dependent rule.
2009-02-06 Ulrich Drepper <drepper@redhat.com>
* td_thr_get_info.c (td_thr_get_info): Initialize schedpolicy in
the special case [Coverity CID 251].
2008-03-25 Roland McGrath <roland@redhat.com>
[BZ #5983]
* structs.def: Add pid field of struct pthread.
* td_ta_thr_iter.c (iterate_thread_list): Take new arg MATCH_PID.
If a thread's pid does not match nor is < 0 while its tid matches
nor is < 0 and equal to -MATCH_PID, ignore it.
* td_thr_validate.c (td_thr_validate): Validate thread's pid/tid.
2007-05-16 Roland McGrath <roland@redhat.com>
* td_thr_get_info.c: Fake the results for TH->th_unique == 0.
* td_thr_validate.c: Likewise.
* td_thr_setgregs.c: Likewise.
* td_thr_setfpregs.c: Likewise.
* td_thr_getgregs.c: Likewise.
* td_thr_getfpregs.c: Likewise.
* td_thr_tlsbase.c: Likewise.
* structs.def: Add DB_VARIABLE (__nptl_initial_report_events).
* db_info.c: Add necessary declaration.
* td_thr_event_enable.c: Set __nptl_initial_report_events too.
* td_ta_thr_iter.c (iterate_thread_list): Make FAKE_EMPTY bool.
Use th_unique=0 in fake descriptor before initialization.
* td_ta_map_lwp2thr.c (__td_ta_lookup_th_unique): New function, broken
out of ...
(td_ta_map_lwp2thr): ... here, call it. But don't before __stack_user
is initialized, then fake a handle with th_unique=0.
* thread_dbP.h: Declare it.
2006-10-26 Pete Eberlein <eberlein@us.ibm.com>
* nptl_db/db_info.c [TLS_DTV_AT_TP]: Fixed size init for dtvp
to sizeof a pointer, instead of sizeof the union.
2006-10-27 Ulrich Drepper <drepper@redhat.com>
* structs.def: USE_TLS support is now default.
2006-02-03 Roland McGrath <roland@redhat.com>
* structs.def: Add a descriptor for pointer.val field of dtv_t.
* td_thr_tlsbase.c (td_thr_tlsbase): Extract pointer.val field from
DTV slot.
2004-09-09 Roland McGrath <roland@redhat.com>
* td_ta_map_lwp2thr.c (td_ta_map_lwp2thr): Don't abort if inferior's
descriptor is bogus.
2004-05-27 Roland McGrath <roland@redhat.com>
* td_thr_validate.c: When we find no threads and the inferior appears
uninitialized, validate the main thread as a special case.
2004-05-01 Jakub Jelinek <jakub@redhat.com>
* thread_dbP.h (LOG): Use write instead of __libc_write.
2004-04-03 Ulrich Drepper <drepper@redhat.com>
* td_ta_set_event.c (td_ta_set_event): Initialize copy to avoid
warnings.
* td_ta_thr_iter.c (td_ta_thr_iter): Initialize list to avoid warning.
* td_ta_clear_event.c (td_ta_clear_event): Initialize eventmask to
avoid warning.
* td_ta_set_event.c (td_ta_set_event): Likewise.
2004-03-24 Roland McGrath <roland@redhat.com>
* fetch-value.c (_td_locate_field): Cast DB_DESC_OFFSET to int32_t.
* thread_dbP.h (DB_DESC_OFFSET): Remove cast from definition.
2004-03-13 Jakub Jelinek <jakub@redhat.com>
* db_info.c: Don't use TLS_TP_OFFSET in the #if, but
TLS_TCB_SIZE == 0 ?: in the DESC macro.
2004-03-12 Roland McGrath <roland@redhat.com>
* db_info.c [TLS_DTV_AT_TP && TLS_TP_OFFSET > 0]
(_thread_db_pthread_dtvp): Define differently for this case (PowerPC).
2003-12-11 Ulrich Weigand <uweigand@de.ibm.com>
* db_info.c (REGISTER): Add bit size of thread register as second
parameter to REGISTER macro.
2003-12-02 Roland McGrath <roland@redhat.com>
* thread_dbP.h (DB_FUNCTION): New macro.
* structs.def: Use it for __nptl_create_event and __nptl_death_event.
* db_info.c (DB_FUNCTION): New macro.
* td_symbol_list.c (DB_FUNCTION): New macro, prepend "." to symbol
name under [HAVE_ASM_GLOBAL_DOT_NAME].
(td_lookup) [HAVE_ASM_GLOBAL_DOT_NAME]: If lookup fails with PS_NOSYM
and name starts with a dot, try it without the dot.
2003-09-08 Roland McGrath <roland@redhat.com>
* td_thr_get_info.c (td_thr_get_info): Cast th_unique to thread_t.
2003-08-22 Roland McGrath <roland@redhat.com>
* fetch-value.c (_td_check_sizeof, _td_locate_field): Return
TD_NOCAPAB for PS_NOSYM, instead of vanilla TD_ERR.
* td_thr_tls_get_addr.c (td_thr_tls_get_addr): Return TD_NOAPLIC when
DB_GET_FIELD returns TD_NOCAPAB.
* thread_db.h (td_thr_tls_get_addr): Use psaddr_t in signature.
* structs.def [USE_TLS]: Add DB_STRUCT_FIELD (link_map, l_tls_modid).
* db_info.c (link_map): Typedef it.
* td_thr_tls_get_addr.c (td_thr_tls_get_addr): Rewritten.
2003-08-14 Roland McGrath <roland@redhat.com>
* thread_dbP.h: Mostly rewritten with many new macros and decls.
* td_ta_new.c (td_ta_new): Don't cache a lot of symbol values.
* structs.def: New file.
* db_info.c: New file.
* td_symbol_list.c (symbol_list_arr): Define with structs.def macros.
* td_ta_clear_event.c: Rewritten.
* td_ta_event_addr.c: Rewritten.
* td_ta_event_getmsg.c: Rewritten.
* td_ta_get_nthreads.c: Rewritten.
* td_ta_map_lwp2thr.c: New file.
* td_ta_set_event.c: Rewritten.
* td_ta_thr_iter.c: Rewritten.
* td_ta_tsd_iter.c: Rewritten.
* td_thr_clear_event.c: Rewritten.
* td_thr_event_enable.c: Rewritten.
* td_thr_event_getmsg.c: Rewritten.
* td_thr_get_info.c: Rewritten.
* td_thr_getfpregs.c: Rewritten.
* td_thr_getgregs.c: Rewritten.
* td_thr_set_event.c: Rewritten.
* td_thr_setfpregs.c: Rewritten.
* td_thr_setgregs.c: Rewritten.
* td_thr_tlsbase.c: Rewritten.
* td_thr_tsd.c: Rewritten.
* td_thr_validate.c: Rewritten.
* Makefile (distribute): Add them.
* fetch-value.c: New file.
* Makefile (libthread_db-routines): Add it.
* thread_db.h (td_err_e): Comment fix.
2003-08-05 Roland McGrath <roland@redhat.com>
* thread_dbP.h (td_lookup): Add attribute_hidden to decl.
2003-08-04 Roland McGrath <roland@redhat.com>
* td_ta_clear_event.c (td_ta_clear_event): Fix sizes in ps_* calls.
2003-06-23 Roland McGrath <roland@redhat.com>
* proc_service.h: Cosmetic and comment fixes.
2003-06-19 Roland McGrath <roland@redhat.com>
* td_thr_event_enable.c (td_thr_event_enable): Use proper type `bool'
for value written into inferior's `report_events'.
2003-03-18 Roland McGrath <roland@redhat.com>
* td_thr_event_getmsg.c (td_thr_event_getmsg): Splice the thread out
of the ->nextevent linkage.
* td_ta_event_getmsg.c (td_ta_event_getmsg): Runtime error instead of
assert for reading TD_EVENT_NONE. Clear the event buffer after
reading it. Add a sanity check for foo->nextevent = foo.
2003-03-15 Roland McGrath <roland@redhat.com>
* thread_db.h (td_err_e): Add TD_NOTLS and TD_TLSDEFER.
(td_thr_tlsbase): Declare it.
* td_thr_tlsbase.c: New file.
* Makefile (libthread_db-routines): Add it.
* Versions (libthread_db: GLIBC_2.3.3): New set, add td_thr_tlsbase.
* td_thr_tls_get_addr.c (td_thr_tls_get_addr): Use td_thr_tlsbase.
2003-03-14 Roland McGrath <roland@redhat.com>
* td_thr_tls_get_addr.c (td_thr_tls_get_addr): Use `header.' prefix.
2003-03-10 Roland McGrath <roland@redhat.com>
* td_ta_thr_iter.c (iterate_thread_list): Don't use `header.data.'
prefix for `struct pthread' members.
* td_thr_validate.c (check_thread_list): Likewise.
* td_thr_tls_get_addr.c (td_thr_tls_get_addr): Likewise.
2003-03-03 Roland McGrath <roland@redhat.com>
* td_thr_tls_get_addr.c (td_thr_tls_get_addr): Handle TLS_DTV_AT_TP.
2003-02-15 Ulrich Drepper <drepper@redhat.com>
* td_symbol_list.c: New symbol name for SYM_PTHREAD_NTHREADS.
2003-01-07 Jakub Jelinek <jakub@redhat.com>
* td_ta_event_getmsg.c: Include assert.h.
-2003-01-05 Ulrich Drepper <drepper@redhat.com>
* Makefile (libthread_db.so-no-z-defs): Define.
2003-01-03 Roland McGrath <roland@redhat.com>
* td_thr_setgregs.c (td_thr_setgregs): *_BIT -> *_BITMASK
* td_thr_setfpregs.c (td_thr_setfpregs): Likewise.
* td_thr_get_info.c (td_thr_get_info): Likewise.
* td_thr_getgregs.c (td_thr_getgregs): Likewise.
* td_thr_getfpregs.c (td_thr_getfpregs): Likewise.
* td_ta_thr_iter.c (iterate_thread_list): Likewise.
2002-12-12 Roland McGrath <roland@redhat.com>
* td_ta_thr_iter.c (iterate_thread_list): Handle special case of
uninitialized __stack_user (zeros), hard-wire just the main thread.
* td_thr_get_info.c (td_thr_get_info): Fix ti_lid initialization.
2002-12-06 Roland McGrath <roland@redhat.com>
* td_ta_event_getmsg.c (td_ta_event_getmsg): Write the NEXT pointer
into the inferior's __pthread_last_event variable, not a word from
an inferior address used in the parent. Pass the address of a
null word to ps_pdwrite, not a null pointer.
2002-12-04 Roland McGrath <roland@redhat.com>
* td_thr_get_info.c (td_thr_get_info): ti_tid is pthread_t, not a PID.
* thread_db.h (td_thrinfo_t): Comment fix.
* td_ta_map_lwp2thr.c: Moved to ../nptl/sysdeps/i386/.
2002-12-04 Ulrich Drepper <drepper@redhat.com>
* td_ta_thr_iter.c (iterate_thread_list): At end of iteration read
pointer to the next element from inferior.
2002-12-02 Roland McGrath <roland@redhat.com>
* td_symbol_list.c (symbol_list_arr): pthread_keys -> __pthread_keys
* td_ta_map_lwp2thr.c (td_ta_map_lwp2thr): Fetch inferior registers to
see its %gs value, not our own.
-107
View File
@@ -1,107 +0,0 @@
This file describes changes to the shared files of the ports/ add-on
directory. The ports/ directory is no longer used and the files
described here are all gone.
2014-04-29 Carlos O'Donell <carlos@redhat.com>
* README: Removed. The ports repository is no longer used.
2013-10-30 Mike Frysinger <vapier@gentoo.org>
* README: Change references to preconfigure.in to
preconfigure.ac.
2013-01-02 Joseph Myers <joseph@codesourcery.com>
* README: Update copyright dates in example.
2012-12-06 Joseph Myers <joseph@codesourcery.com>
* README: Use sourceware.org in Bugzilla URL.
2012-12-05 Joseph Myers <joseph@codesourcery.com>
* README: Don't refer to ports as a separate repository. Don't
refer to scripts/data/.
2012-07-03 Joseph Myers <joseph@codesourcery.com>
* .gitignore: Remove file.
* Banner: Likewise.
* Makefile: Likewise.
2012-06-21 Carlos O'Donell <carlos_odonell@mentor.com>
* .gitignore: New file.
2012-02-07 Joseph Myers <joseph@codesourcery.com>
* README: Update.
2012-02-07 Joseph Myers <joseph@codesourcery.com>
* README: Document use of ranges in copyright notices.
2011-11-29 Joseph Myers <joseph@codesourcery.com>
* bare, sysdeps/am29k, sysdeps/i860, sysdeps/i960, sysdeps/m88k,
sysdeps/mach, sysdeps/rs6000, sysdeps/standalone, sysdeps/tahoe,
sysdeps/unix/bsd, sysdeps/unix/sysv/hpux, sysdeps/unix/sysv/i386,
sysdeps/unix/sysv/irix4, sysdeps/unix/sysv/isc2.2,
sysdeps/unix/sysv/minix, sysdeps/unix/sysv/sco3.2,
sysdeps/unix/sysv/sco3.2.4, sysdeps/unix/sysv/sysv4, sysdeps/vax,
sysdeps/z8000: Remove.
2010-04-14 Joseph Myers <joseph@codesourcery.com>
* libc-abis: Remove.
2010-04-06 Joseph Myers <joseph@codesourcery.com>
* libc-abis: New.
2006-03-06 Roland McGrath <roland@redhat.com>
* Makefile (%.bz2, %.gz): New pattern rules.
2006-02-28 Roland McGrath <roland@redhat.com>
* Makefile (glibc-port-%-$(dist-version).tar): Don't include top-level
stuff.
* README: Update for new add-on scheme.
2006-02-27 Roland McGrath <roland@redhat.com>
* Makefile: Remove libc boilerplate.
* Makeconfig: File removed.
* configure.in: File removed.
* configure: File removed.
2005-03-22 Roland McGrath <roland@redhat.com>
* Makefile ($(distname).tar): Fail if sysdeps/.../configure files are
not all up to date. Touch configure files after cvs export.
(glibc-port-%-$(dist-version).tar): Likewise.
2004-10-22 Roland McGrath <roland@frob.com>
* Makefile (dist, dist-ports): New target.
(dist-port-%): New pattern rule.
* Makeconfig [!subdir] (ports/%): New pattern rule.
* configure.in: Cope if there are no sysdeps/*/preconfigure files.
* configure: Regenerated.
2004-08-16 Roland McGrath <roland@frob.com>
* Makefile: New file.
2004-08-04 Roland McGrath <roland@frob.com>
New directory implementing glibc add-on infrastructure for
ports maintained separate from the core glibc source tree.
* README, configure.in, Makeconfig, Banner, ChangeLog: New files.
* configure: New generated file.
-624
View File
@@ -1,624 +0,0 @@
This file describes changes to the AArch64 port while it was in the ports
add-on directory. This port is no longer part of an add-on and so
future changes to it should be listed in the top-level ChangeLog file,
not here.
2014-02-11 Marcus Shawcroft <marcus.shawcroft@arm.com>
* sysdeps/aarch64: Move directory to ../sysdeps/aarch64.
* sysdeps/unix/sysv/linux/aarch64: Move directory to
../sysdeps/unix/sysv/linux/aarch64.
2014-01-22 Marcus Shawcroft <marcus.shawcroft@arm.com>
* sysdeps/aarch64/libm-test-ulps: Regenerated.
2014-01-20 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/unix/sysv/linux/aarch64/Makefile (abi-lp64_be-options): Fix
type in define.
2014-01-20 Tom Tromey <tromey@redhat.com>
[BZ #16169]
* sysdeps/unix/sysv/linux/aarch64/clone.S (__clone): Add CFI
directives; Zero x29.
2014-01-20 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/configure.ac: New file.
* sysdeps/aarch64/configure: New file.
* sysdeps/aarch64/shlib-versions: Define ld-linux-aarch64_be.so.1
* sysdeps/unix/sysv/linux/aarch64/Makefile (abi-variants)
(abi-lp64-options, abi-lp64-condition, abi-lp64-ld-soname)
(abi-lp64_be-options, abi-lp64_be-condition)
(abi-lp64_be-ld-soname) Define.
* sysdeps/unix/sysv/linux/aarch64/ldconfig.h
(SYSDEP_KNOWN_INTERPRETER_NAMES): Add ld-linux-aarch64_be.so.1
2014-01-07 Marcus Shawcroft <marcus.shawcroft@linaro.org>
[BZ #16387]
* sysdeps/aarch64/fpu/fpu_control.h (_FPU_FPCR_RM_MASK): Define.
* sysdeps/aarch64/soft-fp/sfp-machine.h (FP_ROUNDMODE): Adjust
rounding mode mask.
2014-01-07 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/libm-test-ulps: Drop sqrt ULPs.
2014-01-07 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/dl-trampoline.S (_dl_runtime_resolve): Correct
cfi_adjust_cfa_offset offset.
2014-01-06 Mike Frysinger <vapier@gentoo.org>
* sysdeps/unix/sysv/linux/aarch64/sys/ptrace.h (ptrace_peeksiginfo_args):
Rename to ...
(__ptrace_peeksiginfo_args): ... this.
2014-01-01 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/libm-test-ulps: Regenerated.
2014-01-01 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/abort-instr.h: New file.
2014-01-01 Venkataramanan Kumar <venkataramanan.kumar@linaro.org>
* sysdeps/aarch64/__longjmp.S (__longjmp): Demangle sp and lr when
restoring register values.
* sysdeps/aarch64/setjmp.S (__sigsetjmp): Mangle sp and lr
before storing register values.
* sysdeps/arm/jmpbuf-unwind.h (_jmpbuf_sp): Remove.
* sysdeps/aarch64/jmpbuf-offsets.h (_jmpbuf_sp): Add.
(JB_FRAME_ADDRESS): call _jmpbuf_sp.
* sysdeps/aarch64/sysdep.h (LDST_PCREL) : New macros.
(LDST_GLOBAL): Likewise.
* sysdeps/unix/sysv/linux/aarch64/sysdep.h (PTR_MANGLE): New macro.
(PTR_DEMANGLE): Likewise.
(PTR_MANGLE2): Likewise.
(PTR_DEMANGLE2): Likewise.
2013-12-18 Marcus Shawcroft <marcus.shawcroft@linaro.org>
[BZ #15128]
* sysdeps/aarch64/dl-trampoline.S (_dl_runtime_resolve): Save and
restore q0-q7.
2013-12-17 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/unix/sysv/linux/aarch64/nptl/lowlevellock.h
(FUTEX_WAIT_REQUEUE_PI): Define.
(FUTEX_CMP_REQUEUE_PI): Likewise.
(lll_futex_wait_requeue_pi): Likewise.
(lll_futex_timed_wait_requeue_pi): Likewise.
(lll_futex_cmp_requeue_pi): Likewise.
2013-12-17 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/libm-test-ulps: Regenerated.
2013-12-17 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/libm-test-ulps: Remove sqrt.
2013-12-11 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/libm-test-ulps: Regenerate.
2013-11-28 Joseph Myers <joseph@codesourcery.com>
* sysdeps/aarch64/fpu/fegetround.c (fegetround): Use
libm_hidden_def.
2013-11-26 Will Newton <will.newton@linaro.org>
* sysdeps/aarch64/dl-irel.h: Include ldsodefs.h.
(ELF_MACHINE_IRELA): Define. (elf_ifunc_invoke): Pass
hwcap to ifunc resolver function. (elf_irela): New function.
* sysdeps/aarch64/dl-machine.h: Include dl-irel.h.
(elf_machine_rela) Handle STT_GNU_IFUNC symbols and
R_AARCH64_IRELATIVE relocations. (elf_machine_lazy_rel):
Handle R_AARCH64_IRELATIVE relocations.
2013-10-30 Mike Frysinger <vapier@gentoo.org>
* sysdeps/unix/sysv/linux/aarch64/configure.in: Moved to ...
* sysdeps/unix/sysv/linux/aarch64/configure.ac: ... here.
* sysdeps/unix/sysv/linux/aarch64/configure: Regenerated.
2013-09-30 Andrew Pinski <andrew.pinski@caviumnetworks.com>
* sysdeps/unix/sysv/linux/aarch64/sysdep.h (SYSCALL_ERROR_HANDLER):
Fix store to errno to use 32bits.
2013-09-24 Venkataramanan Kumar <venkataramanan.kumar@linaro.org>
* sysdeps/aarch64/machine-gmon.h (__mcount): Accept parameter and
pass it to mcount_internal.
2013-09-24 Venkataramanan Kumar <venkataramanan.kumar@linaro.org>
* sysdeps/unix/sysv/linux/aarch64/sigcontextinfo.h: New file.
2013-07-26 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/Versions: New file.
* sysdeps/aarch64/machine-gmon.h: New file.
* sysdeps/aarch64/mcount.c: New file.
* sysdeps/unix/sysv/linux/aarch64/nptl/libc.abilist (_mcount): Add.
2013-07-12 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/Makefile (CFLAGS-backtrace.c): Define.
2013-07-09 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/unix/sysv/linux/aarch64/dl-static.c: New file to support
variable page size for AArch64.
* sysdeps/unix/sysv/linux/aarch64/ldsodefs.h: Likewise.
* sysdeps/unix/sysv/linux/aarch64/Makefile: Build dl-static in elf.
* sysdeps/unix/sysv/linux/aarch64/Versions: Add _dl_var_init.
2013-07-05 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/libm-test-ulps: Regenerate.
2013-07-04 Andreas Jaeger <aj@suse.de>
For ChangeLog.aarch64:
* sysdeps/unix/sysv/linux/aarch64/sys/ptrace.h (PTRACE_LISTEN):
Add define.
(PTRACE_PEEKSIGINFO): Add new value from Linux 3.10.
(ptrace_peeksiginfo_args): Add.
(__ptrace_peeksiginfo_flags): Add.
2013-06-28 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/dl-machine.h (elf_machine_dynamic): De-reference
_GLOBAL_OFFSET_TABLE_.
2013-06-28 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/unix/sysv/linux/aarch64/getcontext.S (__getcontext): Simplify
oPSTATE initialization.
2013-06-15 Siddhesh Poyarekar <siddhesh@redhat.com>
* sysdeps/unix/sysv/linux/aarch64/nptl/libpthread.abilist:
Update.
2013-06-04 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/unix/sysv/linux/aarch64/getcontext.S (__getcontext):
Initialize pstate.
* sysdeps/unix/sysv/linux/aarch64/ucontext_i.sym (oPSTATE): Define.
2013-05-29 Siddhesh Poyarekar <siddhesh@redhat.com>
[BZ #15465]
* sysdeps/aarch64/dl-machine.h (elf_machine_rela): Use
RTLD_PROGNAME.
2013-05-23 Venkataranmanan Kumar <venkataramanan.kumar@linaro.org>
* sysdeps/aarch64/machine-gmon.h: Remove.
2013-05-22 Joseph Myers <joseph@codesourcery.com>
* sysdeps/aarch64/libm-test-ulps: Update test names.
2013-05-21 Andreas Schwab <schwab@suse.de>
[BZ #15493]
* sysdeps/aarch64/setjmp.S (__sigsetjmp): Don't clobber register
x1.
[NOT_IN_libc && IS_IN_rtld]: Don't call __sigjmp_save.
2013-05-21 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/libm-test-ulps: Regenerate.
2013-05-19 Joseph Myers <joseph@codesourcery.com>
* sysdeps/aarch64/libm-test-ulps: Update names of sincos tests.
2013-05-16 Maciej W. Rozycki <macro@codesourcery.com>
[BZ #15442]
* sysdeps/aarch64/soft-fp/sfp-machine.h (_FP_QNANNEGATEDP): New
macro.
2013-05-12 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/unix/sysv/linux/aarch64/clone.S (__clone):
Do not call sycall_error directly with a confitional branch.
* sysdeps/unix/sysv/linux/aarch64/ioctl.S (__ioctl):
Do not call sycall_error directly with a confitional branch.
2013-03-19 Andreas Schwab <schwab@suse.de>
* sysdeps/unix/sysv/linux/aarch64/configure.in: Set
libc_cv_rtlddir.
* sysdeps/unix/sysv/linux/aarch64/configure: Regenerate.
2013-03-14 Andreas Schwab <schwab@suse.de>
* sysdeps/unix/sysv/linux/aarch64/configure.in: Set
libc_cv_slibdir, libdir and libc_cv_localedir.
* sysdeps/unix/sysv/linux/aarch64/configure: Regenerate.
2013-03-11 Andreas Schwab <schwab@suse.de>
[BZ #15234]
* sysdeps/unix/sysv/linux/aarch64/nptl/libpthread.abilist
(GLIBC_2.17): Remove pthread_atfork.
2013-03-07 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/aarch64/bits/mman.h: Remove all defines
provided by bits/mman-linux.h and include <bits/mman-linux.h>.
2013-02-18 Siddhesh Poyarekar <siddhesh@redhat.com>
* sysdeps/unix/sysv/linux/aarch64/nptl/libc.abilist: Add
__cxa_thread_atexit_impl.
2013-02-14 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/libm-test-ulps: Regenerate.
2013-02-13 Joseph Myers <joseph@codesourcery.com>
[BZ #13550]
* sysdeps/unix/sysv/linux/aarch64/sigaction.c (__libc_sigaction):
Do not use __ptrvalue.
2013-02-08 Joseph Myers <joseph@codesourcery.com>
[BZ #13550]
* sysdeps/unix/sysv/linux/aarch64/gettimeofday.c: Do not include
<bp-checks.h>.
(__gettimeofday): Do not use CHECK_1.
2013-01-23 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/strncmp.S: New file.
2013-01-23 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/sysdep.h (ENTRY_ALIGN_AND_PAD): New.
* sysdeps/aarch64/strnlen.S: New file.
2013-01-17 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/strlen.S: New file.
2013-01-17 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/strcmp.S: New file.
2013-01-17 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/bzero.S: New file.
2013-01-17 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/memmove.S: New file.
2013-01-17 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/memcpy.S: New file.
2013-01-17 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/memset.S: New file.
2013-01-17 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/sysdep.h (ENTRY_ALIGN): New.
* sysdeps/aarch64/memcmp.S: New file.
2013-01-17 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/sysdep.h (ENTRY, END): Adjust
whitespace.
2013-01-10 Joseph Myers <joseph@codesourcery.com>
* sysdeps/aarch64/bits/setjmp.h (__jmp_buf): Use __extension__
with long long.
2013-01-02 Joseph Myers <joseph@codesourcery.com>
* All files with FSF copyright notices: Update copyright dates
using scripts/update-copyrights.
2012-12-10 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/unix/sysv/linux/aarch64/sysdep.h (INTERNAL_VSYSCALL):
Remove _x0 declarations.
2012-12-07 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/libm-test-ulps: Regenerate.
2012-12-07 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/unix/sysv/linux/aarch64/sysdep.h (INLINE_VSYSCALL):
Remove _x0 and sc_err declarations.
2012-12-07 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/unix/sysv/linux/aarch64/mmap.c (mmap): Cast return value.
2012-12-07 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/dl-machine.h (elf_machine_rela): Remove
strtab.
2012-12-04 Steve McIntyre <steve.mcintyre@linaro.org>
* sysdeps/unix/sysv/linux/aarch64/ldconfig.h: Add entries
for /lib/ld-linux.so.3 and /lib/ld-linux-armhf.so.3.
2012-12-04 Steve McIntyre <steve.mcintyre@linaro.org>
* sysdeps/unix/sysv/linux/aarch64/readelflib.c: New file.
2012-11-29 Steve McIntyre <steve.mcintyre@linaro.org>
* sysdeps/unix/sysv/linux/aarch64/dl-cache.h: New file.
2012-11-22 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/libm-test-ulps: Regenerate.
2012-11-21 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/unix/sysv/linux/aarch64/nptl/lowlevellock.h
(lll_futex_timed_wait_bitset): Remove INTERNAL_SYSCALL_ERROR_P.
2012-11-20 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/fpu/s_fma.c (weak_alias_x):
Remove and switch to weak_alias.
* sysdeps/aarch64/fpu/s_fmin.c (weak_alias_x): Likewise.
* sysdeps/aarch64/fpu/s_frint.c (weak_alias_x): Likewise.
* sysdeps/aarch64/fpu/s_lrint.c (weak_alias_x): Likewise.
* sysdeps/aarch64/fpu/s_lround.c (weak_alias_x): Likewise.
2012-11-20 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/fpu/s_fma.c (strong_aliasx, NO_LONG_DOUBLE): Remove.
* sysdeps/aarch64/fpu/s_fmin.c (strong_aliasx, NO_LONG_DOUBLE): Likewise.
* sysdeps/aarch64/fpu/s_frint.c (strong_aliasx, NO_LONG_DOUBLE): Likewise.
* sysdeps/aarch64/fpu/s_lrint.c (strong_aliasx, NO_LONG_DOUBLE): Likewise.
* sysdeps/aarch64/fpu/s_lround.c (strong_aliasx, NO_LONG_DOUBLE): Likewise.
2012-11-20 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/fpu/s_fma.c: Indent preprocessor directives.
* sysdeps/aarch64/fpu/s_fmin.c: Likewise.
* sysdeps/aarch64/fpu/s_frint.c: Likewise.
* sysdeps/aarch64/fpu/s_frintf.c: Likewise.
* sysdeps/aarch64/fpu/s_lrint.c: Likewise.
* sysdeps/aarch64/fpu/s_lround.c: Likewise.
2012-11-20 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/dl-tlsdesc.S: Use range for copyright years.
* sysdeps/aarch64/dl-tlsdesc.h: Likewise.
* sysdeps/aarch64/tlsdesc.c: Likewise.
* sysdeps/aarch64/fpu/s_ceil.c: Likewise.
* sysdeps/aarch64/fpu/s_ceilf.c: Likewise.
* sysdeps/aarch64/fpu/s_floor.c: Likewise.
* sysdeps/aarch64/fpu/s_floorf.c: Likewise.
* sysdeps/aarch64/fpu/s_fmaf.c: Likewise.
* sysdeps/aarch64/fpu/s_fmax.c: Likewise.
* sysdeps/aarch64/fpu/s_fmaxf.c: Likewise.
* sysdeps/aarch64/fpu/s_fmin.c: Likewise.
* sysdeps/aarch64/fpu/s_fminf.c: Likewise.
* sysdeps/aarch64/fpu/s_frint.c: Likewise.
* sysdeps/aarch64/fpu/s_frintf.c: Likewise.
* sysdeps/aarch64/fpu/s_llrint.c: Likewise.
* sysdeps/aarch64/fpu/s_llrintf.c: Likewise.
* sysdeps/aarch64/fpu/s_llround.c: Likewise.
* sysdeps/aarch64/fpu/s_llroundf.c: Likewise.
* sysdeps/aarch64/fpu/s_lrint.c: Likewise.
* sysdeps/aarch64/fpu/s_lrintf.c: Likewise.
* sysdeps/aarch64/fpu/s_lround.c: Likewise.
* sysdeps/aarch64/fpu/s_lroundf.c: Likewise.
* sysdeps/aarch64/fpu/s_nearbyint.c: Likewise.
* sysdeps/aarch64/fpu/s_nearbyintf.c: Likewise.
* sysdeps/aarch64/fpu/s_rint.c: Likewise.
* sysdeps/aarch64/fpu/s_rintf.c: Likewise.
* sysdeps/aarch64/fpu/s_round.c: Likewise.
* sysdeps/aarch64/fpu/s_roundf.c: Likewise.
* sysdeps/aarch64/fpu/s_trunc.c: Likewise.
* sysdeps/aarch64/fpu/s_truncf.c: Likewise.
2012-11-20 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/fpu/s_frint.x: Renamed to...
* sysdeps/aarch64/fpu/s_frint.c: ... this new file.
* sysdeps/aarch64/fpu/s_frintf.x: Renamed to...
* sysdeps/aarch64/fpu/s_frintf.c: ... this new file.
* sysdeps/aarch64/fpu/s_ceil.c: Include s_frint.c.
* sysdeps/aarch64/fpu/s_floor.c: Likewise.
* sysdeps/aarch64/fpu/s_nearbyint.c: Likewise.
* sysdeps/aarch64/fpu/s_rint.c: Likewise.
* sysdeps/aarch64/fpu/s_round.c: Likewise.
* sysdeps/aarch64/fpu/s_trunc.c: Likewise.
* sysdeps/aarch64/fpu/s_ceilf.c: Include s_frintf.c.
* sysdeps/aarch64/fpu/s_floorf.c: Likewise.
* sysdeps/aarch64/fpu/s_nearbyintf.c: Likewise.
* sysdeps/aarch64/fpu/s_rintf.c: Likewise.
* sysdeps/aarch64/fpu/s_roundf.c: Likewise.
* sysdeps/aarch64/fpu/s_truncf.c: Likewise.
2012-11-20 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/fpu/s_fma.c (__CONCATX): Don't use K&R.
* sysdeps/aarch64/fpu/s_fmin.c (__CONCATX): Likewise.
* sysdeps/aarch64/fpu/s_lrint.c (__CONCATX): Likewise.
* sysdeps/aarch64/fpu/s_lround.c (__CONCATX): Likewise.
* sysdeps/aarch64/fpu/s_frint.x (__CONCATX): Likewise.
2012-11-19 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/fpu/s_ceil.c: New file.
* sysdeps/aarch64/fpu/s_ceilf.c: New file.
* sysdeps/aarch64/fpu/s_floor.c: New file.
* sysdeps/aarch64/fpu/s_floorf.c: New file.
* sysdeps/aarch64/fpu/s_fma.c: Replace file.
* sysdeps/aarch64/fpu/s_fmaf.c: New file.
* sysdeps/aarch64/fpu/s_fmax.c: New file.
* sysdeps/aarch64/fpu/s_fmaxf.c: New file.
* sysdeps/aarch64/fpu/s_fmin.c: New file.
* sysdeps/aarch64/fpu/s_fminf.c: New file.
* sysdeps/aarch64/fpu/s_frint.x: New file.
* sysdeps/aarch64/fpu/s_frintf.x: New file.
* sysdeps/aarch64/fpu/s_llrint.c: New file.
* sysdeps/aarch64/fpu/s_llrintf.c: New file.
* sysdeps/aarch64/fpu/s_llround.c: New file.
* sysdeps/aarch64/fpu/s_llroundf.c: New file.
* sysdeps/aarch64/fpu/s_lrint.c: New file.
* sysdeps/aarch64/fpu/s_lrintf.c: New file.
* sysdeps/aarch64/fpu/s_lround.c: New file.
* sysdeps/aarch64/fpu/s_lroundf.c: New file.
* sysdeps/aarch64/fpu/s_nearbyint.c: New file.
* sysdeps/aarch64/fpu/s_nearbyintf.c: New file.
* sysdeps/aarch64/fpu/s_rint.c: New file.
* sysdeps/aarch64/fpu/s_rintf.c: New file.
* sysdeps/aarch64/fpu/s_round.c: New file.
* sysdeps/aarch64/fpu/s_roundf.c: New file.
* sysdeps/aarch64/fpu/s_trunc.c: New file.
* sysdeps/aarch64/fpu/s_truncf.c: New file.
2012-11-09 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/Implies: New file.
* sysdeps/aarch64/Makefile: New file.
* sysdeps/aarch64/__longjmp.S: New file.
* sysdeps/aarch64/backtrace.c: New file.
* sysdeps/aarch64/bits: New file.
* sysdeps/aarch64/bits/atomic.h: New file.
* sysdeps/aarch64/bits/endian.h: New file.
* sysdeps/aarch64/bits/fenv.h: New file.
* sysdeps/aarch64/bits/link.h: New file.
* sysdeps/aarch64/bits/linkmap.h: New file.
* sysdeps/aarch64/bits/mathdef.h: New file.
* sysdeps/aarch64/bits/setjmp.h: New file.
* sysdeps/aarch64/bsd-_setjmp.S: New file.
* sysdeps/aarch64/bsd-setjmp.S: New file.
* sysdeps/aarch64/crti.S: New file.
* sysdeps/aarch64/crtn.S: New file.
* sysdeps/aarch64/dl-irel.h: New file.
* sysdeps/aarch64/dl-link.sym: New file.
* sysdeps/aarch64/dl-machine.h: New file.
* sysdeps/aarch64/dl-sysdep.h: New file.
* sysdeps/aarch64/dl-tls.h: New file.
* sysdeps/aarch64/dl-tlsdesc.S: New file.
* sysdeps/aarch64/dl-tlsdesc.h: New file.
* sysdeps/aarch64/dl-trampoline.S: New file.
* sysdeps/aarch64/fpu/fclrexcpt.c: New file.
* sysdeps/aarch64/fpu/fedisblxcpt.c: New file.
* sysdeps/aarch64/fpu/feenablxcpt.c: New file.
* sysdeps/aarch64/fpu/fegetenv.c: New file.
* sysdeps/aarch64/fpu/fegetexcept.c: New file.
* sysdeps/aarch64/fpu/fegetround.c: New file.
* sysdeps/aarch64/fpu/feholdexcpt.c: New file.
* sysdeps/aarch64/fpu/fesetenv.c: New file.
* sysdeps/aarch64/fpu/fesetround.c: New file.
* sysdeps/aarch64/fpu/feupdateenv.c: New file.
* sysdeps/aarch64/fpu/fgetexcptflg.c: New file.
* sysdeps/aarch64/fpu/fraiseexcpt.c: New file.
* sysdeps/aarch64/fpu/fsetexcptflg.c: New file.
* sysdeps/aarch64/fpu/ftestexcept.c: New file.
* sysdeps/aarch64/fpu/get-rounding-mode.h: New file.
* sysdeps/aarch64/fpu/s_fma.c: New file.
* sysdeps/aarch64/fpu_control.h: New file.
* sysdeps/aarch64/jmpbuf-offsets.h: New file.
* sysdeps/aarch64/jmpbuf-unwind.h: New file.
* sysdeps/aarch64/ldsodefs.h: New file.
* sysdeps/aarch64/libc-tls.c: New file.
* sysdeps/aarch64/libm-test-ulps: New file.
* sysdeps/aarch64/machine-gmon.h: New file.
* sysdeps/aarch64/memusage.h: New file.
* sysdeps/aarch64/nptl/Makefile: New file.
* sysdeps/aarch64/nptl/pthread_spin_lock.c: New file.
* sysdeps/aarch64/nptl/pthreaddef.h: New file.
* sysdeps/aarch64/nptl/tcb-offsets.sym: New file.
* sysdeps/aarch64/nptl/tls.h: New file.
* sysdeps/aarch64/sotruss-lib.c: New file.
* sysdeps/unix/sysv/linux/aarch64/Implies: New file.
* sysdeps/unix/sysv/linux/aarch64/Makefile: New file.
* sysdeps/unix/sysv/linux/aarch64/Versions: New file.
* sysdeps/unix/sysv/linux/aarch64/__read_tp.S: New file.
* sysdeps/unix/sysv/linux/aarch64/bits: New file.
* sysdeps/unix/sysv/linux/aarch64/bits/fcntl.h: New file.
* sysdeps/unix/sysv/linux/aarch64/bits/libc-vdso.h: New file.
* sysdeps/unix/sysv/linux/aarch64/bits/mman.h: New file.
* sysdeps/unix/sysv/linux/aarch64/clone.S: New file.
* sysdeps/unix/sysv/linux/aarch64/configure: New file.
* sysdeps/unix/sysv/linux/aarch64/configure.in: New file.
* sysdeps/unix/sysv/linux/aarch64/getcontext.S: New file.
* sysdeps/unix/sysv/linux/aarch64/gettimeofday.c: New file.
* sysdeps/unix/sysv/linux/aarch64/init-first.c: New file.
* sysdeps/unix/sysv/linux/aarch64/ioctl.S: New file.
* sysdeps/unix/sysv/linux/aarch64/kernel-features.h: New file.
* sysdeps/unix/sysv/linux/aarch64/kernel_rt_sigframe.h: New file.
* sysdeps/unix/sysv/linux/aarch64/ldconfig.h: New file.
* sysdeps/unix/sysv/linux/aarch64/libc-__read_tp.S: New file.
* sysdeps/unix/sysv/linux/aarch64/makecontext.c: New file.
* sysdeps/unix/sysv/linux/aarch64/mmap.c: New file.
* sysdeps/unix/sysv/linux/aarch64/nptl/bits: New file.
* sysdeps/unix/sysv/linux/aarch64/nptl/bits/local_lim.h: New file.
* sysdeps/unix/sysv/linux/aarch64/nptl/bits/pthreadtypes.h: New file.
* sysdeps/unix/sysv/linux/aarch64/nptl/bits/semaphore.h: New file.
* sysdeps/unix/sysv/linux/aarch64/nptl/c++-types.data: New file.
* sysdeps/unix/sysv/linux/aarch64/nptl/clone.S: New file.
* sysdeps/unix/sysv/linux/aarch64/nptl/createthread.c: New file.
* sysdeps/unix/sysv/linux/aarch64/nptl/fork.c: New file.
* sysdeps/unix/sysv/linux/aarch64/nptl/ld.abilist: New file.
* sysdeps/unix/sysv/linux/aarch64/nptl/libBrokenLocale.abilist: New file.
* sysdeps/unix/sysv/linux/aarch64/nptl/libanl.abilist: New file.
* sysdeps/unix/sysv/linux/aarch64/nptl/libc.abilist: New file.
* sysdeps/unix/sysv/linux/aarch64/nptl/libcrypt.abilist: New file.
* sysdeps/unix/sysv/linux/aarch64/nptl/libdl.abilist: New file.
* sysdeps/unix/sysv/linux/aarch64/nptl/libm.abilist: New file.
* sysdeps/unix/sysv/linux/aarch64/nptl/libnsl.abilist: New file.
* sysdeps/unix/sysv/linux/aarch64/nptl/libpthread.abilist: New file.
* sysdeps/unix/sysv/linux/aarch64/nptl/libresolv.abilist: New file.
* sysdeps/unix/sysv/linux/aarch64/nptl/librt.abilist: New file.
* sysdeps/unix/sysv/linux/aarch64/nptl/libthread_db.abilist: New file.
* sysdeps/unix/sysv/linux/aarch64/nptl/libutil.abilist: New file.
* sysdeps/unix/sysv/linux/aarch64/nptl/localplt.data: New file.
* sysdeps/unix/sysv/linux/aarch64/nptl/lowlevellock.h: New file.
* sysdeps/unix/sysv/linux/aarch64/nptl/pt-vfork.S: New file.
* sysdeps/unix/sysv/linux/aarch64/nptl/pthread_once.c: New file.
* sysdeps/unix/sysv/linux/aarch64/nptl/sysdep-cancel.h: New file.
* sysdeps/unix/sysv/linux/aarch64/nptl/vfork.S: New file.
* sysdeps/unix/sysv/linux/aarch64/profil-counter.h: New file.
* sysdeps/unix/sysv/linux/aarch64/setcontext.S: New file.
* sysdeps/unix/sysv/linux/aarch64/sigaction.c: New file.
* sysdeps/unix/sysv/linux/aarch64/swapcontext.S: New file.
* sysdeps/unix/sysv/linux/aarch64/sys/elf.h: New file.
* sysdeps/unix/sysv/linux/aarch64/sys/procfs.h: New file.
* sysdeps/unix/sysv/linux/aarch64/sys/ptrace.h: New file.
* sysdeps/unix/sysv/linux/aarch64/sys/ucontext.h: New file.
* sysdeps/unix/sysv/linux/aarch64/sys/user.h: New file.
* sysdeps/unix/sysv/linux/aarch64/syscall.S: New file.
* sysdeps/unix/sysv/linux/aarch64/syscalls.list: New file.
* sysdeps/unix/sysv/linux/aarch64/sysdep.c: New file.
* sysdeps/unix/sysv/linux/aarch64/sysdep.h: New file.
* sysdeps/unix/sysv/linux/aarch64/ucontext-internal.h: New file.
* sysdeps/unix/sysv/linux/aarch64/ucontext_i.sym: New file.
* sysdeps/unix/sysv/linux/aarch64/vfork.S: New file.
-21
View File
@@ -1,21 +0,0 @@
This file describes changes to the AIX port while it was in the ports/
add-on directory. That port has since been removed entirely.
The ports/ directory is no longer used, so reintroduction of AIX code
would be described in the top-level ChangeLog file, not here.
2011-11-29 Joseph Myers <joseph@codesourcery.com>
* sysdeps/unix/sysv/aix: Remove.
2007-07-10 Daniel Jacobowitz <dan@codesourcery.com>
* sysdeps/unix/sysv/aix/bits/fcntl.h: Comment fix.
2005-12-27 Roland McGrath <roland@redhat.com>
* sysdeps/unix/sysv/aix/bits/setjmp.h (_JMPBUF_UNWINDS): Take third
argument DEMANGLE, and pass SP value through it.
* sysdeps/unix/sysv/aix/powerpc/memset.c: Don't use sysdeps/generic.
File diff suppressed because it is too large Load Diff
-372
View File
@@ -1,372 +0,0 @@
This file describes changes to the AM33 port while it was in the ports/
add-on directory. That port has since been removed entirely.
The ports/ directory is no longer used, so reintroduction of AIX code
would be described in the top-level ChangeLog file, not here.
2014-02-08 Joseph Myers <joseph@codesourcery.com>
* sysdeps/am33: Remove.
* sysdeps/unix/am33: Likewise.
* sysdeps/unix/sysv/linux/am33: Likewise.
2013-11-28 Joseph Myers <joseph@codesourcery.com>
* sysdeps/am33/fpu/fegetround.c (fegetround): Use libm_hidden_def.
2013-10-30 Mike Frysinger <vapier@gentoo.org>
* sysdeps/unix/sysv/linux/am33/configure.in: Moved to ...
* sysdeps/unix/sysv/linux/am33/configure.ac: ... here.
* sysdeps/unix/sysv/linux/am33/configure: Regenerated.
2013-08-29 Ondřej Bílka <neleai@seznam.cz>
* sysdeps/unix/sysv/linux/am33/bits/fcntl.h: Fix typos.
2013-08-21 Ondřej Bílka <neleai@seznam.cz>
* sysdeps/am33/fpu/fraiseexcpt.c: Fix typos.
2013-06-05 Joseph Myers <joseph@codesourcery.com>
* sysdeps/am33/elf/start.S: Remove trailing whitespace.
* sysdeps/am33/fpu/fgetexcptflg.c: Likewise.
2013-05-01 Ryan S. Arnold <rsa@linux.vnet.ibm.com>
* sysdeps/am33/atomicity.h: Add missing #include <stdint.h> due to
uint64_t or uint32_t usage.
2013-03-11 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/am33/bits/mman.h: Remove all defines
provided by bits/mman-linux.h and include <bits/mman-linux.h>.
2013-02-28 Joseph Myers <joseph@codesourcery.com>
* sysdeps/am33/elf/start.S: Don't include "bp-sym.h".
(_start): Don't use BP_SYM.
* sysdeps/unix/sysv/linux/am33/clone.S: Don't include <bp-sym.h>.
(__clone): Don't use BP_SYM.
2013-02-14 Joseph Myers <joseph@codesourcery.com>
[BZ #13550]
* sysdeps/am33/dl-machine.h [!PROF && !__BOUNDED_POINTERS__]:
Remove __BOUNDED_POINTERS__ from condition.
2013-02-13 Joseph Myers <joseph@codesourcery.com>
[BZ #13550]
* sysdeps/am33/dl-machine.h (fixup): Do not use __unbounded.
* sysdeps/unix/sysv/linux/am33/brk.c (__brk): Do not use
__ptrvalue.
2013-01-02 Joseph Myers <joseph@codesourcery.com>
* All files with FSF copyright notices: Update copyright dates
using scripts/update-copyrights.
2013-01-01 Joseph Myers <joseph@codesourcery.com>
* sysdeps/unix/sysv/linux/am33/bits/fcntl.h: Reformat copyright
notice.
* sysdeps/unix/sysv/linux/am33/sysdep.S: Likewise.
2012-11-03 Joseph Myers <joseph@codesourcery.com>
* sysdeps/am33/fpu/fclrexcpt.c (feclearexcept): Add
libm_hidden_ver.
[BZ #3439]
* sysdeps/am33/fpu/bits/fenv.h (FE_INEXACT): Define macro to
integer constant usable in #if and use that to give value to enum
constant.
(FE_UNDERFLOW): Likewise.
(FE_OVERFLOW): Likewise.
(FE_DIVBYZERO): Likewise.
(FE_INVALID): Likewise.
(FE_TONEAREST): Likewise.
2012-10-30 Joseph Myers <joseph@codesourcery.com>
[BZ #14047]
* sysdeps/am33/tininess.h: New file.
2012-10-09 Roland McGrath <roland@hack.frob.com>
* sysdeps/unix/sysv/linux/am33/configure: Regenerated.
2012-08-07 Joseph Myers <joseph@codesourcery.com>
* sysdeps/unix/sysv/linux/am33/configure.in (arch_minimum_kernel):
Change to 2.6.25.
* sysdeps/unix/sysv/linux/am33/configure: Regenerated.
2012-08-01 Roland McGrath <roland@hack.frob.com>
[BZ #14138]
* sysdeps/unix/sysv/linux/am33/getrlimit.c: File removed.
2012-03-09 Paul Eggert <eggert@cs.ucla.edu>
[BZ #13673]
Replace FSF snail mail address with URLs, as per GNU coding standards.
2011-10-05 Andreas Schwab <schwab@redhat.com>
* sysdeps/am33/dl-machine.h (elf_machine_rela)
(elf_machine_lazy_rel): Add parameter skip_ifunc.
2007-10-22 Daniel Jacobowitz <dan@codesourcery.com>
* sysdeps/unix/sysv/linux/am33/bits/fcntl.h (F_DUPFD_CLOEXEC): Define.
2007-07-10 Daniel Jacobowitz <dan@codesourcery.com>
* sysdeps/unix/sysv/linux/am33/bits/fcntl.h: Comment fix.
2006-01-12 Roland McGrath <roland@redhat.com>
* sysdeps/am33/jmpbuf-unwind.h: Include <jmpbuf-offsets.h>.
2006-01-10 Roland McGrath <roland@redhat.com>
* sysdeps/am33/bits/setjmp.h (__JMP_BUF_SP): Macro moved ...
* sysdeps/am33/jmpbuf-offsets.h: ... here, new file.
* sysdeps/am33/bits/setjmp.h (_JMPBUF_UNWINDS, __JMP_BUF_SP):
Move macros ...
* sysdeps/am33/jmpbuf-unwind.h: ... here, new file.
2005-12-27 Roland McGrath <roland@redhat.com>
* sysdeps/am33/bits/setjmp.h (_JMPBUF_UNWINDS): Take third argument
DEMANGLE, and pass SP value through it.
2004-10-25 Alexandre Oliva <aoliva@redhat.com>
* ChangeLog.am33: Added emacs local variables for mode setting and
default changelog name.
* sysdeps/unix/sysv/linux/linuxthreads/sysdep-cancel.h: Moved...
* sysdeps/unix/sysv/linux/am33/linuxthreads/sysdep-cancel.h:
... here, where it should have been added in the first place.
2004-10-22 Alexandre Oliva <aoliva@redhat.com>
* sysdeps/unix/sysv/linux/am33/bits/mman.h (PROT_GROWSDOWN): New.
(PROT_GROWSUP): New.
2004-08-16 Alexandre Oliva <aoliva@redhat.com>
* sysdeps/am33/shlib-versions: Moved from top level.
2004-08-09 Alexandre Oliva <aoliva@redhat.com>
* sysdeps/am33/preconfigure: Renamed from configure.
* Makefile: Removed.
2004-07-20 Alexandre Oliva <aoliva@redhat.com>
Moved from separate linuxthreads tree into am33/linuxthreads
subdirs:
2004-07-01 Alexandre Oliva <aoliva@redhat.com>
* sysdeps/unix/sysv/linux/am33/linuxthreads/sysdep-cancel.h
(PSEUDO): Save value returned by CENABLE and pass it to CDISABLE.
* sysdeps/am33/linuxthreads/pt-machine.h (testandset): Take
volatile argument. Improve asm statement.
2001-10-31 Alexandre Oliva <aoliva@redhat.com>
* sysdeps/am33/linuxthreads/pspinlock.c: New file.
* sysdeps/am33/linuxthreads/pt-machine.h: New file.
2004-07-19 Alexandre Oliva <aoliva@redhat.com>
* configure: New.
* mach.sh: Removed.
* sysdeps/am33/Makefile: Likewise.
2004-06-28 Alexandre Oliva <aoliva@redhat.com>
* sysdeps/am33/Makefile: New file.
* sysdeps/unix/sysv/linux/am33/configure.in: New file.
* sysdeps/unix/sysv/linux/am33/configure: New file.
* mach.sh: New file.
2004-06-19 Alexandre Oliva <aoliva@redhat.com>
* sysdeps/am33/fpu/bits/fenv.h: New file.
* sysdeps/am33/fpu/fpu_control.h: New file.
* sysdeps/am33/fpu/fenv_libc.h: New file.
* sysdeps/am33/fpu/fclrexcpt.c: New file.
* sysdeps/am33/fpu/fedisblxcpt.c: New file.
* sysdeps/am33/fpu/feenablxcpt.c: New file.
* sysdeps/am33/fpu/fegetenv.c: New file.
* sysdeps/am33/fpu/fegetexcept.c: New file.
* sysdeps/am33/fpu/fegetround.c: New file.
* sysdeps/am33/fpu/feholdexcpt.c: New file.
* sysdeps/am33/fpu/fesetenv.c: New file.
* sysdeps/am33/fpu/fesetround.c: New file.
* sysdeps/am33/fpu/feupdateenv.c: New file.
* sysdeps/am33/fpu/fgetexcptflg.c: New file.
* sysdeps/am33/fpu/fraiseexcpt.c: New file.
* sysdeps/am33/fpu/fsetexcptflg.c: New file.
* sysdeps/am33/fpu/ftestexcept.c: New file.
* sysdeps/unix/am33/sysdep.h: Use relative pathnames.
* sysdeps/unix/sysv/linux/am33/sysdep.h: Likewise.
* sysdeps/unix/sysv/linux/am33/sysdep.S: Likewise.
* configure, Makefile: Do nothing.
2004-06-09 Alexandre Oliva <aoliva@redhat.com>
* sysdeps/am33/bsd-setjmp.S: Move into...
* sysdeps/am33/setjmp.S: ... this file.
* sysdeps/am33/bsd-_setjmp.S: Likewise.
* sysdeps/am33/dl-machine.h (_dl_start_user): Do not do double
indirection to obtain _dl_loaded.
(elf_machine_rela_relative): Do not add addend.
2004-06-08 Alexandre Oliva <aoliva@redhat.com>
* sysdeps/am33/sysdep.h (JUMPTARGET): Undef before redefining.
* sysdeps/unix/sysv/linux/am33/sysdep.h (PSEUDO_NOERROR,
PSEUDO_END_NOERROR, ret_NOERROR, PSEUDO_ERRVAL, PSEUDO_END_ERRVAL,
ret_ERRVAL, INTERNAL_SYSCALL, INTERNAL_SYSCALL_DECL,
INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New.
(INLINE_SYSCALL): Rewrite in terms of INTERNAL_SYSCALL macros.
(DO_CALL): Reorder arguments.
* sysdeps/am33/dl-machine.h (elf_machine_rela): Update prototype.
2003-05-16 Alexandre Oliva <aoliva@redhat.com>
* sysdeps/unix/sysv/linux/am33/Makefile: New file.
* sysdeps/unix/sysv/linux/am33/sysdep.h (INLINE_SYSCALL1): Drop
comma before args when calling inline_syscall0.
* sysdeps/unix/sysv/linux/am33/chown.c: New file.
* sysdeps/unix/sysv/linux/am33/fchown.c: New file.
* sysdeps/unix/sysv/linux/am33/fxstat.c: New file.
* sysdeps/unix/sysv/linux/am33/getegid.c: New file.
* sysdeps/unix/sysv/linux/am33/geteuid.c: New file.
* sysdeps/unix/sysv/linux/am33/getgid.c: New file.
* sysdeps/unix/sysv/linux/am33/getrlimit.c: New file.
* sysdeps/unix/sysv/linux/am33/getuid.c: New file.
* sysdeps/unix/sysv/linux/am33/lchown.c: New file.
* sysdeps/unix/sysv/linux/am33/lockf64.c: New file.
* sysdeps/unix/sysv/linux/am33/lxstat.c: New file.
* sysdeps/unix/sysv/linux/am33/setegid.c: New file.
* sysdeps/unix/sysv/linux/am33/seteuid.c: New file.
* sysdeps/unix/sysv/linux/am33/setfsgid.c: New file.
* sysdeps/unix/sysv/linux/am33/setfsuid.c: New file.
* sysdeps/unix/sysv/linux/am33/setgid.c: New file.
* sysdeps/unix/sysv/linux/am33/setregid.c: New file.
* sysdeps/unix/sysv/linux/am33/setresgid.c: New file.
* sysdeps/unix/sysv/linux/am33/setresuid.c: New file.
* sysdeps/unix/sysv/linux/am33/setreuid.c: New file.
* sysdeps/unix/sysv/linux/am33/setrlimit.c: New file.
* sysdeps/unix/sysv/linux/am33/setuid.c: New file.
* sysdeps/unix/sysv/linux/am33/xstat.c: New file.
* sysdeps/unix/sysv/linux/am33/syscalls.list: Removed, reverting
2003-03-26's patch.
* sysdeps/unix/sysv/linux/am33/getresgid.c: New file.
* sysdeps/unix/sysv/linux/am33/getresuid.c: New file.
2003-05-09 Alexandre Oliva <aoliva@redhat.com>
* sysdeps/unix/sysv/linux/am33/getgroups.c: New file.
* sysdeps/unix/sysv/linux/am33/setgroups.c: New file.
2003-05-07 Alexandre Oliva <aoliva@redhat.com>
* sysdeps/unix/sysv/linux/am33/getmsg.c: New file.
* sysdeps/unix/sysv/linux/am33/putmsg.c: New file.
2003-03-26 Alexandre Oliva <aoliva@redhat.com>
* sysdeps/unix/sysv/linux/am33/syscalls.list: Added getresuid and
getresgid.
2003-01-17 Alexandre Oliva <aoliva@redhat.com>
* sysdeps/unix/sysv/linux/am33/fcntl.c: New file.
2002-02-08 Alexandre Oliva <aoliva@redhat.com>
* sysdeps/am33/sys/ucontext.h (fpregset_t): Make it a structure.
2002-01-07 Alexandre Oliva <aoliva@redhat.com>
* sysdeps/am33/sys/ucontext.h (NFREG): Increment by 1, to make
room for FPCR.
2001-12-13 Alexandre Oliva <aoliva@redhat.com>
* shlib-versions: Set GLIBC_2.2.5 as the earliest symbol set.
2001-12-07 Alexandre Oliva <aoliva@redhat.com>
* sysdeps/am33/__longjmp.S: Tabify.
* sysdeps/am33/setjmp.S: Likewise.
* sysdeps/am33/dl-debug.h: Remove.
* sysdeps/am33/dl-machine.h: Delete commented-out uses of
macros defined in dl-debug.
(elf_machine_rela): Optimize if HAVE_Z_COMBRELOC. Fix
prediction of R_MN10300_NONE. Don't test for impossible
condition.
* sysdeps/am33/sysdep.h (ASM_TYPE_DIRECTIVE,
ASM_SIZE_DIRECTIVE): Define to nothing if ! HAVE_ELF.
2001-11-09 Alexandre Oliva <aoliva@redhat.com>
* sysdeps/unix/sysv/linux/am33/clone.S: Avoid branch overflow in
static link.
2001-11-08 Alexandre Oliva <aoliva@redhat.com>
* sysdeps/unix/sysv/linux/am33/clone.S: Load arguments correctly
for syscall.
2001-11-07 Alexandre Oliva <aoliva@redhat.com>
* sysdeps/unix/sysv/linux/am33/clone.S: Fix argument-passing
to thread_start.
2001-10-31 Alexandre Oliva <aoliva@redhat.com>
* shlib-versions: Added am33_2.0 support.
* sysdeps/am33/Implies: New file.
* sysdeps/am33/__longjmp.S: New file.
* sysdeps/am33/atomicity.h: New file.
* sysdeps/am33/bsd-_setjmp.S: New file.
* sysdeps/am33/bsd-setjmp.S: New file.
* sysdeps/am33/dl-debug.h: New file.
* sysdeps/am33/dl-machine.h: New file.
* sysdeps/am33/memusage.h: New file.
* sysdeps/am33/setjmp.S: New file.
* sysdeps/am33/stackinfo.h: New file.
* sysdeps/am33/sysdep.h: New file.
* sysdeps/am33/bits/endian.h: New file.
* sysdeps/am33/bits/setjmp.h: New file.
* sysdeps/am33/elf/start.S: New file.
* sysdeps/am33/sys/ucontext.h: New file.
* sysdeps/unix/am33/sysdep.S: New file.
* sysdeps/unix/am33/sysdep.h: New file.
* sysdeps/unix/sysv/linux/am33/brk.c: New file.
* sysdeps/unix/sysv/linux/am33/clone.S: New file.
* sysdeps/unix/sysv/linux/am33/profil-counter.h: New file.
* sysdeps/unix/sysv/linux/am33/socket.S: New file.
* sysdeps/unix/sysv/linux/am33/syscall.S: New file.
* sysdeps/unix/sysv/linux/am33/sysdep.S: New file.
* sysdeps/unix/sysv/linux/am33/sysdep.h: New file.
* sysdeps/unix/sysv/linux/am33/bits/fcntl.h: New file.
* sysdeps/unix/sysv/linux/am33/bits/mman.h: New file.
Local Variables:
mode: change-log
left-margin: 8
fill-column: 74
version-control: never
change-log-default-name: "ChangeLog.am33"
End:
File diff suppressed because it is too large Load Diff
-40
View File
@@ -1,40 +0,0 @@
This file describes changes to the CRIS port while it was in the ports/
add-on directory. That port has since been removed entirely.
The ports/ directory is no longer used, so reintroduction of AIX code
would be described in the top-level ChangeLog file, not here.
2012-02-21 Joseph Myers <joseph@codesourcery.com>
* sysdeps/cris: Remove.
* sysdeps/unix/sysv/linux/cris: Likewise.
2011-10-05 Andreas Schwab <schwab@redhat.com>
* sysdeps/cris/dl-machine.h (elf_machine_rela)
(elf_machine_lazy_rel): Add parameter skip_ifunc.
2007-10-22 Daniel Jacobowitz <dan@codesourcery.com>
* sysdeps/unix/sysv/linux/cris/bits/fcntl.h (F_DUPFD_CLOEXEC): Define.
2007-07-10 Daniel Jacobowitz <dan@codesourcery.com>
* sysdeps/unix/sysv/linux/cris/bits/fcntl.h: Comment fix.
2005-12-27 Roland McGrath <roland@redhat.com>
* sysdeps/cris/bits/setjmp.h (_JMPBUF_UNWINDS): Take third argument
DEMANGLE, and pass SP value through it.
2004-10-25 Roland McGrath <roland@frob.com>
* sysdeps/cris/configure.in: New file, with test moved out of main
libc configure.in file.
* sysdeps/cris/configure: New generated file.
2004-10-23 Roland McGrath <roland@frob.com>
* sysdeps/cris, sysdeps/unix/sysv/linux/cris: Moved here from main
libc source tree.
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
-200
View File
@@ -1,200 +0,0 @@
This file describes changes to the linux-generic infrastructure while
it was in the ports add-on directory. This code is no longer maintained
here and so future changes to it should be listed in the top-level
ChangeLog file.
2014-02-10 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/unix/sysv/linux/generic: Move directory to
../sysdeps/unix/sysv/linux/generic.
2013-11-13 Chung-Lin Tang <cltang@codesourcery.com>
* sysdeps/unix/sysv/linux/generic/bits/stat.h (__field64): Use
__alignof__(type64) in alignment attribute instead of 8.
* sysdeps/unix/sysv/linux/generic/bits/statfs.h (__field64): Use
__alignof__(type64) in alignment attribute instead of 8.
(struct statfs): Remove alignment attribute.
(struct statfs64): Likewise.
2013-06-05 Joseph Myers <joseph@codesourcery.com>
* sysdeps/unix/sysv/linux/generic/wordsize-32/syscalls.list:
Remove trailing whitespace.
2013-01-02 Joseph Myers <joseph@codesourcery.com>
* All files with FSF copyright notices: Update copyright dates
using scripts/update-copyrights.
2013-01-01 Joseph Myers <joseph@codesourcery.com>
* sysdeps/unix/sysv/linux/generic/wordsize-32/getdents.c: Reformat
copyright notice.
2012-11-04 Thomas Schwinge <thomas@codesourcery.com>
* sysdeps/unix/sysv/linux/generic/sysctl.c: Don't include
<stub-tag.h>.
* sysdeps/unix/sysv/linux/generic/ustat.c: Likewise.
2012-10-27 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/generic/bits/fcntl.h: (__O_LARGEFILE)
[__WORDSIZE != 64]: Do not define, take value from
<bits/fcntl-linux.h>.
2012-10-23 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/generic/bits/fcntl.h: Remove all
definitions and declarations that are provided by
<bits/fcntl-linux.h> and include <bits/fcntl-linux.h>.
2012-10-01 Roland McGrath <roland@hack.frob.com>
* sysdeps/unix/sysv/linux/generic/bits/typesizes.h
(__SWBLK_T_TYPE): Macro removed.
2012-08-02 Roland McGrath <roland@hack.frob.com>
* sysdeps/unix/sysv/linux/generic/bits/typesizes.h
[__LP64__] (__OFF_T_MATCHES_OFF64_T): New macro.
2012-05-30 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/unix/sysv/linux/generic/syscalls.list: Remove
__connect_internal alias.
2012-05-18 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/unix/sysv/linux/generic/bits/typesizes.h
(__FSWORD_T_TYPE): New macro.
2012-05-16 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/unix/sysv/linux/generic/not-cancel.h: Add
multiple-inclusion guard.
2012-05-16 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/unix/sysv/linux/generic/bits/typesizes.h:
Remove now-unused __SNSECONDS_T_TYPE, and add new
__SYSCALL_ULONG_TYPE and __SYSCALL_SLONG_TYPE types.
2012-05-14 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/unix/sysv/linux/generic/bits/stat.h,
sysdeps/unix/sysv/linux/generic/bits/statfs.h:
Use "__aligned__" instead of "aligned" in public headers.
2012-05-12 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/unix/sysv/linux/generic/wordsize-32/syscalls.list:
Add entries for prlimit64 and fanotify_mark.
2012-05-12 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/unix/sysv/linux/generic/bits/typesizes.h
(__SNSECONDS_T_TYPE): New macro.
2012-03-09 Paul Eggert <eggert@cs.ucla.edu>
[BZ #13673]
Replace FSF snail mail address with URLs, as per GNU coding standards.
2012-01-30 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/unix/sysv/linux/generic/not-cancel.h: New file.
2012-01-30 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/unix/sysv/linux/generic/epoll_wait.c: Remove
libc_hidden_proto declaration now it's in sys/epoll.h override.
2011-12-09 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/unix/sysv/linux/generic/bits/msq.h: New file.
* sysdeps/unix/sysv/linux/generic/bits/shm.h: New file.
2011-12-03 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/unix/sysv/linux/generic/Makefile: New file.
* sysdeps/unix/sysv/linux/generic/____longjmp_chk.c: New file.
* sysdeps/unix/sysv/linux/generic/access.c: New file.
* sysdeps/unix/sysv/linux/generic/bits/fcntl.h: New file.
* sysdeps/unix/sysv/linux/generic/bits/sem.h: New file.
* sysdeps/unix/sysv/linux/generic/bits/stat.h: New file.
* sysdeps/unix/sysv/linux/generic/bits/statfs.h: New file.
* sysdeps/unix/sysv/linux/generic/bits/typesizes.h: New file.
* sysdeps/unix/sysv/linux/generic/brk.c: New file.
* sysdeps/unix/sysv/linux/generic/chmod.c: New file.
* sysdeps/unix/sysv/linux/generic/chown.c: New file.
* sysdeps/unix/sysv/linux/generic/creat.c: New file.
* sysdeps/unix/sysv/linux/generic/dl-origin.c: New file.
* sysdeps/unix/sysv/linux/generic/dup2.c: New file.
* sysdeps/unix/sysv/linux/generic/epoll_create.c: New file.
* sysdeps/unix/sysv/linux/generic/epoll_wait.c: New file.
* sysdeps/unix/sysv/linux/generic/futimesat.c: New file.
* sysdeps/unix/sysv/linux/generic/getdents.c: New file.
* sysdeps/unix/sysv/linux/generic/getdents64.c: New file.
* sysdeps/unix/sysv/linux/generic/inotify_init.c: New file.
* sysdeps/unix/sysv/linux/generic/kernel_stat.h: New file.
* sysdeps/unix/sysv/linux/generic/lchown.c: New file.
* sysdeps/unix/sysv/linux/generic/link.c: New file.
* sysdeps/unix/sysv/linux/generic/lxstat.c: New file.
* sysdeps/unix/sysv/linux/generic/mkdir.c: New file.
* sysdeps/unix/sysv/linux/generic/nptl/not-cancel.h: New file.
* sysdeps/unix/sysv/linux/generic/open.c: New file.
* sysdeps/unix/sysv/linux/generic/open64.c: New file.
* sysdeps/unix/sysv/linux/generic/pause.c: New file.
* sysdeps/unix/sysv/linux/generic/pipe.c: New file.
* sysdeps/unix/sysv/linux/generic/poll.c: New file.
* sysdeps/unix/sysv/linux/generic/readlink.c: New file.
* sysdeps/unix/sysv/linux/generic/readlink_chk.c: New file.
* sysdeps/unix/sysv/linux/generic/recv.c: New file.
* sysdeps/unix/sysv/linux/generic/rename.c: New file.
* sysdeps/unix/sysv/linux/generic/rmdir.c: New file.
* sysdeps/unix/sysv/linux/generic/select.c: New file.
* sysdeps/unix/sysv/linux/generic/send.c: New file.
* sysdeps/unix/sysv/linux/generic/symlink.c: New file.
* sysdeps/unix/sysv/linux/generic/syscalls.list: New file.
* sysdeps/unix/sysv/linux/generic/sysctl.c: New file.
* sysdeps/unix/sysv/linux/generic/sysdep.h: New file.
* sysdeps/unix/sysv/linux/generic/umount.c: New file.
* sysdeps/unix/sysv/linux/generic/unlink.c: New file.
* sysdeps/unix/sysv/linux/generic/ustat.c: New file.
* sysdeps/unix/sysv/linux/generic/utimes.c: New file.
* sysdeps/unix/sysv/linux/generic/wordsize-32/Versions: New file.
* sysdeps/unix/sysv/linux/generic/wordsize-32/fcntl.c: New file.
* sysdeps/unix/sysv/linux/generic/wordsize-32/fstatfs.c: New file.
* sysdeps/unix/sysv/linux/generic/wordsize-32/ftruncate.c: New file.
* sysdeps/unix/sysv/linux/generic/wordsize-32/ftruncate64.c: New file.
* sysdeps/unix/sysv/linux/generic/wordsize-32/fxstat.c: New file.
* sysdeps/unix/sysv/linux/generic/wordsize-32/fxstatat.c: New file.
* sysdeps/unix/sysv/linux/generic/wordsize-32/getdents.c: New file.
* sysdeps/unix/sysv/linux/generic/wordsize-32/llseek.c: New file.
* sysdeps/unix/sysv/linux/generic/wordsize-32/lseek.c: New file.
* sysdeps/unix/sysv/linux/generic/wordsize-32/lxstat.c: New file.
* sysdeps/unix/sysv/linux/generic/wordsize-32/lxstat64.c: New file.
* sysdeps/unix/sysv/linux/generic/wordsize-32/mmap.c: New file.
* sysdeps/unix/sysv/linux/generic/wordsize-32/overflow.h: New file.
* sysdeps/unix/sysv/linux/generic/wordsize-32/posix_fadvise.c: New file.
* sysdeps/unix/sysv/linux/generic/wordsize-32/pread.c: New file.
* sysdeps/unix/sysv/linux/generic/wordsize-32/pread64.c: New file.
* sysdeps/unix/sysv/linux/generic/wordsize-32/preadv.c: New file.
* sysdeps/unix/sysv/linux/generic/wordsize-32/preadv64.c: New file.
* sysdeps/unix/sysv/linux/generic/wordsize-32/pwrite.c: New file.
* sysdeps/unix/sysv/linux/generic/wordsize-32/pwrite64.c: New file.
* sysdeps/unix/sysv/linux/generic/wordsize-32/pwritev.c: New file.
* sysdeps/unix/sysv/linux/generic/wordsize-32/pwritev64.c: New file.
* sysdeps/unix/sysv/linux/generic/wordsize-32/sendfile.c: New file.
* sysdeps/unix/sysv/linux/generic/wordsize-32/statfs.c: New file.
* sysdeps/unix/sysv/linux/generic/wordsize-32/syscalls.list: New file.
* sysdeps/unix/sysv/linux/generic/wordsize-32/truncate.c: New file.
* sysdeps/unix/sysv/linux/generic/wordsize-32/truncate64.c: New file.
* sysdeps/unix/sysv/linux/generic/wordsize-32/xstat.c: New file.
* sysdeps/unix/sysv/linux/generic/wordsize-32/xstat64.c: New file.
* sysdeps/unix/sysv/linux/generic/xmknod.c: New file.
* sysdeps/unix/sysv/linux/generic/xstat.c: New file.
File diff suppressed because it is too large Load Diff
-198
View File
@@ -1,198 +0,0 @@
This file describes changes to the machine while it was in the ports
add-on directory. This port is no longer part of an add-on and so
future changes to it should be listed in the top-level ChangeLog file,
not here.
2014-02-17 David Holsgrove <david.holsgrove@xilinx.com>
* sysdeps/microblaze: Move directory to ../sysdeps/microblaze.
* sysdeps/unix/sysv/linux/microblaze: Move directory to
../sysdeps/unix/sysv/linux/microblaze.
2014-02-08 Joseph Myers <joseph@codesourcery.com>
* sysdeps/unix/sysv/linux/microblaze/msgctl.c: Include
sysdeps/unix/sysv/linux/arm/msgctl.c instead of
sysdeps/unix/sysv/linux/alpha/msgctl.c.
* sysdeps/unix/sysv/linux/microblaze/semctl.c: Include
sysdeps/unix/sysv/linux/arm/semctl.c instead of
sysdeps/unix/sysv/linux/alpha/semctl.c.
* sysdeps/unix/sysv/linux/microblaze/shmctl.c: Include
sysdeps/unix/sysv/linux/arm/shmctl.c instead of
sysdeps/unix/sysv/linux/alpha/shmctl.c.
2014-02-04 David Holsgrove <david.holsgrove@xilinx.com>
* sysdeps/microblaze/libm-test-ulps: Update.
* sysdeps/microblaze/libm-test-ulps_new: Delete redundant file.
2014-02-04 David Holsgrove <david.holsgrove@xilinx.com>
* sysdeps/microblaze/fegetround.c: Delete redundant file.
* sysdeps/microblaze/fesetround.c: Likewise.
2013-11-28 Joseph Myers <joseph@codesourcery.com>
* sysdeps/microblaze/fegetround.c (fegetround): Use
libm_hidden_def.
2013-11-26 Ondřej Bílka <neleai@seznam.cz>
* sysdeps/unix/sysv/linux/microblaze/bits/stat.h: Use __glibc_reserved instead __unused.
* sysdeps/unix/sysv/linux/microblaze/kernel_stat.h: Likewise.
2013-10-30 Mike Frysinger <vapier@gentoo.org>
* sysdeps/unix/sysv/linux/microblaze/configure.in: Moved to ...
* sysdeps/unix/sysv/linux/microblaze/configure.ac: ... here.
* sysdeps/unix/sysv/linux/microblaze/configure: Regenerated.
2013-06-15 Siddhesh Poyarekar <siddhesh@redhat.com>
* sysdeps/unix/sysv/linux/microblaze/nptl/libpthread.abilist:
Update.
2013-06-14 David Holsgrove <david.holsgrove@xilinx.com>
* sysdeps/unix/sysv/linux/microblaze/nptl/lowlevellock.h: Correct
return from macros.
2013-06-05 Ondřej Bílka <neleai@seznam.cz>
* sysdeps/microblaze/bits/atomic.h: Remove executable mode.
* sysdeps/unix/sysv/linux/microblaze/sysdep.h: Likewise.
2013-05-31 Joseph Myers <joseph@codesourcery.com>
* sysdeps/microblaze/Makefile ($(objpfx)libm.so): Remove
dependency on ld.so.
($(objpfx)libcrypt.so): Likewise.
($(objpfx)libresolv.so): Likewise.
($(objpfx)libnss_dns.so): Likewise.
($(objpfx)libnss_files.so): Likewise.
($(objpfx)libnss_db.so): Likewise.
($(objpfx)libnss_nis.so): Likewise.
($(objpfx)libnss_nisplus.so): Likewise.
($(objpfx)libnss_hesiod.so): Likewise.
($(objpfx)libnss_compat.so): Likewise.
($(objpfx)libanl.so): Likewise.
($(objpfx)libnsl.so): Likewise.
($(objpfx)libcidn.so): Likewise.
($(objpfx)libutil.so): Likewise.
2013-05-29 Siddhesh Poyarekar <siddhesh@redhat.com>
[BZ #15465]
* sysdeps/microblaze/dl-machine.h (elf_machine_rela): Use
RTLD_PROGNAME.
2013-05-22 Joseph Myers <joseph@codesourcery.com>
* sysdeps/microblaze/libm-test-ulps: Update test names.
2013-05-19 Joseph Myers <joseph@codesourcery.com>
* sysdeps/microblaze/libm-test-ulps: Update names of sincos tests.
2013-03-28 David Holsgrove <david.holsgrove@xilinx.com>
* sysdeps/microblaze/Implies: New file.
* sysdeps/microblaze/Makefile: New file.
* sysdeps/microblaze/__longjmp.S: New file.
* sysdeps/microblaze/_mcount.S: New file.
* sysdeps/microblaze/abort-instr.h: New file.
* sysdeps/microblaze/asm-syntax.h: New file.
* sysdeps/microblaze/backtrace.c: New file.
* sysdeps/microblaze/backtrace_linux.c: New file.
* sysdeps/microblaze/bits/atomic.h: New file.
* sysdeps/microblaze/bits/endian.h: New file.
* sysdeps/microblaze/bits/fenv.h: New file.
* sysdeps/microblaze/bits/link.h: New file.
* sysdeps/microblaze/bits/setjmp.h: New file.
* sysdeps/microblaze/bsd-_setjmp.S: New file.
* sysdeps/microblaze/bsd-setjmp.S: New file.
* sysdeps/microblaze/crti.S: New file.
* sysdeps/microblaze/crtn.S: New file.
* sysdeps/microblaze/dl-machine.h: New file.
* sysdeps/microblaze/dl-tls.h: New file.
* sysdeps/microblaze/dl-trampoline.S: New file.
* sysdeps/microblaze/fegetround.c: New file.
* sysdeps/microblaze/fesetround.c: New file.
* sysdeps/microblaze/gccframe.h: New file.
* sysdeps/microblaze/jmpbuf-unwind.h: New file.
* sysdeps/microblaze/ldsodefs.h: New file.
* sysdeps/microblaze/libc-tls.c: New file.
* sysdeps/microblaze/libm-test-ulps: New file.
* sysdeps/microblaze/machine-gmon.h: New file.
* sysdeps/microblaze/math_private.h: New file.
* sysdeps/microblaze/memusage.h: New file.
* sysdeps/microblaze/nptl/Makefile: New file.
* sysdeps/microblaze/nptl/pthread_spin_lock.c: New file.
* sysdeps/microblaze/nptl/pthreaddef.h: New file.
* sysdeps/microblaze/nptl/tcb-offsets.sym: New file.
* sysdeps/microblaze/nptl/tls.h: New file.
* sysdeps/microblaze/preconfigure: New file.
* sysdeps/microblaze/setjmp.S: New file.
* sysdeps/microblaze/shlib-versions: New file.
* sysdeps/microblaze/sotruss-lib.c: New file.
* sysdeps/microblaze/stackinfo.h: New file.
* sysdeps/microblaze/start.S: New file.
* sysdeps/microblaze/sysdep.h: New file.
* sysdeps/microblaze/tls-macros.h: New file.
* sysdeps/microblaze/tst-audit.h: New file.
* sysdeps/unix/sysv/linux/microblaze/Makefile: New file.
* sysdeps/unix/sysv/linux/microblaze/Versions: New file.
* sysdeps/unix/sysv/linux/microblaze/____longjmp_chk.S: New file.
* sysdeps/unix/sysv/linux/microblaze/bits/fcntl.h: New file.
* sysdeps/unix/sysv/linux/microblaze/bits/mman.h: New file.
* sysdeps/unix/sysv/linux/microblaze/bits/stat.h: New file.
* sysdeps/unix/sysv/linux/microblaze/brk.c: New file.
* sysdeps/unix/sysv/linux/microblaze/clone.S: New file.
* sysdeps/unix/sysv/linux/microblaze/configure: New file.
* sysdeps/unix/sysv/linux/microblaze/configure.in: New file.
* sysdeps/unix/sysv/linux/microblaze/fcntl.c: New file.
* sysdeps/unix/sysv/linux/microblaze/fxstat.c: New file.
* sysdeps/unix/sysv/linux/microblaze/fxstatat.c: New file.
* sysdeps/unix/sysv/linux/microblaze/getsysstats.c: New file.
* sysdeps/unix/sysv/linux/microblaze/kernel-features.h: New file.
* sysdeps/unix/sysv/linux/microblaze/kernel_stat.h: New file.
* sysdeps/unix/sysv/linux/microblaze/lxstat.c: New file.
* sysdeps/unix/sysv/linux/microblaze/mmap.S: New file.
* sysdeps/unix/sysv/linux/microblaze/msgctl.c: New file.
* sysdeps/unix/sysv/linux/microblaze/nptl/bits/pthreadtypes.h: New file.
* sysdeps/unix/sysv/linux/microblaze/nptl/bits/semaphore.h: New file.
* sysdeps/unix/sysv/linux/microblaze/nptl/c++-types.data: New file.
* sysdeps/unix/sysv/linux/microblaze/nptl/createthread.c: New file.
* sysdeps/unix/sysv/linux/microblaze/nptl/fork.c: New file.
* sysdeps/unix/sysv/linux/microblaze/nptl/ld.abilist: New file.
* sysdeps/unix/sysv/linux/microblaze/nptl/libBrokenLocale.abilist: New file.
* sysdeps/unix/sysv/linux/microblaze/nptl/libanl.abilist: New file.
* sysdeps/unix/sysv/linux/microblaze/nptl/libc.abilist: New file.
* sysdeps/unix/sysv/linux/microblaze/nptl/libcrypt.abilist: New file.
* sysdeps/unix/sysv/linux/microblaze/nptl/libdl.abilist: New file.
* sysdeps/unix/sysv/linux/microblaze/nptl/libm.abilist: New file.
* sysdeps/unix/sysv/linux/microblaze/nptl/libnsl.abilist: New file.
* sysdeps/unix/sysv/linux/microblaze/nptl/libpthread.abilist: New file.
* sysdeps/unix/sysv/linux/microblaze/nptl/libresolv.abilist: New file.
* sysdeps/unix/sysv/linux/microblaze/nptl/librt.abilist: New file.
* sysdeps/unix/sysv/linux/microblaze/nptl/libthread_db.abilist: New file.
* sysdeps/unix/sysv/linux/microblaze/nptl/libutil.abilist: New file.
* sysdeps/unix/sysv/linux/microblaze/nptl/localplt.data: New file.
* sysdeps/unix/sysv/linux/microblaze/nptl/lowlevellock.h: New file.
* sysdeps/unix/sysv/linux/microblaze/nptl/pt-vfork.S: New file.
* sysdeps/unix/sysv/linux/microblaze/nptl/pthread_once.c: New file.
* sysdeps/unix/sysv/linux/microblaze/nptl/vfork.S: New file.
* sysdeps/unix/sysv/linux/microblaze/profil-counter.h: New file.
* sysdeps/unix/sysv/linux/microblaze/semctl.c: New file.
* sysdeps/unix/sysv/linux/microblaze/shmctl.c: New file.
* sysdeps/unix/sysv/linux/microblaze/setgroups.c: New file.
* sysdeps/unix/sysv/linux/microblaze/sigcontextinfo.h: New file.
* sysdeps/unix/sysv/linux/microblaze/socket.S: New file.
* sysdeps/unix/sysv/linux/microblaze/sys/procfs.h: New file.
* sysdeps/unix/sysv/linux/microblaze/sys/user.h: New file.
* sysdeps/unix/sysv/linux/microblaze/syscall.S: New file.
* sysdeps/unix/sysv/linux/microblaze/syscalls.list: New file.
* sysdeps/unix/sysv/linux/microblaze/sysdep.S: New file.
* sysdeps/unix/sysv/linux/microblaze/sysdep.h: New file.
* sysdeps/unix/sysv/linux/microblaze/xstat.c: New file.
File diff suppressed because it is too large Load Diff
-413
View File
@@ -1,413 +0,0 @@
This file describes changes to the soft-float powerpc port while it
was in the ports add-on directory. This port is no longer part of an
add-on and so future changes to it should be listed in the top-level
ChangeLog file, not here.
2013-10-04 Joseph Myers <joseph@codesourcery.com>
* sysdeps/powerpc/powerpc32/Makefile: Remove file.
* sysdeps/powerpc/nofpu: Move directory to
../sysdeps/powerpc/nofpu.
* sysdeps/powerpc/soft-fp: Move directory to
../sysdeps/powerpc/soft-fp.
* sysdeps/powerpc/powerpc32/405: Move directory to
../sysdeps/powerpc/powerpc32/405.
* sysdeps/powerpc/powerpc32/440: Move directory to
../sysdeps/powerpc/powerpc32/440.
* sysdeps/powerpc/powerpc32/464: Move directory to
../sysdeps/powerpc/powerpc32/464.
* sysdeps/powerpc/powerpc32/476: Move directory to
../sysdeps/powerpc/powerpc32/476.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu: Move directory
to ../sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/405: Move directory to
../sysdeps/unix/sysv/linux/powerpc/powerpc32/405.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/440: Move directory to
../sysdeps/unix/sysv/linux/powerpc/powerpc32/440.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/464: Move directory to
../sysdeps/unix/sysv/linux/powerpc/powerpc32/464.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/476: Move directory to
../sysdeps/unix/sysv/linux/powerpc/powerpc32/476.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/context-e500.h:
New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/getcontext.S:
Include <context-e500.h>.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/setcontext.S:
Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/swapcontext.S:
Likewise.
2013-08-30 Ondřej Bílka <neleai@seznam.cz>
* sysdeps/powerpc/powerpc32/405/memcpy.S: Fix typos.
2013-08-17 Alexandre Oliva <aoliva@redhat.com>
PR 15483
* sysdeps/powerpc/nofpu/sim-full.c: Add FIXME note about
the need for thread-specific variables preserved across signal
handlers.
* sysdeps/powerpc/nofpu/soft-supp.h: Likewise.
* sysdeps/powerpc/soft-fp/sfp-machine.h: Likewise.
2013-07-03 Joseph Myers <joseph@codesourcery.com>
* sysdeps/powerpc/nofpu/libm-test-ulps: Regenerated.
2013-06-15 Siddhesh Poyarekar <siddhesh@redhat.com>
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libpthread.abilist:
Update.
2013-06-11 Ryan S. Arnold <rsa@linux.vnet.ibm.com>
* sysdeps/powerpc/dl-procinfo.c: Remove as this is now redundant with
glibc/sysdeps/powerpc/dl-procinfo.c.
* sysdeps/powerpc/dl-procinfo.h: Remove as this is now redundant with
glibc/sysdeps/powerpc/dl-procinfo.h
2013-06-11 Ryan S. Arnold <rsa@linux.vnet.ibm.com>
* sysdeps/powerpc/dl-procinfo.h: Fix whitespace by correcting
spaces with tabs where appropriate.
2013-06-05 Joseph Myers <joseph@codesourcery.com>
* sysdeps/powerpc/nofpu/fenv_const.c: Remove trailing whitespace.
* sysdeps/powerpc/nofpu/fenv_libc.h: Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/getcontext.S:
Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/setcontext.S:
Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/swapcontext.S:
Likewise.
2013-05-22 Joseph Myers <joseph@codesourcery.com>
* sysdeps/powerpc/nofpu/libm-test-ulps: Update test names.
2013-05-19 Joseph Myers <joseph@codesourcery.com>
* sysdeps/powerpc/nofpu/libm-test-ulps: Update names of sincos
tests.
2013-05-16 Maciej W. Rozycki <macro@codesourcery.com>
[BZ #15442]
* sysdeps/powerpc/soft-fp/sfp-machine.h (_FP_QNANNEGATEDP): New
macro.
2013-02-28 Joseph Myers <joseph@codesourcery.com>
[BZ #13550]
* sysdeps/powerpc/powerpc32/405/memcmp.S: Don't include <bp-sym.h>
and <bp-asm.h>.
(memcmp): Don't use BP_SYM.
* sysdeps/powerpc/powerpc32/405/memcpy.S: Don't include <bp-sym.h>
and <bp-asm.h>.
(memcpy): Don't use BP_SYM.
* sysdeps/powerpc/powerpc32/405/memset.S: Don't include <bp-sym.h>
and <bp-asm.h>.
(memset): Don't use BP_SYM.
* sysdeps/powerpc/powerpc32/405/strcmp.S: Don't include <bp-sym.h>
and <bp-asm.h>.
(strcmp): Don't use BP_SYM.
* sysdeps/powerpc/powerpc32/405/strcpy.S: Don't include <bp-sym.h>
and <bp-asm.h>.
(strcpy): Don't use BP_SYM.
* sysdeps/powerpc/powerpc32/405/strlen.S: Don't include <bp-sym.h>
and <bp-asm.h>.
(strlen): Don't use BP_SYM.
* sysdeps/powerpc/powerpc32/405/strncmp.S: Don't include
<bp-sym.h> and <bp-asm.h>.
(strncmp): Don't use BP_SYM.
* sysdeps/powerpc/powerpc32/476/memset.S: Don't include <bp-sym.h>
and <bp-asm.h>.
(memset): Don't use BP_SYM.
2013-02-18 Siddhesh Poyarekar <siddhesh@redhat.com>
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libc.abilist:
Add __cxa_thread_atexit_impl.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libc.abilist:
Likewise.
2013-02-14 Joseph Myers <joseph@codesourcery.com>
[BZ #13550]
* sysdeps/powerpc/nofpu/fegetenv.c: Do not include <bp-sym.h>.
(fegetenv): Do not use BP_SYM in versioned symbols.
* sysdeps/powerpc/nofpu/fesetenv.c: Do not include <bp-sym.h>.
(fesetenv): Do not use BP_SYM in versioned symbols.
* sysdeps/powerpc/nofpu/feupdateenv.c: Do not include <bp-sym.h>.
(feupdateenv): Do not use BP_SYM in versioned symbols.
* sysdeps/powerpc/nofpu/fgetexcptflg.c: Do not include <bp-sym.h>.
(fegetexceptflag): Do not use BP_SYM in versioned symbols.
* sysdeps/powerpc/nofpu/fraiseexcpt.c: Do not include <bp-sym.h>.
(feraiseexcept): Do not use BP_SYM in versioned symbols.
* sysdeps/powerpc/nofpu/fsetexcptflg.c: Do not include <bp-sym.h>.
(fesetexceptflag): Do not use BP_SYM in versioned symbols.
2013-01-02 Joseph Myers <joseph@codesourcery.com>
* All files with FSF copyright notices: Update copyright dates
using scripts/update-copyrights.
2012-12-05 Joseph Myers <joseph@codesourcery.com>
* sysdeps/powerpc/nofpu/fgetexcptflg.c (__fegetexceptflag):
Specify return type as int.
2012-11-30 Joseph Myers <joseph@codesourcery.com>
* sysdeps/powerpc/nofpu/libm-test-ulps: Remove fma ulps.
* sysdeps/powerpc/nofpu/libm-test-ulps: Update.
2012-11-03 Joseph Myers <joseph@codesourcery.com>
* sysdeps/powerpc/nofpu/fclrexcpt.c (feclearexcept): Add
libm_hidden_ver.
2012-10-31 Andreas Schwab <schwab@linux-m68k.org>
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libc.abilist:
Fix sort order.
2012-10-30 Jason Gunthorpe <jgunthorpe@obsidianresearch.com>
Ryan S. Arnold <rsa@linux.vnet.ibm.com>
[BZ #14595]
* sysdeps/powerpc/powerpc32/476/memset.S: New file copied from
405/memset.S to preserve 128-byte cacheline size.
* sysdeps/powerpc/powerpc32/405/memset.S (memset): Fix cacheline size
to 32-bytes for 405, 440, and 464 processors.
2012-10-19 Roland McGrath <roland@hack.frob.com>
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libc.abilist
(GLIBC_2.17): Add clock_* symbols.
2012-09-26 Joseph Myers <joseph@codesourcery.com>
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libc.abilist:
Add __ppc_get_timebase_freq.
2012-09-12 Joseph Myers <joseph@codesourcery.com>
* sysdeps/powerpc/nofpu/get-rounding-mode.h: New file.
2012-07-25 Florian Weimer <fweimer@redhat.com>
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libc.abilist:
Add secure_getenv.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libc.abilist:
Likewise.
2012-07-20 Joseph Myers <joseph@codesourcery.com>
* data/localplt-powerpcsoft-linux-gnu.data: Move to ...
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/localplt.data:
... here.
2012-07-17 Joseph Myers <joseph@codesourcery.com>
* data/c++-types-powerpcsoft-linux-gnu.data: Move to ...
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/c++-types.data:
... here.
2012-07-03 Joseph Myers <joseph@codesourcery.com>
* sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_platforms): Add
"ppca2".
* sysdeps/powerpc/dl-procinfo.h (_DL_PLATFORMS_COUNT): Increase to
13.
(PPC_PLATFORM_PPCA2): Define.
(PPC_PLATFORM_PPC405): Increase value.
(PPC_PLATFORM_PPC440): Likewise.
(PPC_PLATFORM_PPC464): Likewise.
(PPC_PLATFORM_PPC476): Likewise.
(_dl_string_platform): Handle ppca2.
2012-06-13 Joseph Myers <joseph@codesourcery.com>
* data/localplt-powerpcsoft-linux-gnu.data: Allow abort and
soft-fp symbols to be absent.
2012-06-08 Joseph Myers <joseph@codesourcery.com>
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libc.abilist:
Update.
2012-05-31 Joseph Myers <joseph@codesourcery.com>
* sysdeps/powerpc/nofpu/libm-test-ulps: Regenerated.
2012-05-30 Joseph Myers <joseph@codesourcery.com>
* sysdeps/powerpc/soft-fp/sfp-machine.h (FP_EX_DENORM): Remove.
(FP_TRAPPING_EXCEPTIONS): Define.
2012-05-21 Joseph Myers <joseph@codesourcery.com>
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libm.abilist
(__fe_nomask_env): Remove.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libc.abilist:
Update.
2012-05-16 Joseph Myers <joseph@codesourcery.com>
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/ld.abilist:
New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libBrokenLocale.abilist:
Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libanl.abilist:
Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libc.abilist:
Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libcrypt.abilist:
Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libdl.abilist:
Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libm.abilist:
Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libnsl.abilist:
Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libpthread.abilist:
Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libresolv.abilist:
Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/librt.abilist:
Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libthread_db.abilist:
Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libutil.abilist:
Likewise.
2012-03-09 Paul Eggert <eggert@cs.ucla.edu>
[BZ #13673]
Replace FSF snail mail address with URLs, as per GNU coding standards.
2012-02-20 Joseph Myers <joseph@codesourcery.com>
* sysdeps/powerpc/nofpu/libm-test-ulps: Resort with
gen-libm-test.pl -n in C locale.
2010-09-03 Luis Machado <luisgpm@br.ibm.com>
* sysdeps/powerpc/dl-procinfo.c: New file.
* sysdeps/powerpc/dl-procinfo.h: New file.
* sysdeps/powerpc/powerpc32/405/memcmp.S: New file.
* sysdeps/powerpc/powerpc32/405/memcpy.S: New file.
* sysdeps/powerpc/powerpc32/405/memset.S: New file.
* sysdeps/powerpc/powerpc32/405/strcmp.S: New file.
* sysdeps/powerpc/powerpc32/405/strcpy.S: New file.
* sysdeps/powerpc/powerpc32/405/strlen.S: New file.
* sysdeps/powerpc/powerpc32/405/strncmp.S: New file.
* sysdeps/powerpc/powerpc32/440/Implies: New file.
* sysdeps/powerpc/powerpc32/464/Implies: New file.
* sysdeps/powerpc/powerpc32/476/Implies: New file.
* sysdeps/powerpc/powerpc32/Makefile: New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/405/Implies: New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/440/Implies: New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/464/Implies: New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/476/Implies: New file.
2010-10-11 Joseph Myers <joseph@codesourcery.com>
* sysdeps/powerpc/nofpu/feupdateenv.c (feupdateenv): Add
libm_hidden_ver.
* sysdeps/powerpc/nofpu/ftestexcept.c (fetestexcept): Add
libm_hidden_def.
2010-02-10 Joseph Myers <joseph@codesourcery.com>
* sysdeps/powerpc/nofpu/fegetenv.c: Add hidden alias.
2008-08-19 Joseph Myers <joseph@codesourcery.com>
* sysdeps/powerpc/nofpu/shlib-versions: New.
* c++-types-powerpcsoft-linux-gnu.data: New.
* localplt-powerpcsoft-linux-gnu.data: New.
* sysdeps/powerpc/nofpu/feholdexcpt.c (feholdexcept): Use
__fegetenv.
2007-08-29 Daniel Jacobowitz <dan@codesourcery.com>
* sysdeps/powerpc/nofpu/fsetexcptflg.c (__fesetexceptflag): Do not
clobber other exceptions.
* sysdeps/powerpc/nofpu/feupdateenv.c (__feupdateenv): Raise new
exceptions.
* sysdeps/powerpc/nofpu/fraiseexcpt.c (__feraiseexcept): Handle
multiple new exceptions if some are disabled.
* sysdeps/powerpc/nofpu/sim-full.c (__simulate_exceptions): Likewise.
2007-07-13 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/nofpu/Makefile: Remove fe_nomask from libm-support.
2007-05-23 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/nofpu/feholdexcpt.c (feholdexcept): Disable
exceptions. Use the updated env in fesetenv().
Add libm_hidden_def.
2007-01-23 Steven Munroe <sjmunroe@us.ibm.com>
[BZ #2749]
* sysdeps/powerpc/nofpu/fenv_libc.h: New file.
2007-01-08 Joseph Myers <joseph@codesourcery.com>
* sysdeps/powerpc/nofpu/fesetenv.c (__sim_exceptions,
__sim_disabled_exceptions, __sim_round_mode): Remove declarations.
2006-10-05 Steven Munroe <sjmunroe@us.ibm.com>
[BZ #2749]
* sysdeps/powerpc/nofpu/Makefile
[subdirs-soft-fp] (sysdep_routines): Remove gcc-quad-routines.
[subdirs-math] (CPPFLAGS): Add -I../soft-fp.
[subdirs-math] (CFLAGS-e_powl.c): Add -fno-builtin-fabsl.
[subdirs-math] (CFLAGS-s_ccoshl.c): Likewise.
[subdirs-math] (CFLAGS-s_csinhl.c): Likewise.
[subdirs-math] (CFLAGS-s_clogl.c): Likewise.
[subdirs-math] (CFLAGS-s_clog10l.c): Likewise.
[subdirs-math] (CFLAGS-s_csinl.c): Likewise.
[subdirs-math] (CFLAGS-s_csqrtl.c): Likewise.
* sysdeps/powerpc/nofpu/Versions (GLIBC_2.3.2): Remove __fixtfdi,
__fixtfsi, and __trunctfsf2.
(GLIBC_2.4): Remove __floatunditf, __floatunsitf, and __unordtf2.
Add __nedf2, __nesf2, __gtdf2, __gtsf2, __ltdf2, __ltsf2.
* sysdeps/powerpc/nofpu/libm-test-ulps: Update for soft-fp.
* sysdeps/powerpc/soft-fp/sfp-machine.h: New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/Implies: New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/getcontext.S:
New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/setcontext.S:
New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/swapcontext.S:
New file.
2006-01-27 Roland McGrath <roland@redhat.com>
* sysdeps/powerpc/nofpu/Subdirs: New file.
* sysdeps/powerpc/nofpu/Makefile [$(subdir) = soft-fp]
(sysdep_routines): Add $(gcc-quad-routines) here.
2006-01-06 Roland McGrath <roland@redhat.com>
* sysdeps/powerpc/nofpu/Versions (libc: GLIBC_2.4): New set.
Add __floatundidf, __floatundisf, __floatunditf, __floatunsidf,
__floatunsisf, __floatunsitf, __unorddf2, __unordsf2, __unordtf2.
2005-10-11 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/nofpu/fesetround.c: Add libm_hidden_def.
-741
View File
@@ -1,741 +0,0 @@
This file describes changes to the TILE-Gx and TILEPro ports while they
were in the ports add-on directory. These ports are no longer part of
an add-on and so future changes to them should be listed in the top-level
ChangeLog file, not here.
2014-02-10 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/tile: Move directory to ../sysdeps/tile.
* sysdeps/unix/sysv/linux/tile: Move directory to
../sysdeps/unix/sysv/linux/tile.
2014-01-03 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/tile/libm-test-ulps: Regenerated.
2014-01-06 Mike Frysinger <vapier@gentoo.org>
* sysdeps/unix/sysv/linux/tile/sys/ptrace.h (ptrace_peeksiginfo_args):
Rename to ...
(__ptrace_peeksiginfo_args): ... this.
2013-10-30 Mike Frysinger <vapier@gentoo.org>
* sysdeps/unix/sysv/linux/tile/configure.in: Moved to ...
* sysdeps/unix/sysv/linux/tile/configure.ac: ... here.
* sysdeps/unix/sysv/linux/tile/tilegx/configure.in: Moved to ...
* sysdeps/unix/sysv/linux/tile/tilegx/configure.ac: ... here.
* sysdeps/unix/sysv/linux/tile/configure: Regenerated.
* sysdeps/unix/sysv/linux/tile/tilegx/configure: Likewise.
2013-09-22 Carlos O'Donell <carlos@redhat.com>
[BZ #15754]
* sysdeps/tile/stackguard-macros.h: Define POINTER_CHK_GUARD.
2013-09-20 Andreas Schwab <schwab@linux-m68k.org>
* sysdeps/tile/ffs.c (__ffs): Define as hidden.
2013-08-21 Ondřej Bílka <neleai@seznam.cz>
* sysdeps/tile/jmpbuf-offsets.h: Fix typos.
2013-07-22 Chris Metcalf <cmetcalf@tilera.com>
[BZ #15759]
* sysdeps/tile/dl-runtime.c (sim_dlclose): New function.
(_dl_unmap): Call sim_dlclose().
2013-07-19 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/unix/sysv/linux/tile/sys/ptrace.h
(__ptrace_peeksiginfo_args): Add missing semicolon.
2013-07-03 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/unix/sysv/linux/tile/dl-static.c: New file to support
variable page size for tile.
* sysdeps/unix/sysv/linux/tile/ldsodefs.h: Likewise.
* sysdeps/unix/sysv/linux/tile/Makefile: Build dl-static in elf.
* sysdeps/unix/sysv/linux/tile/Versions: Add _dl_var_init.
* sysdeps/tile/libm-test-ulps: Update with new tests.
* sysdeps/tile/s_fma.c: Use soft-fp version instead of ieee754.
* sysdeps/tile/s_fmaf.c: Likewise.
* sysdeps/tile/sfp-machine.h: New file.
2013-07-04 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/tile/sys/ptrace.h (PTRACE_PEEKSIGINFO):
Add new value from Linux 3.10.
(ptrace_peeksiginfo_args): Add.
(__ptrace_peeksiginfo_flags): Add.
(PTRACE_SETREGSET, PTRACE_SEIZE, PTRACE_INTERRUPT, PTRACE_LISTEN):
Add.
2013-06-28 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/tile/fegetenv.c: Delete now-redundant file.
* sysdeps/tile/fegetround.c: Likewise.
* sysdeps/tile/feholdexcpt.c: Likewise.
* sysdeps/tile/fesetenv.c: Likewise.
* sysdeps/tile/fesetround.c: Likewise.
* sysdeps/tile/feupdateenv.c: Likewise.
2013-06-15 Siddhesh Poyarekar <siddhesh@redhat.com>
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libpthread.abilist:
Update.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libpthread.abilist:
Likewise.
* sysdeps/unix/sysv/linux/tile/tilepro/nptl/libpthread.abilist:
Likewise.
2013-06-12 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/tile/bits/endian.h (__BYTE_ORDER): Default to little.
2013-06-05 Joseph Myers <joseph@codesourcery.com>
* sysdeps/tile/tilepro/memcpy.S: Remove trailing whitespace.
* sysdeps/unix/sysv/linux/tile/nptl/clone.S: Likewise.
* sysdeps/unix/sysv/linux/tile/setcontext.S: Likewise.
* sysdeps/unix/sysv/linux/tile/swapcontext.S: Likewise.
2013-05-29 Siddhesh Poyarekar <siddhesh@redhat.com>
[BZ #15465]
* sysdeps/tile/dl-machine.h (elf_machine_rela): Use
RTLD_PROGNAME.
2013-05-23 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/tile/tilegx/Makefile ($(cflags-mcmodel-large)):
Test for assembler and linker support for "-mcmodel=large -fpic"
in addition to compiler support; provide -DNO_PLT_PCREL if not.
* sysdeps/tile/start.S [NO_PLT_PCREL]: Guard for no PC-relative
PLT operators in assembly.
* sysdeps/tile/crti.S [NO_PLT_PCREL]: Likewise.
2013-05-22 Edjunior Barbosa Machado <emachado@linux.vnet.ibm.com>
* sysdeps/unix/sysv/linux/tile/bits/siginfo.h (siginfo_t): Fix comment
formatting. Add si_addr_lsb to _sifields.sigfault.
(si_addr_lsb): Define new macro.
(BUS_MCEERR_AR, BUS_MCEERR_AO): Define new values.
2013-05-22 Joseph Myers <joseph@codesourcery.com>
* sysdeps/tile/libm-test-ulps: Update test names.
2013-05-19 Joseph Myers <joseph@codesourcery.com>
* sysdeps/tile/libm-test-ulps: Update names of sincos tests.
2013-05-16 Ryan S. Arnold <rsa@linux.vnet.ibm.com>
* sysdeps/tile/tilegx/memusage.h: Add missing #include <stdint.h> due
to uint64_t or uint32_t usage.
* sysdeps/tile/tilegx/string-endian.h: Likewise.
2013-03-11 Andreas Schwab <schwab@suse.de>
[BZ #15234]
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libpthread.abilist
(GLIBC_2.12): Remove pthread_atfork.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libpthread.abilist
(GLIBC_2.12): Likewise.
* sysdeps/unix/sysv/linux/tile/tilepro/nptl/libpthread.abilist
(GLIBC_2.12): Likewise.
2013-03-05 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/tile/bits/mman.h: Remove all defines
provided by bits/mman-linux.h and include <bits/mman-linux.h>.
2013-02-28 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/unix/sysv/linux/tile/nptl/lowlevellock.h
(FUTEX_WAIT_REQUEUE_PI): Define.
(FUTEX_CMP_REQUEUE_PI): Likewise.
(lll_futex_wait_requeue_pi): Likewise.
(lll_futex_timed_wait_requeue_pi): Likewise.
(lll_futex_cmp_requeue_pi): Likewise.
2013-02-18 Siddhesh Poyarekar <siddhesh@redhat.com>
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libc.abilist:
Add __cxa_thread_atexit_impl.
* sysdeps/unix/sysv/linux/tile/tilepro/nptl/libc.abilist:
Likewise.
2013-01-10 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/unix/sysv/linux/tile/tilegx/ldd-rewrite.sed: New file.
* sysdeps/unix/sysv/linux/tile/tilegx/configure.in: New file.
* sysdeps/unix/sysv/linux/tile/tilegx/configure: New file.
2013-01-02 Joseph Myers <joseph@codesourcery.com>
* All files with FSF copyright notices: Update copyright dates
using scripts/update-copyrights.
2012-12-28 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/unix/sysv/linux/tile/nptl/lowlevellock.h
(lll_futex_timed_wait_bitset): New macro.
2012-12-14 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/unix/sysv/linux/tile/nptl/clone.S: Fix DWARF info.
2012-11-29 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/tile/s_fmaf.c: Remove redundant #defines now provided
in sysdeps/tile/math_private.h.
2012-11-20 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/tile/libm-test-ulps: Account for new tests.
* sysdeps/tile/bits/byteswap.h: Include <bits/types.h>.
(__bswap_64): Use __uint64_t instead of unsigned long long int.
* sysdeps/tile/s_fma.c: Remove redundant #defines now provided
in sysdeps/tile/math_private.h.
2012-11-06 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/tile/tilegx/memmove.c: New file.
* sysdeps/tile/nptl/pthread_spin_unlock.c: New file.
2012-11-05 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/tile/math_private.h: Provide additional no-op defines
for exception and rounding macros.
* sysdeps/tile/tilegx/Makefile: New file.
* sysdeps/tile/crti.S: Support large memory model.
* sysdeps/tile/start.S: Likewise.
2012-11-02 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/tile/dl-runtime.c (_dl_after_load): Handle simulator
notification better for dlopen() of relative paths.
* sysdeps/tile/tilegx/memcpy.c (__memcpy): Optimize.
* sysdeps/tile/memcopy.h: New file.
* sysdeps/tile/wordcopy.c: New file.
2012-11-03 Joseph Myers <joseph@codesourcery.com>
[BZ #3439]
* sysdeps/tile/bits/fenv.h (FE_TONEAREST): Define macro to integer
constant usable in #if and use that to give value to enum
constant.
2012-11-03 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/tile/libm-test-ulps: Account for new tests.
2012-10-30 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/tile/dl-machine.h: Use new DL_AFTER_LOAD macro
and rename _dl_arch_map_object to _dl_after_load.
* sysdeps/tile/dl-runtime.c: Rename _dl_arch_map_object
to _dl_after_load and remove spurious DL_UNMAP definition.
* sysdeps/unix/sysv/linux/tile/init-first.c: Use better #include.
* sysdeps/unix/sysv/linux/tile/gettimeofday.c: Use gettimeofday
aliases that match existing tile ABI.
* sysdeps/tile/libm-test-ulps: Account for new tests.
2012-10-26 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/unix/sysv/linux/tile/Makefile (sysdep_routines):
Include dl-vdso.
* sysdeps/unix/sysv/linux/tile/bits/libc-vdso.h: New file.
* sysdeps/unix/sysv/linux/tile/gettimeofday.c: New file.
* sysdeps/unix/sysv/linux/tile/init-first.c: New file.
2012-10-19 Roland McGrath <roland@hack.frob.com>
* sysdeps/unix/sysv/linux/tile/tilepro/nptl/libc.abilist:
(GLIBC_2.17): Add clock_* symbols.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libc.abilist:
Likewise.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libc.abilist:
Likewise.
2012-10-11 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/unix/sysv/linux/tile/tilegx/sched_getcpu.c: New file.
2012-10-02 Siddhesh Poyarekar <siddhesh@redhat.com>
* sysdeps/unix/sysv/linux/tile/nptl/lowlevellock.h: Fix clone
flag name in comment to CLONE_CHILD_CLEARTID.
2012-09-17 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/tile/libm-test-ulps: Account for new tests.
2012-09-06 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/unix/sysv/linux/tile/sys/procfs.h: Fix type of prfpregset_t.
[BZ #14237]
* sysdeps/tile/__tls_get_addr.S: Fix TLS module initialization bug.
2012-08-27 Joseph Myers <joseph@codesourcery.com>
* sysdeps/unix/sysv/linux/tile/kernel-features.h
(__ASSUME_STAT64_SYSCALL): Remove.
2012-08-21 Joseph Myers <joseph@codesourcery.com>
* sysdeps/unix/sysv/linux/tile/kernel-features.h
(__ASSUME_FADVISE64_64_SYSCALL): Remove.
2012-08-20 Joseph Myers <joseph@codesourcery.com>
* sysdeps/unix/sysv/linux/tile/kernel-features.h
(__ASSUME_MMAP2_SYSCALL): Remove.
2012-08-14 Joseph Myers <joseph@codesourcery.com>
* sysdeps/unix/sysv/linux/tile/kernel-features.h
(__ASSUME_CLONE_THREAD_FLAGS): Remove.
2012-08-08 Joseph Myers <joseph@codesourcery.com>
* sysdeps/unix/sysv/linux/tile/kernel-features.h
(__ASSUME_TGKILL): Remove.
2012-08-02 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/tile/sysdep.h: Do not define ASM_TYPE_DIRECTIVE.
2012-08-01 Joseph Myers <joseph@codesourcery.com>
* sysdeps/unix/sysv/linux/tile/kernel-features.h
(__ASSUME_FCNTL64): Remove.
2012-07-26 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/tile/sys/ptrace.h (__ptrace_eventcodes):
Add new value PTRACE_EVENT_SECCOMP from Linux 3.5.
(__ptrace_setoptions): Add new value PTRACE_O_TRACESECCOMP, adjust
PTRACE_O_MASK.
* sysdeps/unix/sysv/linux/tile/bits/siginfo.h (siginfo_t): Add
_sigsys.
(si_call_addr, si_syscall, si_arch): Define new macro.
2012-07-25 Florian Weimer <fweimer@redhat.com>
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libc.abilist:
Add secure_getenv.
* sysdeps/unix/sysv/linux/tile/tilepro/nptl/libc.abilist:
Likewise.
2012-07-17 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/unix/sysv/linux/tile/setcontext.S: Ensure exit status is
zero if uc_link is NULL.
* sysdeps/tile/libm-test-ulps: Account for new tests.
* data/c++-types-tilepro-linux-gnu.data: Move to ...
* sysdeps/unix/sysv/linux/tile/tilepro/nptl/c++-types.data: ... here.
* data/c++-types-tilegx-linux-gnu.data: Move to ...
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/c++-types.data:
... here.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/c++-types.data:
New file.
2012-07-10 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/unix/sysv/linux/tile/makecontext.c (__makecontext):
Correct typo in comment.
* sysdeps/tile/sysdep.h (ENTRY): Use .globl, not
ASM_GLOBAL_DIRECTIVE.
2012-05-30 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/unix/sysv/linux/tile/tilegx/Makefile: Remove test
that $(subdir) is "misc" when setting abi- variables.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/Makefile: New file.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/Makefile: New file.
* sysdeps/tile/libm-test-ulps: Account for new tests.
* sysdeps/unix/sysv/linux/tile/tilegx/Makefile: New file.
* sysdeps/unix/sysv/linux/tile/nptl/pthread_once.c: Replace
_internal alias by hidden_def.
* sysdeps/unix/sysv/linux/tile/kernel-features.h
(__ASSUME_NEW_GETRLIMIT_SYSCALL, __ASSUME_TRUNCATE64_SYSCALL): Remove.
2012-05-23 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/unix/sysv/linux/tile/bits/mman.h (MADV_DONTDUMP): Define.
(MADV_DODUMP): Likewise.
2012-05-22 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/tile/bits/libm-test-ulps: Update.
* sysdeps/tile/bits/wordsize.h (__WORDSIZE_COMPAT32): Rename to
__WORDSIZE_TIME64_COMPAT32.
* sysdeps/unix/sysv/linux/tile/tilepro/nptl/libc.abilist: Update.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libc.abilist:
Update.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libc.abilist:
Update.
2012-05-17 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/tile/fegetenv.c: Version fegetenv() like fesetenv().
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libm.abilist:
Add fegetenv.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libm.abilist:
Likewise.
* sysdeps/unix/sysv/linux/tile/tilepro/nptl/libm.abilist: Likewise.
* sysdeps/tile/stackguard-macros.h: Support tilegx32.
* data/c++-types-tilepro-linux-gnu.data: Renamed from
data/c++-types-tile-linux-gnu.data.
* data/c++-types-tilegx-linux-gnu.data: New file.
* sysdeps/tile/libm-test-ulps: Improved fma() and exp10().
* sysdeps/tile/s_fma.c: Use ieee754/dbl-64 without rounding or
exception support; it's still much better than the generic version.
2012-05-16 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/unix/sysv/linux/tile/ucontext_i: Fix tilegx32 offset bug.
* sysdeps/unix/sysv/linux/tile/getcontext.S: Fix tilegx32 bug
where we accessed "uc_flags" as an 8-byte field.
* sysdeps/unix/sysv/linux/tile/setcontext.S: Likewise,
and also fix frame code not to access stack below "sp".
* sysdeps/unix/sysv/linux/tile/swapcontext.S: Fix frame code not
to access stack below "sp", and add frame unwind to error path.
2012-05-15 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/tile/sotruss-lib.c: New file.
* sysdeps/tile/math_private.h (feraiseexcept): Use statement
expression syntax to avoid compiler warning.
* sysdeps/tile/libm-test-ulps: New file.
* sysdeps/tile/bits/fenv.h (__FE_UNDEFINED): New symbol.
* sysdeps/tile/ldsodefs.h (ARCH_PLTEXIT_MEMBERS): Add proper
const qualifier to "inregs" argument.
* sysdeps/tile/elf/stackguard-macros.h: Delete unused file.
2012-05-14 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/ld.abilist:
New file.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libBrokenLocale.abilist:
Likewise.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libanl.abilist:
Likewise.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libc.abilist:
Likewise.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libcrypt.abilist:
Likewise.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libdl.abilist:
Likewise.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libm.abilist:
Likewise.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libnsl.abilist:
Likewise.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libpthread.abilist:
Likewise.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libresolv.abilist:
Likewise.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/librt.abilist:
Likewise.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libthread_db.abilist:
Likewise.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libutil.abilist:
Likewise.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/ld.abilist:
Likewise.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libBrokenLocale.abilist:
Likewise.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libanl.abilist:
Likewise.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libc.abilist:
Likewise.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libcrypt.abilist:
Likewise.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libdl.abilist:
Likewise.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libm.abilist:
Likewise.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libnsl.abilist:
Likewise.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libpthread.abilist:
Likewise.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libresolv.abilist:
Likewise.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/librt.abilist:
Likewise.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libthread_db.abilist:
Likewise.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libutil.abilist:
Likewise.
* sysdeps/unix/sysv/linux/tile/tilepro/nptl/ld.abilist: Likewise.
* sysdeps/unix/sysv/linux/tile/tilepro/nptl/libBrokenLocale.abilist:
Likewise.
* sysdeps/unix/sysv/linux/tile/tilepro/nptl/libanl.abilist: Likewise.
* sysdeps/unix/sysv/linux/tile/tilepro/nptl/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/tile/tilepro/nptl/libcrypt.abilist: Likewise.
* sysdeps/unix/sysv/linux/tile/tilepro/nptl/libdl.abilist: Likewise.
* sysdeps/unix/sysv/linux/tile/tilepro/nptl/libm.abilist: Likewise.
* sysdeps/unix/sysv/linux/tile/tilepro/nptl/libnsl.abilist: Likewise.
* sysdeps/unix/sysv/linux/tile/tilepro/nptl/libpthread.abilist:
Likewise.
* sysdeps/unix/sysv/linux/tile/tilepro/nptl/libresolv.abilist:
Likewise.
* sysdeps/unix/sysv/linux/tile/tilepro/nptl/librt.abilist: Likewise.
* sysdeps/unix/sysv/linux/tile/tilepro/nptl/libthread_db.abilist:
Likewise.
* sysdeps/unix/sysv/linux/tile/tilepro/nptl/libutil.abilist: Likewise.
* sysdeps/tile/dl-start.S: Align stack for tilegx32.
2012-05-12 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/unix/sysv/linux/tile/sys/dataplane.h: Add <features.h>.
* sysdeps/unix/sysv/linux/tile/nptl/clone.S: Add missing CFI.
* sysdeps/tile/tls-macros.h: Fix buggy TLS_GD, etc., macros.
* sysdeps/tile/tilegx/memchr.c: Use new copy_byte() function
to efficiently generate a large constant for masking.
* sysdeps/tile/tilegx/memset.c: Likewise.
* sysdeps/tile/tilegx/rawmemchr.c: Likewise.
* sysdeps/tile/tilegx/strchr.c: Likewise.
* sysdeps/tile/tilegx/strchrnul.c: Likewise.
* sysdeps/tile/tilegx/strrchr.c: Likewise.
* sysdeps/tile/tilegx/string-endian.h (copy_byte): New function.
* sysdeps/tile/tilegx/memcpy.c: Allow memcpy(p, p, n)
without corrupting memory at "p".
* sysdeps/tile/__tls_get_addr.S: Use __WORDSIZE, not _LP64.
* sysdeps/tile/stackguard-macros.h: New file.
* sysdeps/tile/elf/stackguard-macros.h: New stub include file.
* sysdeps/tile/Makefile (ELF_MACHINE_PLTREL_OVERLAP):
Remove variable no longer used by core.
* sysdeps/unix/sysv/linux/tile/bits/siginfo.h: Don't name
siginfo_t struct. Add forward declaration of pthread_attr_t and
use it in sigevent.
* sysdeps/unix/sysv/linux/tile/nptl/bits/pthreadtypes.h: Name
pthread_attr_t union.
* sysdeps/tile/crti.S: New file, based on compiler output
for sysdeps/generic/initfini.c.
* sysdeps/tile/crtn.S: Likewise.
* sysdeps/tile/Makefile (CFLAGS-initfini.s): Remove variable.
* sysdeps/unix/sysv/linux/tile/nptl/Makefile
(CFLAGS-pt-initfini.s): Likewise.
* sysdeps/tile/elf/start.S: Moved to ...
* sysdeps/tile/start.S: ...here.
2012-04-15 Mike Frysinger <vapier@gentoo.org>
* sysdeps/unix/sysv/linux/tile/tilegx/register-dump.h: Include
<_itoa.h> instead of <stdio-common/_itoa.h>.
* sysdeps/unix/sysv/linux/tile/tilepro/register-dump.h: Likewise.
2012-03-09 Richard Henderson <rth@twiddle.net>
* sysdeps/tile/math_private.h: Use include_next to
chain math_private.h.
2012-03-09 Paul Eggert <eggert@cs.ucla.edu>
[BZ #13673]
Replace FSF snail mail address with URLs, as per GNU coding standards.
2012-01-31 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/tile/bits/fenv.h: Use const instead of __const.
* sysdeps/unix/sysv/linux/tile/sys/cachectl.h: Likewise.
2012-01-31 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/tile/sysdep.h: Use <feedback.h> not <feedback-asm.h>
to reflect change from gcc community giveback.
2012-01-31 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/tile/math_private.h: Ignore feraiseexcept() internally.
2012-01-30 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/tile/sysdep.h: Don't check HAVE_ELF or NO_UNDERSCORES.
2012-01-07 Joseph Myers <joseph@codesourcery.com>
* sysdeps/tile/backtrace.c: Use x86_64 version of backtrace.c.
2011-12-03 Chris Metcalf <cmetcalf@tilera.com>
* data/c++-types-tile-linux-gnu.data: New file.
* sysdeps/tile/Implies: New file.
* sysdeps/tile/Makefile: New file.
* sysdeps/tile/Versions: New file.
* sysdeps/tile/__longjmp.S: New file.
* sysdeps/tile/__tls_get_addr.S: New file.
* sysdeps/tile/_mcount.S: New file.
* sysdeps/tile/abort-instr.h: New file.
* sysdeps/tile/backtrace.c: New file.
* sysdeps/tile/bits/atomic.h: New file.
* sysdeps/tile/bits/byteswap.h: New file.
* sysdeps/tile/bits/endian.h: New file.
* sysdeps/tile/bits/fenv.h: New file.
* sysdeps/tile/bits/link.h: New file.
* sysdeps/tile/bits/mathdef.h: New file.
* sysdeps/tile/bits/mathinline.h: New file.
* sysdeps/tile/bits/setjmp.h: New file.
* sysdeps/tile/bsd-_setjmp.S: New file.
* sysdeps/tile/bsd-setjmp.S: New file.
* sysdeps/tile/bzero.S: New file.
* sysdeps/tile/dl-lookupcfg.h: New file.
* sysdeps/tile/dl-machine.h: New file.
* sysdeps/tile/dl-runtime.c: New file.
* sysdeps/tile/dl-start.S: New file.
* sysdeps/tile/dl-tls.c: New file.
* sysdeps/tile/dl-tls.h: New file.
* sysdeps/tile/dl-trampoline.S: New file.
* sysdeps/tile/elf/start.S: New file.
* sysdeps/tile/fegetenv.c: New file.
* sysdeps/tile/fegetround.c: New file.
* sysdeps/tile/feholdexcpt.c: New file.
* sysdeps/tile/fesetenv.c: New file.
* sysdeps/tile/fesetround.c: New file.
* sysdeps/tile/feupdateenv.c: New file.
* sysdeps/tile/ffs.c: New file.
* sysdeps/tile/ffsll.c: New file.
* sysdeps/tile/gccframe.h: New file.
* sysdeps/tile/jmpbuf-offsets.h: New file.
* sysdeps/tile/jmpbuf-unwind.h: New file.
* sysdeps/tile/ldsodefs.h: New file.
* sysdeps/tile/machine-gmon.h: New file.
* sysdeps/tile/nptl/Makefile: New file.
* sysdeps/tile/nptl/pthread_spin_lock.c: New file.
* sysdeps/tile/nptl/pthread_spin_trylock.c: New file.
* sysdeps/tile/nptl/pthreaddef.h: New file.
* sysdeps/tile/nptl/tcb-offsets.sym: New file.
* sysdeps/tile/nptl/tls.h: New file.
* sysdeps/tile/preconfigure: New file.
* sysdeps/tile/s_fma.c: New file.
* sysdeps/tile/s_fmaf.c: New file.
* sysdeps/tile/setjmp.S: New file.
* sysdeps/tile/shlib-versions: New file.
* sysdeps/tile/stackinfo.h: New file.
* sysdeps/tile/sysdep.h: New file.
* sysdeps/tile/tilegx/bits/atomic.h: New file.
* sysdeps/tile/tilegx/bits/wordsize.h: New file.
* sysdeps/tile/tilegx/memchr.c: New file.
* sysdeps/tile/tilegx/memcpy.c: New file.
* sysdeps/tile/tilegx/memset.c: New file.
* sysdeps/tile/tilegx/memusage.h: New file.
* sysdeps/tile/tilegx/rawmemchr.c: New file.
* sysdeps/tile/tilegx/strchr.c: New file.
* sysdeps/tile/tilegx/strchrnul.c: New file.
* sysdeps/tile/tilegx/string-endian.h: New file.
* sysdeps/tile/tilegx/strlen.c: New file.
* sysdeps/tile/tilegx/strrchr.c: New file.
* sysdeps/tile/tilegx/tilegx32/Implies: New file.
* sysdeps/tile/tilegx/tilegx64/Implies: New file.
* sysdeps/tile/tilepro/Implies: New file.
* sysdeps/tile/tilepro/bits/atomic.h: New file.
* sysdeps/tile/tilepro/bits/wordsize.h: New file.
* sysdeps/tile/tilepro/memchr.c: New file.
* sysdeps/tile/tilepro/memcpy.S: New file.
* sysdeps/tile/tilepro/memset.c: New file.
* sysdeps/tile/tilepro/memusage.h: New file.
* sysdeps/tile/tilepro/rawmemchr.c: New file.
* sysdeps/tile/tilepro/strchr.c: New file.
* sysdeps/tile/tilepro/strchrnul.c: New file.
* sysdeps/tile/tilepro/strlen.c: New file.
* sysdeps/tile/tilepro/strrchr.c: New file.
* sysdeps/tile/tls-macros.h: New file.
* sysdeps/tile/tst-audit.h: New file.
* sysdeps/unix/sysv/linux/tile/Makefile: New file.
* sysdeps/unix/sysv/linux/tile/Versions: New file.
* sysdeps/unix/sysv/linux/tile/bits/environments.h: New file.
* sysdeps/unix/sysv/linux/tile/bits/local_lim.h: New file.
* sysdeps/unix/sysv/linux/tile/bits/mman.h: New file.
* sysdeps/unix/sysv/linux/tile/bits/mman.h~: New file.
* sysdeps/unix/sysv/linux/tile/bits/sigaction.h: New file.
* sysdeps/unix/sysv/linux/tile/bits/siginfo.h: New file.
* sysdeps/unix/sysv/linux/tile/cacheflush.c: New file.
* sysdeps/unix/sysv/linux/tile/configure: New file.
* sysdeps/unix/sysv/linux/tile/configure.in: New file.
* sysdeps/unix/sysv/linux/tile/getcontext.S: New file.
* sysdeps/unix/sysv/linux/tile/kernel-features.h: New file.
* sysdeps/unix/sysv/linux/tile/makecontext.c: New file.
* sysdeps/unix/sysv/linux/tile/nptl/Makefile: New file.
* sysdeps/unix/sysv/linux/tile/nptl/bits/pthreadtypes.h: New file.
* sysdeps/unix/sysv/linux/tile/nptl/bits/semaphore.h: New file.
* sysdeps/unix/sysv/linux/tile/nptl/clone.S: New file.
* sysdeps/unix/sysv/linux/tile/nptl/createthread.c: New file.
* sysdeps/unix/sysv/linux/tile/nptl/fork.c: New file.
* sysdeps/unix/sysv/linux/tile/nptl/lowlevellock.h: New file.
* sysdeps/unix/sysv/linux/tile/nptl/pt-vfork.S: New file.
* sysdeps/unix/sysv/linux/tile/nptl/pthread_once.c: New file.
* sysdeps/unix/sysv/linux/tile/nptl/sysdep-cancel.h: New file.
* sysdeps/unix/sysv/linux/tile/nptl/vfork.S: New file.
* sysdeps/unix/sysv/linux/tile/nptl/waitpid.S: New file.
* sysdeps/unix/sysv/linux/tile/profil-counter.h: New file.
* sysdeps/unix/sysv/linux/tile/set_dataplane.c: New file.
* sysdeps/unix/sysv/linux/tile/setcontext.S: New file.
* sysdeps/unix/sysv/linux/tile/sigcontextinfo.h: New file.
* sysdeps/unix/sysv/linux/tile/swapcontext.S: New file.
* sysdeps/unix/sysv/linux/tile/sys/cachectl.h: New file.
* sysdeps/unix/sysv/linux/tile/sys/dataplane.h: New file.
* sysdeps/unix/sysv/linux/tile/sys/procfs.h: New file.
* sysdeps/unix/sysv/linux/tile/sys/ptrace.h: New file.
* sysdeps/unix/sysv/linux/tile/sys/reg.h: New file.
* sysdeps/unix/sysv/linux/tile/sys/ucontext.h: New file.
* sysdeps/unix/sysv/linux/tile/sys/user.h: New file.
* sysdeps/unix/sysv/linux/tile/syscall.S: New file.
* sysdeps/unix/sysv/linux/tile/sysdep.c: New file.
* sysdeps/unix/sysv/linux/tile/sysdep.h: New file.
* sysdeps/unix/sysv/linux/tile/tilegx/ioctl.S: New file.
* sysdeps/unix/sysv/linux/tile/tilegx/ldconfig.h: New file.
* sysdeps/unix/sysv/linux/tile/tilegx/register-dump.h: New file.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/Implies: New file.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/Implies: New file.
* sysdeps/unix/sysv/linux/tile/tilepro/Implies: New file.
* sysdeps/unix/sysv/linux/tile/tilepro/ldconfig.h: New file.
* sysdeps/unix/sysv/linux/tile/tilepro/register-dump.h: New file.
* sysdeps/unix/sysv/linux/tile/ucontext_i.h: New file.
+1732
View File
File diff suppressed because it is too large Load Diff
+1498
View File
File diff suppressed because it is too large Load Diff
+371 -565
View File
File diff suppressed because it is too large Load Diff
+1508
View File
File diff suppressed because it is too large Load Diff
-400
View File
@@ -1,400 +0,0 @@
This file contains the copying permission notices for various files in the
GNU C Library distribution that have copyright owners other than the Free
Software Foundation. These notices all require that a copy of the notice
be included in the accompanying documentation and be distributed with
binary distributions of the code, so be sure to include this file along
with any binary distributions derived from the GNU C Library.
All code incorporated from 4.4 BSD is distributed under the following
license:
Copyright (C) 1991 Regents of the University of California.
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3. [This condition was removed.]
4. Neither the name of the University nor the names of its contributors
may be used to endorse or promote products derived from this software
without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.
The DNS resolver code, taken from BIND 4.9.5, is copyrighted by UC
Berkeley, by Digital Equipment Corporation and by Internet Software
Consortium. The DEC portions are under the following license:
Portions Copyright (C) 1993 by Digital Equipment Corporation.
Permission to use, copy, modify, and distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies, and
that the name of Digital Equipment Corporation not be used in
advertising or publicity pertaining to distribution of the document or
software without specific, written prior permission.
THE SOFTWARE IS PROVIDED ``AS IS'' AND DIGITAL EQUIPMENT CORP.
DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
DIGITAL EQUIPMENT CORPORATION BE LIABLE FOR ANY SPECIAL, DIRECT,
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
The ISC portions are under the following license:
Portions Copyright (c) 1996-1999 by Internet Software Consortium.
Permission to use, copy, modify, and distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM DISCLAIMS
ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL INTERNET SOFTWARE
CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
SOFTWARE.
The Sun RPC support (from rpcsrc-4.0) is covered by the following
license:
Copyright (c) 2010, Oracle America, Inc.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following
disclaimer in the documentation and/or other materials
provided with the distribution.
* Neither the name of the "Oracle America, Inc." nor the names of its
contributors may be used to endorse or promote products derived
from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
The following CMU license covers some of the support code for Mach,
derived from Mach 3.0:
Mach Operating System
Copyright (C) 1991,1990,1989 Carnegie Mellon University
All Rights Reserved.
Permission to use, copy, modify and distribute this software and its
documentation is hereby granted, provided that both the copyright
notice and this permission notice appear in all copies of the
software, derivative works or modified versions, and any portions
thereof, and that both notices appear in supporting documentation.
CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS ``AS IS''
CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
Carnegie Mellon requests users of this software to return to
Software Distribution Coordinator
School of Computer Science
Carnegie Mellon University
Pittsburgh PA 15213-3890
or Software.Distribution@CS.CMU.EDU any improvements or
extensions that they make and grant Carnegie Mellon the rights to
redistribute these changes.
The file if_ppp.h is under the following CMU license:
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3. Neither the name of the University nor the names of its contributors
may be used to endorse or promote products derived from this software
without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY CARNEGIE MELLON UNIVERSITY AND
CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL THE UNIVERSITY OR CONTRIBUTORS BE LIABLE FOR ANY
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
The files nss/getnameinfo.c and nss/getaddrinfo.c are copyright (C) by
Craig Metz and are distributed under the following license:
/* The Inner Net License, Version 2.00
The author(s) grant permission for redistribution and use in source and
binary forms, with or without modification, of the software and documentation
provided that the following conditions are met:
0. If you receive a version of the software that is specifically labelled
as not being for redistribution (check the version message and/or README),
you are not permitted to redistribute that version of the software in any
way or form.
1. All terms of the all other applicable copyrights and licenses must be
followed.
2. Redistributions of source code must retain the authors' copyright
notice(s), this list of conditions, and the following disclaimer.
3. Redistributions in binary form must reproduce the authors' copyright
notice(s), this list of conditions, and the following disclaimer in the
documentation and/or other materials provided with the distribution.
4. [The copyright holder has authorized the removal of this clause.]
5. Neither the name(s) of the author(s) nor the names of its contributors
may be used to endorse or promote products derived from this software
without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY ITS AUTHORS AND CONTRIBUTORS ``AS IS'' AND ANY
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE FOR ANY
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
If these license terms cause you a real problem, contact the author. */
The file sunrpc/des_impl.c is copyright Eric Young:
Copyright (C) 1992 Eric Young
Collected from libdes and modified for SECURE RPC by Martin Kuck 1994
This file is distributed under the terms of the GNU Lesser General
Public License, version 2.1 or later - see the file COPYING.LIB for details.
If you did not receive a copy of the license with this program, please
see <https://www.gnu.org/licenses/> to obtain a copy.
The file inet/rcmd.c is under a UCB copyright and the following:
Copyright (C) 1998 WIDE Project.
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3. Neither the name of the project nor the names of its contributors
may be used to endorse or promote products derived from this software
without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE PROJECT OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.
The file posix/runtests.c is copyright Tom Lord:
Copyright 1995 by Tom Lord
All Rights Reserved
Permission to use, copy, modify, and distribute this software and its
documentation for any purpose and without fee is hereby granted,
provided that the above copyright notice appear in all copies and that
both that copyright notice and this permission notice appear in
supporting documentation, and that the name of the copyright holder not be
used in advertising or publicity pertaining to distribution of the
software without specific, written prior permission.
Tom Lord DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
EVENT SHALL TOM LORD BE LIABLE FOR ANY SPECIAL, INDIRECT OR
CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.
The posix/rxspencer tests are copyright Henry Spencer:
Copyright 1992, 1993, 1994, 1997 Henry Spencer. All rights reserved.
This software is not subject to any license of the American Telephone
and Telegraph Company or of the Regents of the University of California.
Permission is granted to anyone to use this software for any purpose on
any computer system, and to alter it and redistribute it, subject
to the following restrictions:
1. The author is not responsible for the consequences of use of this
software, no matter how awful, even if they arise from flaws in it.
2. The origin of this software must not be misrepresented, either by
explicit claim or by omission. Since few users ever read sources,
credits must appear in the documentation.
3. Altered versions must be plainly marked as such, and must not be
misrepresented as being the original software. Since few users
ever read sources, credits must appear in the documentation.
4. This notice may not be removed or altered.
The file posix/PCRE.tests is copyright University of Cambridge:
Copyright (c) 1997-2003 University of Cambridge
Permission is granted to anyone to use this software for any purpose on any
computer system, and to redistribute it freely, subject to the following
restrictions:
1. This software 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.
2. The origin of this software must not be misrepresented, either by
explicit claim or by omission. In practice, this means that if you use
PCRE in software that you distribute to others, commercially or
otherwise, you must put a sentence like this
Regular expression support is provided by the PCRE library package,
which is open source software, written by Philip Hazel, and copyright
by the University of Cambridge, England.
somewhere reasonably visible in your documentation and in any relevant
files or online help data or similar. A reference to the ftp site for
the source, that is, to
ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/
should also be given in the documentation. However, this condition is not
intended to apply to whole chains of software. If package A includes PCRE,
it must acknowledge it, but if package B is software that includes package
A, the condition is not imposed on package B (unless it uses PCRE
independently).
3. Altered versions must be plainly marked as such, and must not be
misrepresented as being the original software.
4. If PCRE is embedded in any software that is released under the GNU
General Purpose Licence (GPL), or Lesser General Purpose Licence (LGPL),
then the terms of that licence shall supersede any condition above with
which it is incompatible.
Files from Sun fdlibm are copyright Sun Microsystems, Inc.:
Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
Developed at SunPro, a Sun Microsystems, Inc. business.
Permission to use, copy, modify, and distribute this
software is freely granted, provided that this notice
is preserved.
Various long double libm functions are copyright Stephen L. Moshier:
Copyright 2001 by Stephen L. Moshier <moshier@na-net.ornl.gov>
This 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.
This 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 this library; if not, see
<https://www.gnu.org/licenses/>. */
Copyright (c) 1995 IBM Corporation
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
'Software'), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Various files in sysdeps/ieee754/flt-32, taken from the CORE-MATH project
<https://core-math.gitlabpages.inria.fr/>, are distributed under the
following license:
Copyright (c) 2022-2024 Alexei Sibidanov. Paul Zimmermann.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
-1
View File
@@ -1 +0,0 @@
See https://sourceware.org/glibc/wiki/MAINTAINERS
+248
View File
@@ -0,0 +1,248 @@
# Copyright (C) 1991,92,93,94,95,96,97,98,99 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 Library General Public License as
# published by the Free Software Foundation; either version 2 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
# Library General Public License for more details.
# You should have received a copy of the GNU Library General Public
# License along with the GNU C Library; see the file COPYING.LIB. If not,
# write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
# Boston, MA 02111-1307, USA.
dist:
# Make the value empty so ifdef fails if it's $(-subdir).
subdir := $(subdir)
ifdef subdir
.. := ../
else
.. :=
endif
include $(..)Makeconfig
foo:=$(shell echo 'distribute=$(distribute)'>&2)
foo:=$(shell echo 'dont_distribute=$(dont_distribute)'>&2)
foo:=$(shell echo 'foobar=$(filter %.c %.S %.s %.h,$(distribute))'>&2)
ifndef sysdep_dirs
# Find all sysdep directories.
export sysdep_dirs := $(shell find $(..)sysdeps -type d ! -name bits \
! -name CVS ! -name RCS \
! -name SCCS -print)
else
# Defined by the parent.
sysdep_dirs := $(addprefix $(..),$(sysdep_dirs))
endif
# Don't distribute add-on subdirs.
subdirs := $(filter-out $(add-ons),$(subdirs))
# Make sure both stdio and libio get in, whichever is in use.
subdirs += stdio libio
# Make sure both aout and elf get in, whichever is in use.
subdirs += aout elf
sysdep-Subdir-files := $(wildcard $(addsuffix /Subdirs,$(sysdep_dirs)))
ifdef sysdep-Subdir-files
subdirs := $(sort $(subdirs) \
$(shell sed -e 's/\#.*$$//' $(sysdep-Subdir-files)))
endif
# Makefiles can define `source_dirs' to list nonstandard directories
# where source files might be found.
ifdef subdir
all-headers = $(filter-out $(sysdep_headers),$(headers))
else
+distinfo := $(shell MAKEFLAGS= MFLAGS= $(MAKE) -s no_deps=t \
inhibit_interface_rules=t inhibit_mach_syscalls=t \
inhibit_timezone_rules=t \
subdirs='$(subdirs)' echo-distinfo | grep -v '^make')
foo:=$(shell echo>&2 '+distinfo=$(+distinfo)')
all-headers := $(patsubst +header+%,%,$(filter +header+%,$(+distinfo)))
# Ignore subdir headers without top-level indirections.
all-headers := $(sort $(headers) \
$(patsubst include/%,%,\
$(wildcard $(addprefix include/,\
$(all-headers)))))
# Filter out names like ../conf/portability.h that would point outside
# the source directory.
all-headers := $(filter-out ../%,$(all-headers))
+subdir-nodist := $(patsubst +nodist+%,%,$(filter +nodist+%,$(+distinfo)))
endif
foo:=$(shell echo 'IS THIS WORKING??? all-headers=$(all-headers)' >&2)
sources += $(addsuffix .c,$(elided-routines) \
$(foreach l,$(extra-libs),$($l-routines)))
# Find all sysdep sources and headers.
+maybe-sysdeps := $(sources) $(sources:.c=.s) $(sources:.c=.S) $(all-headers) \
$(filter %.c %.S %.s %.h %.sub,$(distribute))
foo:=$(shell echo '+maybe-sysdeps=$(+maybe-sysdeps)'>&2)
# Find all the files that have a generic version.
try-sysdeps := $(foreach dir,$(..)sysdeps/generic $(..)sysdeps/libm-ieee754,\
$(addprefix $(dir)/,$(+maybe-sysdeps)))
foo:=$(shell echo 'try-sysdeps=$(try-sysdeps)'>&2)
+sysdeps := $(wildcard $(try-sysdeps))
foo:=$(shell echo 'generic +sysdeps=$(+sysdeps)'>&2)
+sysdep-names := $(sort $(patsubst $(..)sysdeps/generic/%,%,\
$(patsubst $(..)sysdeps/libm-ieee754/%,%,\
$(+sysdeps))))
foo:=$(shell echo '+sysdep-names=$(+sysdep-names)' >&2)
ifdef subdir-dirs
vpath % $(subdir-dirs)
endif
# Now find all the sysdep versions of those files.
+sysdeps := $(foreach dir,$(sysdep_dirs) $(source_dirs),\
$(wildcard $(addprefix $(dir)/, \
$(+sysdep-names) \
$(+sysdep-names:.c=.s) \
$(+sysdep-names:.c=.S) \
)))
# Source and header files to go in the distribution tar file.
.S.s := $(wildcard $(sources:.c=.S) $(sources:.c=.s))
sources := $(filter-out $(addsuffix .c,$(basename $(.S.s))),$(sources)) $(.S.s)
+out := $(patsubst %.S,%.c,$(+sysdep-names:.s=.c)) \
$(addsuffix .c,$(sysdep_routines)) \
$(+subdir-nodist) $(dont_distribute)
foo:=$(shell echo '+out=$(+out)' >&2; echo foofoo >&2)
+tsrcs := $(filter-out $(+out), $(sources) $(all-headers)) $(+sysdeps)
foo:=$(shell echo 'made +tsrcs=$(+tsrcs)'>&2)
foo:=$(shell echo generated='$(generated)' >&2)
#generated := $(sort $(generated) $(generated:.S=.c) $(generated:.s=.c))
#foo:=$(shell echo now generated='$(generated)' >&2)
+tsrcs := $(filter-out $(generated),$(+tsrcs))
+tsrcs := $(sort $(filter-out $(+out),$(+tsrcs) $(distribute)))
foo:=$(shell echo '+tsrcs=$(+tsrcs)'>&2)
foo:=$(shell echo foobie, dammit! >&2)
ifndef tardir
export tardir := glibc-$(version)
endif
$(..)glibc-$(version):
ln -s . $@
#+tsrcs := $(+tsrcs) \
# TAGS
.PHONY: TAGS
TAGS: $(..)MakeTAGS
$(MAKE) -f $< $@ -o subdir_TAGS
ifdef subdir
foo:=$(shell echo subdir foo >&2)
+tsrcs := Makefile $(wildcard Versions) $(wildcard Depend) $(+tsrcs) \
$(addsuffix .c,$(others) $(tests) $(test-srcs)) \
$(wildcard $(addsuffix .input,$(tests) $(test-srcs)) \
$(addsuffix .args,$(tests) $(test-srcs)))
+tardeps := $(strip $(+tsrcs))
verbose = v
.PHONY: dist
dist: $(..)$(tardir) $(+tardeps)
@cd ..; if test -f dist.tar; then c=u; else c=c; fi; \
$(+cmdecho) "cd ..; tar $${c}h$(verbose)f dist.tar ..."; \
tar $${c}h$(verbose)f dist.tar \
$(addprefix $(tardir)/$(subdir)/,$(filter-out $<,$^))
else # Parent makefile.
# Find what other things sysdep directories want to distribute.
foo:=$(shell echo parent foobie>&2)
+sysdep-distfiles := $(wildcard $(addsuffix /Dist,$(sysdep_dirs)))
foo:=$(shell echo +sysdep-distfiles='$(+sysdep-distfiles)'>&2)
+sysdep-dist := $(foreach file,$(+sysdep-distfiles),\
$(addprefix $(dir $(file)), \
$(shell sed -e 's/\#.*$$//' $(file)))) \
$(+sysdep-distfiles) \
$(sysdep-Subdir-files)
foo:=$(shell echo '+sysdep-dist=$(+sysdep-dist)' >&2)
+sysdep-tsrcs := $(wildcard $(foreach file,Makefile Implies syscalls.list\
configure configure.in Versions,\
$(addsuffix /$(file),$(sysdep_dirs)))) \
$(+sysdep-dist)
+tsrcs := $(+tsrcs) $(+sysdep-tsrcs) $(wildcard $(+sysdep-names:%=include/%))
ifeq ($(with-cvs),yes)
define autoconf-it
autoconf $(ACFLAGS) $< > $@.new
mv -f $@.new $@
test ! -d CVS || cvs $(CVSOPTS) commit -m'Regenerated: autoconf $(ACFLAGS) $<' $@
endef
else
define autoconf-it
autoconf $(ACFLAGS) $< > $@.new
mv -f $@.new $@
endef
endif
configure: configure.in aclocal.m4; $(autoconf-it)
%/configure: %/configure.in aclocal.m4; $(autoconf-it)
dist: $(tardir).tar.gz
subdir_dist: dist.tar
dist.tar: README $(tardir) $(+tsrcs)
tar chvf $@ $(addprefix $(tardir)/,$(filter-out $(tardir),$^))
$(tardir).tar: dist.tar subdir_dist
@echo Files listed here have names exceeding 14 chars.
tar xfv $< -C $${TMPDIR-/tmp} | sed -n '/[^/]\{15,\}/p'
tar covf $@ -C $${TMPDIR-/tmp} $(tardir)
-rm -fr $${TMPDIR-/tmp}/$(tardir) dist.tar &
%.Z: %
compress -c $< > $@
%.gz: %
gzip -9 -v -c $< > $@
foo:=$(shell echo subdirs=$(subdirs) >&2)
dist-subdirs := $(addprefix dist-,$(subdirs)) # dist-manual
.PHONY: subdir_dist $(dist-subdirs)
subdir_dist: $(dist-subdirs)
$(dist-subdirs):
$(MAKE) -C $(patsubst dist-%,%,$@) dist
# This is here instead of in Makefile so it can use $(release) and $(version).
README: README.template version.h
-rm -f $@
sed -e 's/RELEASE/$(release)/' -e 's/VERSION/$(version)/' < $< > $@
# Make it unwritable so I won't change it by mistake.
chmod 444 $@
ifeq ($(with-cvs),yes)
test ! -d CVS || cvs $(CVSOPTS) commit -m'Remade for $(release)-$(version)' $@
endif
endif # Subdirectory vs. parent makefile
# Get these things out of the environment because they take up lots of space.
unexport distribute generated
# Fnord.
export inhibit_mach_syscalls=t
export no_deps=t
export inhibit_interface_rules=t
+184
View File
@@ -0,0 +1,184 @@
# Make the TAGS files.
# Copyright (C) 1992, 1994, 1995, 1996, 1998 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 Library General Public License
# as published by the Free Software Foundation; either version 2 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
# Library General Public License for more details.
# You should have received a copy of the GNU Library General Public
# License along with the GNU C Library; see the file COPYING.LIB. If not,
# write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
# Boston, MA 02111-1307, USA.
# Make this the default goal.
TAGS:
ifdef subdir
.. := ../
endif
include $(..)Makeconfig
ifndef tags_sources
ifeq ($(subdir),ctype)
# In most cases, we want the C source files to come before
# the header files so tags for optimizing #define's in the
# headers won't be put in the tags files, but for ctype,
# the functions are just backup for the #define's in the header.
tags_sources = $(all-headers) $(all-sources) $(all-dist)
else # Not ctype.
tags_sources = $(all-sources) $(all-headers) $(all-dist)
endif # ctype
endif # No tags_sources
sysdep-dirs := $(full-config-sysdirs)
ifndef sysdep_dirs
# Find all sysdep directories.
sysdep_dirs := $(shell find $(..)sysdeps \
$(wildcard \
$(patsubst %,$(..)%/sysdeps,$(add-ons))) \
-type d ! -name RCS ! -name CVS \
! -name SCCS -print)
endif
# Find all sysdep dirs there are, but putting the ones
# we are configured to use first and preserving their order.
all-dirs := $(subdir-dirs) \
$(objdir) \
$(sysdep-dirs) \
$(source_dirs) \
$(filter-out $(sysdep-dirs),$(sysdep_dirs))
# Find all the subdirs there are, but putting the ones
# we are configured to use first and preserving their order.
ifndef subdir
subdirs := $(subdirs) \
$(filter-out $(subdirs),\
$(shell sed -e 's/\#.*$$//' \
$(wildcard $(addsuffix /Subdirs,\
$(all-dirs)))\
/dev/null))
all-dist = $(foreach Dist,$(wildcard $(all-dirs:%=%/Dist)),\
$(addprefix $(Dist:%/Dist=%)/,\
$(filter %.c %.h %.S %.s,\
$(shell cat $(Dist)))))
tags_sources = $(all-sources) $(all-headers) $(all-dist)
else
all-dist = $(distribute)
endif
# sources and headers must be simply expanded variables
sources := $(sources) $(filter %.c %.s %.S,$(all-dist))
headers := $(headers) $(filter %.h,$(all-dist))
all-dist := $(filter-out %.h %.c %.s %.S,$(all-dist))
sources += $(foreach lib,$(extra-libs),$($(lib)-routines:=.c))
# All different versions of $(sources), preserving the configured sysdep
# directory order.
# Files that are found in the current directory cannot occur in
# sysdep directories, so don't bother searching them.
sysdep-sources := $(filter-out $(wildcard $(sources)), $(sources))
all-sources = $(wildcard $(sort $(sources) $(sources:.c=.S) $(sources:.c=.s) \
$(others:=.c) $(tests:=.c) $(test-srcs:=.c))) \
$(foreach dir,$(all-dirs),\
$(wildcard \
$(addprefix $(dir)/,\
$(sort $(sysdep-sources) \
$(sysdep-sources:.c=.S) \
$(sysdep-sources:.c=.s)))))
sysdep-headers := $(filter-out $(wildcard $(headers)), $(headers))
all-headers = $(wildcard $(headers)) \
$(foreach dir,$(all-dirs),\
$(wildcard $(addprefix $(dir)/,$(sysdep-headers))))
tags_sources := $(strip $(tags_sources))
TAGS: $(tags_sources)
ifdef subdir
ifdef tags_sources
$(ETAGS) -o $@ $^
else
# No sources. Create a dummy file.
touch $@
endif # tags_sources
else # parent
TAGS: subdir_TAGS
# Note that this uses the -i switch, and thus requires v19 etags.
$(ETAGS) -o $@ \
$(subdirs:%=-i %/TAGS) \
$(filter-out subdir_TAGS,$^)
.PHONY: subdir_TAGS $(subdirs:%=%/TAGS)
subdir_TAGS: $(subdirs:%=%/TAGS)
$(subdirs:%=%/TAGS):
$(MAKE) -C $(@D) no_deps=t $(@F)
endif # subdir
ifndef XGETTEXT
XGETTEXT = xgettext
endif
P = $(..)po
ifdef subdir
domain = $(subdir)
else
domain = libc-top
endif
define extract
@rm -f $@.new
$(XGETTEXT) --keyword=_ --keyword=N_ --add-comments=TRANS --sort-output \
--omit-header -n -d - $(XGETTEXTFLAGS-$(@F)) > $@.new $^
mv -f $@.new $@
endef
text-srcs := $(filter %.c %.h %.cc %.C,$(tags_sources))
$P/$(domain).pot: $(text-srcs)
ifeq (,$(text-srcs))
cp /dev/null $@
else
$(extract)
endif
all-pot = $P/libc-top.pot $P/subdirs.pot
ifndef subdir
# Collect all the subdir messages, massaging the file names in comments
# to include the subdir name.
$P/subdirs.pot: $(subdirs:%=$P/%.pot)
@rm -f $@.new
(for d in $(subdirs); \
do sed "/^#:/s% % $$d/%g" $P/$$d.pot; done) > $@.new
mv -f $@.new $@
# Combine all the messages into the final sorted template translation file.
# The following code requires GNU date.
$P/libc.pot: $(all-pot)
@rm -f $@.new
set `date -R`; disp="$$6"; \
sed -e 's/VERSION/$(version)/' \
-e "s/DATE/`date +'%Y-%m-%d %H:%M'$$disp`/" \
po/header.pot > $@.new
$(XGETTEXT) -d - --omit-header -n -s $^ >> $@.new
mv -f $@.new $@
ifeq ($(with-cvs),yes)
test ! -d CVS || cvs $(CVSOPTS) ci -m'Regenerated from source files' $@
endif
$(subdirs:%=$P/%.pot): $P/%.pot: FORCE
$(MAKE) -C $* no_deps=t ../$@
FORCE:
endif
+314 -994
View File
File diff suppressed because it is too large Load Diff
+146 -627
View File
@@ -1,19 +1,20 @@
# Copyright (C) 1991-2026 Free Software Foundation, Inc.
# Copyright (C) 1991,92,93,94,95,96,97,98,99 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.
# modify it under the terms of the GNU Library General Public License as
# published by the Free Software Foundation; either version 2 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.
# Library 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
# <https://www.gnu.org/licenses/>.
# You should have received a copy of the GNU Library General Public
# License along with the GNU C Library; see the file COPYING.LIB. If not,
# write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
# Boston, MA 02111-1307, USA.
#
# Master Makefile for the GNU C library
@@ -26,51 +27,42 @@ include Makeconfig
# This is the default target; it makes everything except the tests.
.PHONY: all help minihelp
all: minihelp lib others
help:
@sed '0,/^help-starts-here$$/d' Makefile.help
minihelp:
@echo
@echo type \"make help\" for help with common glibc makefile targets
@echo
.PHONY: all
all: lib others
ifneq ($(AUTOCONF),no)
ifeq ($(with-cvs),yes)
define autoconf-it
@-rm -f $@.new
$(AUTOCONF) $(ACFLAGS) $< > $@.new
chmod a-w$(patsubst %,$(comma)a+x,$(filter .,$(@D))) $@.new
autoconf $(ACFLAGS) $< > $@.new
chmod a-w,a+x $@.new
mv -f $@.new $@
test ! -d CVS || cvs $(CVSOPTS) commit -m'Regenerated: autoconf $(ACFLAGS) $<' $@
endef
else
define autoconf-it
@-rm -f $@.new
autoconf $(ACFLAGS) $< > $@.new
chmod a-w,a+x $@.new
mv -f $@.new $@
endef
endif
configure: configure.ac aclocal.m4; $(autoconf-it)
%/configure: %/configure.ac aclocal.m4; $(autoconf-it)
%/preconfigure: %/preconfigure.ac aclocal.m4; $(autoconf-it)
endif # $(AUTOCONF) = no
# We don't want to run anything here in parallel.
.NOTPARALLEL:
configure: configure.in aclocal.m4; $(autoconf-it)
%/configure: %/configure.in aclocal.m4; $(autoconf-it)
# These are the targets that are made by making them in each subdirectory.
+subdir_targets := subdir_lib objects objs others subdir_mostlyclean \
subdir_clean subdir_distclean subdir_realclean \
tests xtests \
subdir_update-abi subdir_check-abi \
subdir_update-all-abi \
subdir_echo-headers \
tests subdir_lint.out \
subdir_distinfo \
subdir_echo-headers subdir_echo-distinfo \
subdir_install \
subdir_objs subdir_stubs subdir_testclean \
subdir_testclean \
$(addprefix install-, no-libc.a bin lib data headers others)
headers := limits.h values.h features.h features-time64.h gnu-versions.h \
bits/xopen_lim.h gnu/libc-version.h stdc-predef.h \
bits/libc-header-start.h
headers := errno.h sys/errno.h bits/errno.h limits.h values.h \
features.h gnu-versions.h bits/libc-lock.h bits/xopen_lim.h \
gnu/libc-version.h
echo-headers: subdir_echo-headers
@@ -80,24 +72,21 @@ vpath %.h $(subdir-dirs)
# What to install.
install-others = $(inst_includedir)/gnu/stubs.h
install-bin-script =
install-bin = glibcbug
ifeq (yes,$(build-shared))
headers += gnu/lib-names.h
install-others += $(inst_includedir)/gnu/lib-names.h
endif
include Makerules
ifeq ($(build-programs),yes)
others: $(addprefix $(objpfx),$(install-bin-script))
others: $(addprefix $(objpfx),$(install-bin))
endif
# Install from subdirectories too.
install: subdir_install
# Explicit dependency so that `make install-headers' works
install-headers: install-headers-nosubdir
# Make sure that the dynamic linker is installed before libc.
$(inst_slibdir)/libc-$(version).so: elf/ldso_install
@@ -105,18 +94,23 @@ $(inst_slibdir)/libc-$(version).so: elf/ldso_install
elf/ldso_install:
$(MAKE) -C $(@D) $(@F)
# Create links for shared libraries using the `ldconfig' program if possible.
# Create links for shared libraries using the `ldconfig' program is possible.
# Ignore the error if we cannot update /etc/ld.so.cache.
ifeq (no,$(cross-compiling))
ifeq (yes,$(build-shared))
install: install-symbolic-link
.PHONY: install-symbolic-link
install-symbolic-link: subdir_install
$(symbolic-link-prog) $(symbolic-link-list)
rm -f $(symbolic-link-list)
install:
-test ! -x $(elf-objpfx)ldconfig || LC_ALL=C \
$(elf-objpfx)ldconfig $(addprefix -r ,$(install_root)) \
$(slibdir) $(libdir)
-test ! -x $(common-objpfx)elf/ldconfig || \
$(common-objpfx)elf/ldconfig -d $(inst_slibdir) $(inst_libdir)
ifneq (no,$(PERL))
ifeq (/usr,$(prefix))
ifeq (,$(install_root))
LD_SO=$(ld.so-version) CC="$(CC)" $(PERL) scripts/test-installation.pl $(common-objpfx)
CC="$(CC)" $(PERL) scripts/test-installation.pl $(common-objpfx)
endif
endif
endif
@@ -128,291 +122,8 @@ lib-noranlib: subdir_lib
ifeq (yes,$(build-shared))
# Build the shared object from the PIC object library.
lib: $(common-objpfx)libc.so $(common-objpfx)linkobj/libc.so
endif # $(build-shared)
# Used to build testrun.sh.
define testrun-script
#!/bin/bash
builddir=`dirname "$$0"`
GCONV_PATH="$${builddir}/iconvdata"
usage () {
cat << EOF
Usage: $$0 [OPTIONS] <program> [ARGUMENTS...]
--tool=TOOL Run with the specified TOOL. It can be strace, rpctrace,
valgrind or container. The container will run within
support/test-container. For strace and valgrind,
additional arguments can be passed after the tool name.
EOF
exit 1
}
toolname=default
while test $$# -gt 0 ; do
case "$$1" in
--tool=*)
toolname="$${1:7}"
shift
;;
--*)
usage
;;
*)
break
;;
esac
done
if test $$# -eq 0 ; then
usage
fi
case "$$toolname" in
default)
exec $(subst $(common-objdir),"$${builddir}", $(test-program-prefix)) \
$${1+"$$@"}
;;
strace*)
exec $$toolname $(patsubst %, -E%, $(run-program-env)) \
$(test-via-rtld-prefix) $${1+"$$@"}
;;
rpctrace)
exec rpctrace $(patsubst %, -E%, $(run-program-env)) \
$(test-via-rtld-prefix) $${1+"$$@"}
;;
valgrind*)
exec env $(run-program-env) $$toolname $(test-via-rtld-prefix) $${1+"$$@"}
;;
container)
exec env $(run-program-env) $(test-via-rtld-prefix) \
$(common-objdir)/support/test-container \
env $(run-program-env) $(test-via-rtld-prefix) $${1+"$$@"}
;;
*)
usage
;;
esac
endef
# This is a handy script for running any dynamically linked program against
# the current libc build for testing.
$(common-objpfx)testrun.sh: $(common-objpfx)config.make \
$(..)Makeconfig $(..)Makefile
$(file >$@T,$(testrun-script))
chmod a+x $@T
mv -f $@T $@
postclean-generated += testrun.sh
define debugglibc
#!/bin/bash
SOURCE_DIR="$(CURDIR)"
BUILD_DIR="$(common-objpfx)"
CMD_FILE="$(common-objpfx)debugglibc.gdb"
CONTAINER=false
DIRECT=true
STATIC=false
SYMBOLSFILE=true
unset TESTCASE
unset BREAKPOINTS
unset ENVVARS
usage()
{
cat << EOF
Usage: $$0 [OPTIONS] <program>
Or: $$0 [OPTIONS] -- <program> [<args>]...
where <program> is the path to the program being tested,
and <args> are the arguments to be passed to it.
Options:
-h, --help
Prints this message and leaves.
The following options require one argument:
-b, --breakpoint
Breakpoints to set at the beginning of the execution
(each breakpoint demands its own -b option, e.g. -b foo -b bar)
-e, --environment-variable
Environment variables to be set with 'exec-wrapper env' in GDB
(each environment variable demands its own -e option, e.g.
-e FOO=foo -e BAR=bar)
The following options do not take arguments:
-c, --in-container
Run the test case inside a container and automatically attach
GDB to it.
-i, --no-direct
Selects whether to pass the --direct flag to the program.
--direct is useful when debugging glibc test cases. It inhibits the
tests from forking and executing in a subprocess.
Default behaviour is to pass the --direct flag, except when the
program is run with user specified arguments using the "--" separator.
-s, --no-symbols-file
Do not tell GDB to load debug symbols from the program.
EOF
}
# Parse input options
while [[ $$# > 0 ]]
do
key="$$1"
case $$key in
-h|--help)
usage
exit 0
;;
-b|--breakpoint)
BREAKPOINTS="break $$2\n$$BREAKPOINTS"
shift
;;
-e|--environment-variable)
ENVVARS="$$2 $$ENVVARS"
shift
;;
-c|--in-container)
CONTAINER=true
;;
-i|--no-direct)
DIRECT=false
;;
-s|--no-symbols-file)
SYMBOLSFILE=false
;;
--)
shift
TESTCASE=$$1
COMMANDLINE="$$@"
# Don't add --direct when user specifies program arguments
DIRECT=false
break
;;
*)
TESTCASE=$$1
COMMANDLINE=$$TESTCASE
;;
esac
shift
done
# Check for required argument and if the testcase exists
if [ ! -v TESTCASE ] || [ ! -f $${TESTCASE} ]
then
usage
exit 1
fi
# Container tests needing locale data should install them in-container.
# Other tests/binaries need to use locale data from the build tree.
if [ "$$CONTAINER" = false ]
then
ENVVARS="GCONV_PATH=$${BUILD_DIR}/iconvdata $$ENVVARS"
ENVVARS="LOCPATH=$${BUILD_DIR}/localedata $$ENVVARS"
ENVVARS="LC_ALL=C $$ENVVARS"
fi
# Expand environment setup command
if [ -v ENVVARS ]
then
ENVVARSCMD="set exec-wrapper env $$ENVVARS"
fi
# Expand direct argument
if [ "$$DIRECT" == true ]
then
DIRECT="--direct"
else
DIRECT=""
fi
# Check if the test case is static
if file $${TESTCASE} | grep "statically linked" >/dev/null
then
STATIC=true
else
STATIC=false
fi
# Expand symbols loading command
if [ "$$SYMBOLSFILE" == true ]
then
SYMBOLSFILE="add-symbol-file $${TESTCASE}"
else
SYMBOLSFILE=""
fi
# GDB commands template
template ()
{
cat <<EOF
set environment C -E -x c-header
set auto-load safe-path $${BUILD_DIR}/nptl_db:\$$debugdir:\$$datadir/auto-load
set libthread-db-search-path $${BUILD_DIR}/nptl_db
__ENVVARS__
__SYMBOLSFILE__
break _dl_start_user
run --library-path $(rpath-link):$${BUILD_DIR}/nptl_db \
__COMMANDLINE__ __DIRECT__
__BREAKPOINTS__
EOF
}
# Generate the commands file for gdb initialization
template | sed \
-e "s|__ENVVARS__|$$ENVVARSCMD|" \
-e "s|__SYMBOLSFILE__|$$SYMBOLSFILE|" \
-e "s|__COMMANDLINE__|$$COMMANDLINE|" \
-e "s|__DIRECT__|$$DIRECT|" \
-e "s|__BREAKPOINTS__|$$BREAKPOINTS|" \
> $$CMD_FILE
echo
echo "Debugging glibc..."
echo "Build directory : $$BUILD_DIR"
echo "Source directory : $$SOURCE_DIR"
echo "GLIBC Testcase : $$TESTCASE"
echo "GDB Commands : $$CMD_FILE"
echo "Env vars : $$ENVVARS"
echo
if [ "$$CONTAINER" == true ]
then
# Use testrun.sh to start the test case with WAIT_FOR_DEBUGGER=1, then
# automatically attach GDB to it.
WAIT_FOR_DEBUGGER=1 $(common-objpfx)testrun.sh --tool=container $${TESTCASE} &
gdb -x $${TESTCASE}.gdb
elif [ "$$STATIC" == true ]
then
gdb $${TESTCASE}
else
# Start the test case debugging in two steps:
# 1. the following command invokes gdb to run the loader;
# 2. the commands file tells the loader to run the test case.
gdb -q \
-x $${CMD_FILE} \
-d $${SOURCE_DIR} \
$${BUILD_DIR}/elf/ld.so
fi
endef
# This is another handy script for debugging dynamically linked program
# against the current libc build for testing.
$(common-objpfx)debugglibc.sh: $(common-objpfx)config.make \
$(..)Makeconfig $(..)Makefile
$(file >$@T,$(debugglibc))
chmod a+x $@T
mv -f $@T $@
postclean-generated += debugglibc.sh debugglibc.gdb
others: $(common-objpfx)testrun.sh $(common-objpfx)debugglibc.sh
lib: $(common-objpfx)libc.so
endif
# Makerules creates a file `stubs' in each subdirectory, which
# contains `#define __stub_FUNCTION' for each function defined in that
@@ -421,52 +132,39 @@ others: $(common-objpfx)testrun.sh $(common-objpfx)debugglibc.sh
subdir-stubs := $(foreach dir,$(subdirs),$(common-objpfx)$(dir)/stubs)
ifndef abi-variants
installed-stubs = $(inst_includedir)/gnu/stubs.h
else
installed-stubs = $(inst_includedir)/gnu/stubs-$(default-abi).h
$(inst_includedir)/gnu/stubs.h: $(+force)
$(make-target-directory)
{ \
echo '/* This file is automatically generated.';\
echo " This file selects the right generated file of \`__stub_FUNCTION' macros";\
echo ' based on the architecture being compiled for. */'; \
echo ''; \
$(foreach h,$(abi-includes), echo '#include <$(h)>';) \
echo ''; \
$(foreach v,$(abi-variants),\
$(if $(abi-$(v)-condition),\
echo '#if $(abi-$(v)-condition)'; \
echo '# include <gnu/stubs-$(v).h>'); \
$(if $(abi-$(v)-condition),echo '#endif';) \
rm -f $(@:.d=.h).new$(v); \
) \
} > $(@:.d=.h).new
mv -f $(@:.d=.h).new $(@:.d=.h)
install-others-nosubdir: $(installed-stubs)
endif
# Since stubs.h is never needed when building the library, we simplify the
# hairy installation process by producing it in place only as the last part
# of the top-level `make install'. It depends on subdir_install, which
# iterates over all the subdirs; subdir_install in each subdir depends on
# the subdir's stubs file. Having more direct dependencies would result in
# extra iterations over the list for subdirs and many recursive makes.
$(installed-stubs): include/stubs-prologue.h subdir_install
$(inst_includedir)/gnu/stubs.h: subdir_install
$(make-target-directory)
@rm -f $(objpfx)stubs.h
(sed '/^@/d' $<; LC_ALL=C sort $(subdir-stubs)) > $(objpfx)stubs.h
(echo '/* This file is automatically generated.';\
echo ' It defines a symbol `__stub_FUNCTION'\'' for each function';\
echo ' in the C library which is a stub, meaning it will fail';\
echo ' every time called, usually setting errno to ENOSYS. */';\
sort $(subdir-stubs)) > $(objpfx)stubs.h
if test -r $@ && cmp -s $(objpfx)stubs.h $@; \
then echo 'stubs.h unchanged'; \
else $(INSTALL_DATA) $(objpfx)stubs.h $@; fi
rm -f $(objpfx)stubs.h
ifeq (yes,$(build-shared))
$(inst_includedir)/gnu/lib-names.h: $(common-objpfx)gnu/lib-names.h $(+force)
$(do-install)
endif
# The `glibcbug' script contains the version number and it shall be rebuild
# whenever this changes or the `glibcbug.in' file.
$(objpfx)glibcbug: $(common-objpfx)config.status glibcbug.in
cd $(<D) && CONFIG_FILES=$(@F) CONFIG_HEADERS= $(SHELL) $(<F)
# This makes the Info or DVI file of the documentation from the Texinfo source.
.PHONY: info dvi pdf html
info dvi pdf html:
.PHONY: info dvi
info dvi:
$(MAKE) $(PARALLELMFLAGS) -C manual $@
# This makes all the subdirectory targets.
@@ -481,13 +179,7 @@ all-subdirs-targets := $(foreach dir,$(subdirs),\
# The action for each of those is to cd into the directory and make the
# target there.
$(all-subdirs-targets):
$(MAKE) $(PARALLELMFLAGS) $(subdir-target-args) $(@F)
define subdir-target-args
subdir=$(@D)$(if $($(@D)-srcdir),\
-C $($(@D)-srcdir) ..=`pwd`/,\
-C $(@D) ..=../)
endef
$(MAKE) $(PARALLELMFLAGS) -C $(@D) $(@F)
.PHONY: $(+subdir_targets) $(all-subdirs-targets)
@@ -504,8 +196,8 @@ parent-mostlyclean: common-mostlyclean # common-mostlyclean is in Makerules.
parent-clean: parent-mostlyclean common-clean
postclean = $(addprefix $(common-objpfx),$(postclean-generated)) \
$(addprefix $(objpfx),sysd-dirs sysd-rules) \
$(addprefix $(objpfx),sysd-sorted soversions.mk soversions.i)
$(addprefix $(objpfx),sysd-Makefile sysd-dirs sysd-rules) \
$(addprefix $(objpfx),sysd-sorted soversions.mk)
clean: parent-clean
# This is done this way rather than having `subdir_clean' be a
@@ -513,207 +205,13 @@ clean: parent-clean
# subdirectories are dealt with and so they won't try to remove object
# files from it when it's going to be removed anyway.
@$(MAKE) subdir_clean no_deps=t
-rm -f $(postclean)
mostlyclean: parent-mostlyclean
@$(MAKE) subdir_mostlyclean no_deps=t
-rm -f $(postclean)
# Remove test artifacts from the whole glibc build.
# do-tests-clean removes test artifacts from top-level directory, and
# subdir_testclean removes them from individual sub-directories.
tests-clean: do-tests-clean
tests-clean:
@$(MAKE) subdir_testclean no_deps=t
ifneq (,$(CXX))
vpath c++-types.data $(+sysdep_dirs)
tests-special += $(objpfx)c++-types-check.out
$(objpfx)c++-types-check.out: c++-types.data scripts/check-c++-types.sh
scripts/check-c++-types.sh $< $(CXX) $(filter-out -std=gnu11 $(+gccwarn-c),$(CFLAGS)) $(CPPFLAGS) > $@; \
$(evaluate-test)
endif
tests-special += $(objpfx)check-local-headers.out
$(objpfx)check-local-headers.out: scripts/check-local-headers.sh
AWK='$(AWK)' scripts/check-local-headers.sh \
"$(includedir)" "$(objpfx)" < /dev/null > $@; \
$(evaluate-test)
ifneq "$(headers)" ""
# Special test of all the installed headers in this directory.
tests-special += $(objpfx)check-installed-headers-c.out
libof-check-installed-headers-c := testsuite
$(objpfx)check-installed-headers-c.out: \
scripts/check-installed-headers.sh $(headers)
$(SHELL) $(..)scripts/check-installed-headers.sh c $(supported-fortify) \
"$(CC) $(test-config-cflags-finput-charset-ascii) \
$(filter-out -std=%,$(CFLAGS)) -D_ISOMAC $(+includes)" \
$(headers) > $@; \
$(evaluate-test)
ifneq "$(CXX)" ""
tests-special += $(objpfx)check-installed-headers-cxx.out
libof-check-installed-headers-cxx := testsuite
$(objpfx)check-installed-headers-cxx.out: \
scripts/check-installed-headers.sh $(headers)
$(SHELL) $(..)scripts/check-installed-headers.sh c++ $(supported-fortify) \
"$(CXX) $(test-config-cxxflags-finput-charset-ascii) \
$(filter-out -std=%,$(CXXFLAGS)) -D_ISOMAC $(+includes)" \
$(headers) > $@; \
$(evaluate-test)
endif # $(CXX)
tests-special += $(objpfx)check-wrapper-headers.out
$(objpfx)check-wrapper-headers.out: scripts/check-wrapper-headers.py $(headers)
$(PYTHON) $< --root=. --subdir=. $(headers) \
--generated $(common-generated) > $@; $(evaluate-test)
endif # $(headers)
# Lint all Makefiles; including this one. Pass `pwd` as the source
# directory since the top-level Makefile is in the root of the source
# tree and these tests are run from there. We add light-weight linting
# to the 'check' target to support the existing developer workflow of:
# edit -> make -> make check; without needing an additional step.
tests-special += $(objpfx)lint-makefiles.out
$(objpfx)lint-makefiles.out: scripts/lint-makefiles.sh
$(SHELL) $< "$(PYTHON)" `pwd` > $@ ; \
$(evaluate-test)
# Link libc.a as a whole to verify that it does not contain multiple
# definitions of any symbols.
tests-special += $(objpfx)link-static-libc.out
$(objpfx)link-static-libc.out:
$(LINK.o) $(whole-archive) -nostdlib -nostartfiles -r \
$(objpfx)libc.a -o /dev/null > $@ 2>&1; \
$(evaluate-test)
# Print test summary for tests in $1 .sum file;
# $2 is optional test identifier.
# Fail if there are unexpected failures in the test results.
define summarize-tests
@grep -E '^[A-Z]+:' $(objpfx)$1 | grep -E -v '^(PASS|XFAIL):' || true
@echo " === Summary of results$2 ==="
@sed -e '/:.*/!d' -e 's/:.*//' < $(objpfx)$1 | sort | uniq -c
@{ \
grep -E '^[A-Z]+:' $(objpfx)$1 | \
grep -E -v '^(X?PASS|XFAIL|UNSUPPORTED):' | \
( \
if ! test -f $(..)allowed-failures.txt; then \
read -r _; exit $$(( $$? == 0 )); \
fi; \
status=0; \
while IFS= read -r line; do \
case "$$line" in \
FAIL:*) \
name=$${line#FAIL: }; \
escaped_name=`printf '%s' "$$name" | sed 's/[.+]/\\&/g'`; \
if grep -Eq -- "^$${escaped_name}[[:space:]]*#" \
$(..)allowed-failures.txt; then \
echo "Ignoring allowed FAIL: $${name}"; \
continue; \
fi; \
echo "Unallowed FAIL: $${name}"; \
status=1; \
;; \
*) \
status=1; \
;; \
esac; \
done; \
exit $$status; \
); \
}
endef
# The intention here is to do ONE install of our build into the
# testroot.pristine/ directory, then rsync (internal to
# support/test-container) that to testroot.root/ at the start of each
# test. That way we can promise each test a "clean" install, without
# having to do the install for each test.
#
# In addition, we have to copy some files (which we build) into this
# root in addition to what glibc installs. For example, many tests
# require additional programs including /bin/sh, /bin/true, and
# /bin/echo, all of which we build below to limit library dependencies
# to just those things in glibc and language support libraries which
# we also copy into the into the rootfs. To determine what language
# support libraries we need we build a "test" program in either C or
# (if available) C++ just so we can copy in any shared objects
# (which we do not build) that GCC-compiled programs depend on.
ifeq (,$(CXX))
LINKS_DSO_PROGRAM = links-dso-program-c
else
LINKS_DSO_PROGRAM = links-dso-program
endif
$(tests-container) $(addsuffix /tests,$(subdirs)) : \
$(objpfx)testroot.pristine/install.stamp
$(objpfx)testroot.pristine/install.stamp :
test -d $(objpfx)testroot.pristine || \
mkdir $(objpfx)testroot.pristine
# We need a working /bin/sh for some of the tests.
test -d $(objpfx)testroot.pristine/bin || \
mkdir $(objpfx)testroot.pristine/bin
# We need the compiled locale dir for localedef tests.
test -d $(objpfx)testroot.pristine/$(complocaledir) || \
mkdir -p $(objpfx)testroot.pristine/$(complocaledir)
cp $(objpfx)support/shell-container $(objpfx)testroot.pristine/bin/sh
cp $(objpfx)support/echo-container $(objpfx)testroot.pristine/bin/echo
cp $(objpfx)support/true-container $(objpfx)testroot.pristine/bin/true
# We need to be able to load extra language libraries.
mkdir -p $(objpfx)testroot.pristine/etc/ld.so.conf.d
echo 'include ld.so.conf.d/*.conf' > $(objpfx)testroot.pristine/etc/ld.so.conf
echo $(gnulib-extralibdir) >> $(objpfx)testroot.pristine/etc/ld.so.conf
echo '# file without content' > $(objpfx)testroot.pristine/etc/ld.so.conf.d/999-empty.conf
ifeq ($(run-built-tests),yes)
# Copy these DSOs first so we can overwrite them with our own.
for dso in `$(test-wrapper-env) LD_TRACE_LOADED_OBJECTS=1 \
$(rtld-prefix) --inhibit-cache \
$(objpfx)testroot.pristine/bin/sh \
| sed -n '/\//{s@.*=> /@/@;s/^[^/]*//;s/ .*//p;}'` ;\
do \
test -d `dirname $(objpfx)testroot.pristine$$dso` || \
mkdir -p `dirname $(objpfx)testroot.pristine$$dso` ;\
$(test-wrapper) cp $$dso $(objpfx)testroot.pristine$$dso ;\
done
for dso in `$(test-wrapper-env) LD_TRACE_LOADED_OBJECTS=1 \
$(rtld-prefix) --inhibit-cache \
$(objpfx)support/$(LINKS_DSO_PROGRAM) \
| sed -n '/\//{s@.*=> /@/@;s/^[^/]*//;s/ .*//p;}'` ;\
do \
test -d `dirname $(objpfx)testroot.pristine$$dso` || \
mkdir -p `dirname $(objpfx)testroot.pristine$$dso` ;\
$(test-wrapper) cp $$dso $(objpfx)testroot.pristine$$dso ;\
done
endif
# $(symbolic-link-list) is a file that encodes $(DESTDIR) so we
# have to purge it
rm -f $(symbolic-link-list)
# Setting INSTALL_UNCOMPRESSED causes localedata/Makefile to
# install the charmaps uncompressed, as the testroot does not
# provide a gunzip program.
$(MAKE) install DESTDIR=$(objpfx)testroot.pristine \
INSTALL_UNCOMPRESSED=yes subdirs='$(sorted-subdirs)'
rm -f $(symbolic-link-list)
touch $(objpfx)testroot.pristine/install.stamp
tests-special-notdir = $(patsubst $(objpfx)%, %, $(tests-special))
tests: $(tests-special)
$(..)scripts/merge-test-results.sh -s $(objpfx) "" \
$(sort $(tests-special-notdir:.out=)) \
> $(objpfx)subdir-tests.sum
$(..)scripts/merge-test-results.sh -t $(objpfx) subdir-tests.sum \
$(sort $(subdirs) .) \
> $(objpfx)tests.sum
$(call summarize-tests,tests.sum)
xtests:
$(..)scripts/merge-test-results.sh -t $(objpfx) subdir-xtests.sum \
$(sort $(subdirs)) \
> $(objpfx)xtests.sum
$(call summarize-tests,xtests.sum, for extra tests)
# The realclean target is just like distclean for the parent, but we want
# the subdirs to know the difference in case they care.
realclean distclean: parent-clean
@@ -730,75 +228,96 @@ distclean-1: subdir_$(distclean-1)
-rm -f $(config-generated)
-rm -f $(addprefix $(objpfx),config.status config.cache config.log)
-rm -f $(addprefix $(objpfx),config.make config-name.h config.h)
-rm -f $(addprefix $(objpfx),glibcbug)
ifdef objdir
-rm -f $(objpfx)Makefile
endif
-rm -f $(sysdep-$(distclean-1))
# Make the TAGS file for Emacs users.
.PHONY: echo_subdirs
echo_subdirs:;@echo '$(subdirs)'
.PHONY: echo-distinfo parent_echo-distinfo
echo-distinfo: parent_echo-distinfo subdir_echo-distinfo
parent_echo-distinfo:
@echo $(addprefix +header+,$(headers)) \
$(addprefix +nodist+,$(generated))
.PHONY: TAGS
TAGS:
scripts/list-sources.sh | sed -n -e '/Makefile/p' \
$(foreach S,[chsSyl] cxx sh bash pl,\
$(subst .,\.,-e '/.$S\(.in\)*$$/p')) \
| $(ETAGS) -o $@ -
# Make the distribution tarfile.
.PHONY: dist dist-prepare
distribute := README README.libm INSTALL FAQ FAQ.in NOTES NEWS BUGS \
PROJECTS COPYING.LIB COPYING ChangeLog ChangeLog.[0-9] \
Makefile Makeconfig Makerules Rules Make-dist MakeTAGS \
extra-lib.mk o-iterator.mk configure configure.in \
aclocal.m4 config.h.in config.make.in config-name.in \
Makefile.in sysdep.h set-hooks.h libc-symbols.h \
version.h shlib-versions rpm/Makefile rpm/template \
rpm/rpmrc glibcbug.in abi-tags stub-tag.h \
test-skeleton.c include/des.h Versions.def \
INTERFACE CONFORMANCE \
$(addprefix scripts/, \
rellns-sh config.sub config.guess \
mkinstalldirs move-if-change install-sh \
test-installation.pl gen-FAQ.pl versions.awk\
gen-sorted.awk)
distribute := $(strip $(distribute))
generated := $(generated) stubs.h
files-for-dist := README INSTALL configure NEWS
README: README.template version.h ; # Make-dist should update README.
# Regenerate stuff, then error if these things are not committed yet.
dist-prepare: $(files-for-dist)
conf=`find sysdeps -name configure`; \
$(MAKE) $$conf && \
git diff --stat HEAD -- $^ $$conf \
| $(AWK) '{ print; rc=1 } END { exit rc }'
%.tar: FORCE
git archive --prefix=$*/ $* > $@.new
mv -f $@.new $@
# Do `make dist dist-version=X.Y.Z' to make tar files of an older version.
ifneq (,$(strip $(dist-version)))
dist: $(foreach Z,.bz2 .gz .xz,$(dist-version).tar$Z)
md5sum $^
else
dist: dist-prepare
@if v=`git describe`; then \
echo Distribution version $$v; \
$(MAKE) dist dist-version=$$v; \
else \
false; \
fi
define format-me
@rm -f $@
makeinfo --no-validate --no-warn --no-headers $< -o $@
-chmod a-w $@
endef
INSTALL: manual/install.texi; $(format-me)
NOTES: manual/creature.texi; $(format-me)
manual/dir-add.texi manual/dir-add.info: FORCE
$(MAKE) $(PARALLELMFLAGS) -C $(@D) $(@F)
FAQ: scripts/gen-FAQ.pl FAQ.in
$(PERL) $^ > $@.new && rm -f $@ && mv $@.new $@ && chmod a-w $@
ifeq ($(with-cvs),yes)
test ! -d CVS || cvs $(CVSOPTS) commit -m'Regenerated: $(PERL) $^' $@
endif
INSTALL: manual/install-plain.texi manual/macros.texi \
$(common-objpfx)manual/pkgvers.texi manual/install.texi
makeinfo --no-validate --plaintext --no-number-sections \
--disable-encoding -I$(common-objpfx)manual $< -o $@-tmp
$(AWK) 'NF == 0 { ++n; next } \
NF != 0 { while (n-- > 0) print ""; n = 0; print }' \
< $@-tmp > $@-tmp2
rm -f $@-tmp
-chmod a-w $@-tmp2
mv -f $@-tmp2 $@
$(common-objpfx)manual/%: FORCE
$(MAKE) $(PARALLELMFLAGS) -C manual $@
FORCE:
iconvdata/% localedata/% po/%: FORCE
rpm/%: subdir_distinfo
$(MAKE) $(PARALLELMFLAGS) -C $(@D) $(@F)
# Convenience target to rerun one test, from the top of the build tree
# Example: make test t=wcsmbs/test-wcsnlen
.PHONY: test
test :
@-rm -f $(objpfx)$t.out
$(MAKE) subdir=$(patsubst %/,%,$(dir $t)) -C $(dir $t) ..=../ $(objpfx)$t.out
@cat $(objpfx)$t.test-result
@cat $(objpfx)$t.out
iconvdata/% localedata/% po/%:
$(MAKE) $(PARALLELMFLAGS) -C $(@D) $(@F)
# This is a special goal for people making binary distributions. Normally
# everybody uses the DES based crypt library but for the distribution we
# need the only-MD5 based one as well.
md5-crypt/libmd5crypt:
$(MAKE) $(PARALLELMFLAGS) -C $(@D) $(@F)
# glibc 2.0 contains some header files which aren't used with glibc 2.1
# anymore.
# These rules should remove those headers
ifeq (,$(install_root))
ifeq ($(old-glibc-headers),yes)
install: remove-old-headers
endif
endif
headers2_0 := __math.h bytesex.h confname.h direntry.h elfclass.h \
errnos.h fcntlbits.h huge_val.h ioctl-types.h \
ioctls.h iovec.h jmp_buf.h libc-lock.h local_lim.h \
mathcalls.h mpool.h nan.h ndbm.h posix1_lim.h \
posix2_lim.h posix_opt.h resourcebits.h schedbits.h \
selectbits.h semaphorebits.h sigaction.h sigcontext.h \
signum.h sigset.h sockaddrcom.h socketbits.h stab.def \
statbuf.h statfsbuf.h stdio-lock.h stdio_lim.h \
syscall-list.h termbits.h timebits.h ustatbits.h \
utmpbits.h utsnamelen.h waitflags.h waitstatus.h \
xopen_lim.h gnu/types.h sys/ipc_buf.h \
sys/kernel_termios.h sys/msq_buf.h sys/sem_buf.h \
sys/shm_buf.h sys/socketcall.h sigstack.h
.PHONY: remove-old-headers
remove-old-headers:
rm -f $(addprefix $(inst_includedir)/, $(headers2_0))
-46
View File
@@ -1,46 +0,0 @@
# Copyright (C) 2019-2026 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
# <https://www.gnu.org/licenses/>.
This is the file that gets printed when the user runs "make help",
starting just after the "help-starts-here" line.
help-starts-here
all
The usual default; builds everything but doesn't run the
tests.
check (or tests)
Runs the standard set of tests.
test
Runs one test. Use like this:
make test t=wcsmbs/test-wcsnlen
Note that this will rebuild the test if needed, but will not
rebuild what "make all" would have rebuilt.
build-math-static-tests
Enable extra math tests for static linking. Use like this:
make test t=math/test-float-exp10-static build-math-static-tests=yes
--
Other useful hints:
builddir$ rm testroot.pristine/install.stamp
Forces the testroot to be reinstalled the next time you run
the testsuite (or just rm -rf testroot.pristine)
+7 -33
View File
@@ -1,40 +1,14 @@
srcdir = @srcdir@
# Generated from $Id$.
TEST_CC = @TEST_CC@
TEST_CXX = @TEST_CXX@
test-cc-option-wimplicit-fallthrough = @libc_cv_test_cc_wimplicit_fallthrough@
test-config-cflags-mprefer-vector-width = @libc_cv_test_cc_mprefer_vector_width@
test-config-cflags-signaling-nans = @libc_cv_test_cc_signaling_nans@
test-cc-option-wfree-labels = @libc_cv_test_cc_wfree_labels@
test-cc-option-wmissing-parameter-name = @libc_cv_test_cc_wmissing_parameter_name@
test-enable-cet = @test_enable_cet@
test-have-static-pie = @libc_cv_test_static_pie@
test-supported-fortify = @libc_cv_test_supported_fortify_source@
srcdir = @srcdir@
# Uncomment the line below if you want to do parallel build.
# PARALLELMFLAGS = -j 4
.PHONY: all install bench
# This option is for those who modify the sources and keep them in a
# CVS repository. Sometimes it is necessary to pass options to the cvs
# program (not the command), like -z9 or -x.
# CVSOPTS = -z9
all .DEFAULT:
$(MAKE) -r PARALLELMFLAGS="$(PARALLELMFLAGS)" -C $(srcdir) objdir=`pwd` $@
check xcheck test:
$(MAKE) -r PARALLELMFLAGS="$(PARALLELMFLAGS)" -C $(srcdir) \
CC="$(TEST_CC)" CXX="$(TEST_CXX)" \
cc-option-wimplicit-fallthrough="$(test-cc-option-wimplicit-fallthrough)" \
config-cflags-mprefer-vector-width="$(test-config-cflags-mprefer-vector-width)" \
config-cflags-signaling-nans="$(test-config-cflags-signaling-nans)" \
cc-option-wfree-labels="$(test-cc-option-wfree-labels)" \
cc-option-wmissing-parameter-name="$(test-cc-option-wmissing-parameter-name)" \
enable-cet="$(test-enable-cet)" \
have-static-pie="$(test-have-static-pie)" \
supported-fortify="$(test-supported-fortify)" \
objdir=`pwd` $@
install:
LC_ALL=C; export LC_ALL; \
$(MAKE) -r PARALLELMFLAGS="$(PARALLELMFLAGS)" -C $(srcdir) objdir=`pwd` $@
bench bench-clean bench-build:
$(MAKE) -C $(srcdir)/benchtests $(PARALLELMFLAGS) objdir=`pwd` $@
$(MAKE) -r PARALLELMFLAGS="$(PARALLELMFLAGS)" CVSOPTS="$(CVSOPTS)" -C $(srcdir) objdir=`pwd` $@
+420 -842
View File
File diff suppressed because it is too large Load Diff
+22 -7706
View File
File diff suppressed because it is too large Load Diff
+223
View File
@@ -0,0 +1,223 @@
Feature Test Macros
-------------------
The exact set of features available when you compile a source file
is controlled by which "feature test macros" you define.
If you compile your programs using `gcc -ansi', you get only the
ISO C library features, unless you explicitly request additional
features by defining one or more of the feature macros. *Note GNU CC
Command Options: (gcc.info)Invoking GCC, for more information about GCC
options.
You should define these macros by using `#define' preprocessor
directives at the top of your source code files. These directives
*must* come before any `#include' of a system header file. It is best
to make them the very first thing in the file, preceded only by
comments. You could also use the `-D' option to GCC, but it's better
if you make the source files indicate their own meaning in a
self-contained way.
This system exists to allow the library to conform to multiple
standards. Although the different standards are often described as
supersets of each other, they are usually incompatible because larger
standards require functions with names that smaller ones reserve to the
user program. This is not mere pedantry -- it has been a problem in
practice. For instance, some non-GNU programs define functions named
`getline' that have nothing to do with this library's `getline'. They
would not be compilable if all features were enabled indescriminantly.
This should not be used to verify that a program conforms to a
limited standard. It is insufficent for this purpose, as it will not
protect you from including header files outside the standard, or
relying on semantics undefined within the standard.
- Macro: _POSIX_SOURCE
If you define this macro, then the functionality from the POSIX.1
standard (IEEE Standard 1003.1) is available, as well as all of the
ISO C facilities.
The state of `_POSIX_SOURCE' is irrelevant if you define the macro
`_POSIX_C_SOURCE' to a positive integer.
- Macro: _POSIX_C_SOURCE
Define this macro to a positive integer to control which POSIX
functionality is made available. The greater the value of this
macro, the more functionality is made available.
If you define this macro to a value greater than or equal to `1',
then the functionality from the 1990 edition of the POSIX.1
standard (IEEE Standard 1003.1-1990) is made available.
If you define this macro to a value greater than or equal to `2',
then the functionality from the 1992 edition of the POSIX.2
standard (IEEE Standard 1003.2-1992) is made available.
If you define this macro to a value greater than or equal to
`199309L', then the functionality from the 1993 edition of the
POSIX.1b standard (IEEE Standard 1003.1b-1993) is made available.
Greater values for `_POSIX_C_SOURCE' will enable future extensions.
The POSIX standards process will define these values as necessary,
and the GNU C Library should support them some time after they
become standardized. The 1996 edition of POSIX.1 (ISO/IEC 9945-1:
1996) states that if you define `_POSIX_C_SOURCE' to a value
greater than or equal to `199506L', then the functionality from
the 1996 edition is made available.
The Single Unix Specification specify that setting this macro to
the value `199506L' selects all the values specified by the POSIX
standards plus those of the Single Unix Specification, i.e., is the
same as if `_XOPEN_SOURCE' is set to `500' (see below).
- Macro: _BSD_SOURCE
If you define this macro, functionality derived from 4.3 BSD Unix
is included as well as the ISO C, POSIX.1, and POSIX.2 material.
Some of the features derived from 4.3 BSD Unix conflict with the
corresponding features specified by the POSIX.1 standard. If this
macro is defined, the 4.3 BSD definitions take precedence over the
POSIX definitions.
Due to the nature of some of the conflicts between 4.3 BSD and
POSIX.1, you need to use a special "BSD compatibility library"
when linking programs compiled for BSD compatibility. This is
because some functions must be defined in two different ways, one
of them in the normal C library, and one of them in the
compatibility library. If your program defines `_BSD_SOURCE', you
must give the option `-lbsd-compat' to the compiler or linker when
linking the program, to tell it to find functions in this special
compatibility library before looking for them in the normal C
library.
- Macro: _SVID_SOURCE
If you define this macro, functionality derived from SVID is
included as well as the ISO C, POSIX.1, POSIX.2, and X/Open
material.
- Macro: _XOPEN_SOURCE
- Macro: _XOPEN_SOURCE_EXTENDED
If you define this macro, functionality described in the X/Open
Portability Guide is included. This is a superset of the POSIX.1
and POSIX.2 functionality and in fact `_POSIX_SOURCE' and
`_POSIX_C_SOURCE' are automatically defined.
As the unification of all Unices, functionality only available in
BSD and SVID is also included.
If the macro `_XOPEN_SOURCE_EXTENDED' is also defined, even more
functionality is available. The extra functions will make all
functions available which are necessary for the X/Open Unix brand.
If the macro `_XOPEN_SOURCE' has the value 500 this includes all
functionality described so far plus some new definitions from the
Single Unix Specification, version 2.
- Macro: _LARGEFILE_SOURCE
If this macro is defined some extra functions are available which
rectify a few shortcomings in all previous standards. More
concrete the functions `fseeko' and `ftello' are available.
Without these functions the difference between the ISO C interface
(`fseek', `ftell') and the low-level POSIX interface (`lseek')
would lead to problems.
This macro was introduced as part of the Large File Support
extension (LFS).
- Macro: _LARGEFILE64_SOURCE
If you define this macro an additional set of function gets
available which enables to use on 32 bit systems to use files of
sizes beyond the usual limit of 2GB. This interface is not
available if the system does not support files that large. On
systems where the natural file size limit is greater than 2GB
(i.e., on 64 bit systems) the new functions are identical to the
replaced functions.
The new functionality is made available by a new set of types and
functions which replace existing. The names of these new objects
contain `64' to indicate the intention, e.g., `off_t' vs.
`off64_t' and `fseeko' vs. `fseeko64'.
This macro was introduced as part of the Large File Support
extension (LFS). It is a transition interface for the time 64 bit
offsets are not generally used (see `_FILE_OFFSET_BITS'.
- Macro: _FILE_OFFSET_BITS
This macro lets decide which file system interface shall be used,
one replacing the other. While `_LARGEFILE64_SOURCE' makes the
64 bit interface available as an additional interface
`_FILE_OFFSET_BITS' allows to use the 64 bit interface to replace
the old interface.
If `_FILE_OFFSET_BITS' is undefined or if it is defined to the
value `32' nothing changes. The 32 bit interface is used and
types like `off_t' have a size of 32 bits on 32 bit systems.
If the macro is defined to the value `64' the large file interface
replaces the old interface. I.e., the functions are not made
available under different names as `_LARGEFILE64_SOURCE' does.
Instead the old function names now reference the new functions,
e.g., a call to `fseeko' now indeed calls `fseeko64'.
This macro should only be selected if the system provides
mechanisms for handling large files. On 64 bit systems this macro
has no effect since the `*64' functions are identical to the
normal functions.
This macro was introduced as part of the Large File Support
extension (LFS).
- Macro: _GNU_SOURCE
If you define this macro, everything is included: ISO C, POSIX.1,
POSIX.2, BSD, SVID, X/Open, LFS, and GNU extensions. In the cases
where POSIX.1 conflicts with BSD, the POSIX definitions take
precedence.
If you want to get the full effect of `_GNU_SOURCE' but make the
BSD definitions take precedence over the POSIX definitions, use
this sequence of definitions:
#define _GNU_SOURCE
#define _BSD_SOURCE
#define _SVID_SOURCE
Note that if you do this, you must link your program with the BSD
compatibility library by passing the `-lbsd-compat' option to the
compiler or linker. *Note:* If you forget to do this, you may get
very strange errors at run time.
- Macro: _REENTRANT
- Macro: _THREAD_SAFE
If you define one of these macros, reentrant versions of several
functions get declared. Some of the functions are specified in
POSIX.1c but many others are only available on a few other systems
or are unique to GNU libc. The problem is that the
standardization of the thread safe C library interface still is
behind.
Unlike on some other systems no special version of the C library
must be used for linking. There is only one version but while
compiling this it must have been specified to compile as thread
safe.
We recommend you use `_GNU_SOURCE' in new programs. If you don't
specify the `-ansi' option to GCC and don't define any of these macros
explicitly, the effect is the same as defining `_POSIX_C_SOURCE' to 2
and `_POSIX_SOURCE', `_SVID_SOURCE', and `_BSD_SOURCE' to 1.
When you define a feature test macro to request a larger class of
features, it is harmless to define in addition a feature test macro for
a subset of those features. For example, if you define
`_POSIX_C_SOURCE', then defining `_POSIX_SOURCE' as well has no effect.
Likewise, if you define `_GNU_SOURCE', then defining either
`_POSIX_SOURCE' or `_POSIX_C_SOURCE' or `_SVID_SOURCE' as well has no
effect.
Note, however, that the features of `_BSD_SOURCE' are not a subset of
any of the other feature test macros supported. This is because it
defines BSD features that take precedence over the POSIX features that
are requested by the other macros. For this reason, defining
`_BSD_SOURCE' in addition to the other feature test macros does have an
effect: it causes the BSD features to take priority over the conflicting
POSIX features.
+200
View File
@@ -0,0 +1,200 @@
Open jobs for finishing GNU libc:
---------------------------------
Status: December 1998
If you have time and talent to take over any of the jobs below please
contact <bug-glibc@gnu.org>.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[ 1] Port to new platforms or test current version on formerly supported
platforms.
**** See http://www.gnu.org/software/libc/porting.html for more details.
[ 2] Test compliance with standards. If you have access to recent
standards (IEEE, ISO, ANSI, X/Open, ...) and/or test suites you
could do some checks as the goal is to be compliant with all
standards if they do not contradict each other.
[ 3] The IMHO opinion most important task is to write a more complete
test suite. We cannot get too many people working on this. It is
not difficult to write a test, find a definition of the function
which I normally can provide, if necessary, and start writing tests
to test for compliance. Beside this, take a look at the sources
and write tests which in total test as many paths of execution as
possible.
[ 4] Write translations for the GNU libc message for the so far
unsupported languages. GNU libc is fully internationalized and
users can immediately benefit from this.
Take a look at the matrix in
ftp://ftp.gnu.org/pub/gnu/ABOUT-NLS
for the current status (of course better use a mirror of ftp.gnu.org).
[ 6] Write `long double' versions of the math functions. This should be
done in collaboration with the NetBSD and FreeBSD people.
The libm is in fact fdlibm (not the same as in Linux libc 5).
**** Partly done. But we need someone with numerical experiences for
the rest.
[ 7] Several math functions have to be written:
- exp2
with long double arguments.
Beside this most of the complex math functions which are new in
ISO C 9X should be improved. Writing some of them in assembler is
useful to exploit the parallelism which often is available.
[ 8] If you enjoy assembler programming (as I do --drepper :-) you might
be interested in writing optimized versions for some functions.
Especially the string handling functions can be optimized a lot.
Take a look at
Faster String Functions
Henry Spencer, University of Toronto
Usenix Winter '92, pp. 419--428
or just ask. Currently mostly i?86 and Alpha optimized versions
exist. Please ask before working on this to avoid duplicate
work.
[10] Extend regex and/or rx to work with wide characters and complete
implementation of character class and collation class handling.
It is planned to do a complete rewrite.
[11] Write access function for netmasks, bootparams, and automount
databases for nss_files and nss_db module.
The functions should be embedded in the nss scheme. This is not
hard and not all services must be supported at once.
[14] We need to write a library for on-the-fly transformation of streams
of text. In fact, this would be a recode-library (you know, GNU recode).
This is needed in several places in the GNU libc and I already have
rather concrete plans but so far no possibility to start this.
*** The library is available, now it remains to be used in the streams.
[15] Cleaning up the header files. Ideally, each header style should
follow the "good examples". Each variable and function should have
a short description of the function and its parameters. The prototypes
should always contain variable names which can help to identify their
meaning; better than
int foo __P ((int, int, int, int));
Blargh!
[16] The libio stream file functions should be extended in a way to use
mmap to map the file and use it as the buffer to user sees. For
read-only streams this should be rather easy and it avoids all read()
calls.
A more sophisticated solution would use mmap also for writing. The
standards do not demand that the file on the disk is always in the
correct form so it would be possible to enlarge it always according
to the page size and install the correct length only for fclose() and
fflush() calls.
[18] Based on the sprof program we need tools to analyze the output. The
result should be a link map which specifies in which order the .o
files are placed in the shared object. This should help to improve
code locality and result in a smaller foorprint (in code and data
memory) since less pages are only used in small parts.
[19] A user-level STREAMS implementation should be available if the
kernel does not provide the support.
[20] More conversion modules for iconv(3). Existing modules should be
extended to do things like transliteration if this is wanted.
For often used conversion a direct conversion function should be
available.
[21] The nscd program and the stubs in the libc should be changed so
that each program uses only one socket connect. Take a look at
http://www.cygnus.com/~drepper/nscd.html
An alternative approach is to use an mmap()ed file. The idea is
the following:
- the nscd creates the hash tables and the information it stores
in it in a mmap()ed region. This means no pointers must be
used, only offsets.
- each program using NSS functionality tries to open the file
with the data.
- by checking some timestamp (which the nscd renew frequently)
the programs can test whether the file is still valid
- if the file is valid look through the nscd and locate the
appropriate hash table for the database and lookup the data.
If it is included we are set.
- if the data is not yet in the database we contact the nscd using
the currently implemented methods.
[22] It should be possible to have the information gconv-modules in
a simple database which is faster to access. Using libdb is probably
overkill and loading it would probably be slower than reading the
plain text file. But a file format with a simple hash table and
some data it points to should be fine. Probably it should be
two tables, one for the aliases, one for the mappings. The code
should start similar to this:
if (stat ("gconv-modules", &stp) == 0
&& stat ("gconv-modules.db", &std) == 0
&& stp.st_mtime < std.st_mtime)
{
... use the database ...
{
else
{
... use the plain file if it exists, otherwise the db ...
}
[23] The `strptime' function needs to be completed. This includes among
other things that it must get teached about timezones. The solution
envisioned is to extract the timezones from the ADO timezone
specifications. Special care must be given names which are used
multiple times. Here the precedence should (probably) be according
to the geograhical distance. E.g., the timezone EST should be
treated as the `Eastern Australia Time' instead of the US `Eastern
Standard Time' if the current TZ variable is set to, say,
Australia/Canberra or if the current locale is en_AU.
[25] Sun's nscd version implements a feature where the nscd keeps N entries
for each database current. I.e., if an entries lifespan is over and
it is one of the N entries to be kept the nscd updates the information
instead of removing the entry.
How to decide about which N entries to keep has to be examined.
Factors should be number of uses (of course), influenced by aging.
Just imagine a computer used by several people. The IDs of the current
user should be preferred even if the last user spent more time.
[26] Improve the AIO implementation so that threads do not immediately
terminate if no more requests are available. Let them sleep for a
while and wake them up on demand. If after a while no request arrived
they really can die.
+83 -62
View File
@@ -1,75 +1,96 @@
This directory contains the sources of the GNU C Library.
See the file "version.h" for what release version you have.
This directory contains the version 2.1.2 release of the GNU C Library.
Many bugs have been fixed since the last release.
Some bugs surely remain.
The GNU C Library is the standard system C library for all GNU systems,
and is an important part of what makes up a GNU system. It provides the
system API for all programs written in C and C-compatible languages such
as C++ and Objective C; the runtime facilities of other programming
languages use the C library to access the underlying operating system.
As of this release, the GNU C library is known to run on the following
configurations:
In GNU/Linux systems, the C library works with the Linux kernel to
implement the operating system behavior seen by user applications.
In GNU/Hurd systems, it works with a microkernel and Hurd servers.
*-*-gnu GNU Hurd
i[3456]86-*-linux-gnu Linux-2.x on Intel
m68k-*-linux-gnu Linux-2.x on Motorola 680x0
alpha-*-linux-gnu Linux-2.x on DEC Alpha
powerpc-*-linux-gnu Linux and MkLinux on PowerPC systems
sparc-*-linux-gnu Linux-2.x on SPARC
sparc64-*-linux-gnu Linux-2.x on UltraSPARC
arm-*-none ARM standalone systems
arm-*-linux Linux-2.x on ARM
arm-*-linuxaout Linux-2.x on ARM using a.out binaries
The GNU C Library implements much of the POSIX.1 functionality in the
GNU/Hurd system, using configurations i[4567]86-*-gnu and x86_64-gnu.
When working with Linux kernels, this version of the GNU C Library
requires Linux kernel version 3.2 or later.
Former releases of this library (version 1.09.1 and perhaps earlier
versions) used to run on the following configurations:
Also note that the shared version of the libgcc_s library must be
installed for the pthread library to work correctly.
alpha-dec-osf1
i[3456]86-*-bsd4.3
i[3456]86-*-isc2.2
i[3456]86-*-isc3
i[3456]86-*-sco3.2
i[3456]86-*-sco3.2v4
i[3456]86-*-sysv
i[3456]86-*-sysv4
i[3456]86-force_cpu386-none
i[3456]86-sequent-bsd
i960-nindy960-none
m68k-hp-bsd4.3
m68k-mvme135-none
m68k-mvme136-none
m68k-sony-newsos3
m68k-sony-newsos4
m68k-sun-sunos4
mips-dec-ultrix4
mips-sgi-irix4
sparc-sun-solaris2
sparc-sun-sunos4
The GNU C Library supports these configurations for using Linux kernels:
Since no one has volunteered to test and fix the above configurations,
these are not supported at the moment. It's expected that these don't
work anymore. Porting the library is not hard. If you are interested
in doing a port, please contact the glibc maintainers by sending
electronic mail to <bug-glibc@gnu.org>.
aarch64*-*-linux-gnu
alpha*-*-linux-gnu
arc*-*-linux-gnu
arm-*-linux-gnueabi
csky-*-linux-gnuabiv2
hppa-*-linux-gnu
i[4567]86-*-linux-gnu
x86_64-*-linux-gnu Can build either x86_64 or x32
loongarch64-*-linux-gnu Hardware floating point, LE only.
m68k-*-linux-gnu
microblaze*-*-linux-gnu
mips-*-linux-gnu
mips64-*-linux-gnu
or1k-*-linux-gnu
powerpc-*-linux-gnu Hardware or software floating point, BE only.
powerpc64*-*-linux-gnu Big-endian and little-endian.
s390x-*-linux-gnu
riscv32-*-linux-gnu
riscv64-*-linux-gnu
sh[34]-*-linux-gnu
sparc*-*-linux-gnu
sparc64*-*-linux-gnu
The GNU C library now includes Michael Glad's Ultra Fast Crypt, which
provides the Unix `crypt' function, plus some other entry points.
Because of the United States export restriction on DES
implementations, we are distributing this code separately from the
rest of the C library. There is an extra distribution tar file just
for crypt; it is called `glibc-crypt-2.1.2.tar.gz'. You can just
unpack the crypt distribution along with the rest of the C library and
build; you can also build the library without getting crypt. Users
outside the USA can get the crypt distribution via anonymous FTP from
ftp.gwdg.de [134.76.11.100] in the directory pub/linux/glibc, or
another archive site outside the USA. Archive maintainers are
encouraged to copy this distribution to their archives outside the
USA. Please get it from ftp.gwdg.de; transferring this distribution
from ftp.gnu.org (or any other site in the USA) to a site outside the
USA is in violation of US export laws.
If you are interested in doing a port, please contact the glibc
maintainers; see https://www.gnu.org/software/libc/ for more
information.
Beside the separate crypt tar file there are some more add-ons which can be
used together with GNU libc. They are designed in a way to ease the
installation by integrating them in the libc source tree. Simply get the
add-ons you need and use the --enable-add-ons option of the `configure'
script to tell where the add-ons are found. Please read the FAQ file for
more details.
See the file INSTALL to find out how to configure, build, and install
the GNU C Library. You might also consider reading the WWW pages for
the C library at https://www.gnu.org/software/libc/.
See the file INSTALL to find out how to configure, build, install, and port
the GNU C library. You might also consider reading the WWW pages for the
GNU libc at http://www.gnu.org/software/libc/libc.html.
The GNU C Library is (almost) completely documented by the Texinfo manual
found in the `manual/' subdirectory. The manual is still being updated
and contains some known errors and omissions; we regret that we do not
have the resources to work on the manual as much as we would like. For
corrections to the manual, please file a bug in the `manual' component,
following the bug-reporting instructions below. Please be sure to check
the manual in the current development sources to see if your problem has
already been corrected.
The GNU C Library is completely documented by the Texinfo manual found
in the `manual/' subdirectory. The manual is still being updated and
contains some known errors and omissions; we regret that we do not
have the resources to work on the manual as much as we would like.
Please send comments on the manual to <bug-glibc-manual@gnu.org>, and
not to the library bug-reporting address.
Please see https://sourceware.org/glibc/wiki/Bugzilla%20Procedures for bug
reporting information. We are now using the Bugzilla system to track all
bug reports. This web page gives detailed information on how to report
bugs properly.
The file NOTES contains a description of the feature-test macros used
in the GNU C library, explaining how you can tell the library what
facilities you want it to make available.
We prefer to get bug reports sent using the `glibcbug' shell script which
is installed together with the rest of the GNU libc to <bugs@gnu.org>.
Simply run this shell script and fill in the information. Nevertheless
you can still send bug reports to <bug-glibc@gnu.org> as normal electronic
mails.
The GNU C Library is free software. See the file COPYING.LIB for copying
conditions, and LICENSES for notices about a few contributions that require
these additional notices to be distributed. License copyright years may be
listed using range notation, e.g., 1996-2015, indicating that every year in
the range, inclusive, is a copyrightable year that would otherwise be listed
individually.
conditions.
+287
View File
@@ -0,0 +1,287 @@
GNU libc SNAPSHOT SYSTEM
(general info)
Updated 1997-9-26
WHAT ARE GNU libc SNAPSHOTS
---------------------------
Snapshots are an "image" of the main glibc development tree, captured at a
particular random instant in time. When you use the snapshots, you should be
able to maintain a local copy of libc that is no more than one day older than
the official source tree used by the libc maintainers.
The primary purpose of providing snapshots is to widen the group of motivated
developers that would like to help test, debug, and enhance glibc, by providing
you with access to the "latest and greatest" source. This has several
advantages, and several disadvantages.
First the advantages:
o Once we have a large base of motivated testers using the snapshots,
this should provide good coverage across all currently supported
glibc hosts and targets. If a new bug is introduced in glibc due to
fixing another bug or ongoing development, it should become
obvious much more quickly and get fixed before the next general
net release. This should help to reduce the chances of glibc being
released to the general public with a major bug that went unnoticed
during the release cycle testing because they are machine dependent.
We hope to greatly improve glibc's stability and reliability by
involving more people and more execution environments in the
prerelease testing.
o With access to the latest source, any diffs that you send to fix
bugs or add new features should be much easier for the glibc team
to merge into the official source base (after suitable review
of course). This encourages us to merge your changes quicker,
while they are still "fresh".
o Once your diffs are merged, you can obtain a new copy of glibc
containing your changes almost immediately. Thus you do not
have to maintain local copies of your changes for any longer
than it takes to get them merged into the official source base.
This encourages you to send in changes quicker.
And the disadvantages:
o The snapshot you get will be largely untested and of unknown quality.
It may fail to configure or compile. It may have serious bugs.
You should always keep a copy of the last known working version
before updating to the current snapshot, or at least be able to
regenerate a working version if the latest snapshot is unusable
in your environment for some reason.
If a production version of glibc has a bug and a snapshot has the fix,
and you care about stability, you should put only the fix for that
particular problem into your production version. Of course, if you
are eager to test glibc, you can use the snapshot versions in your
daily work, but users who have not been consulted about whether they
feel like testing glibc should generally have something which is at
least as bug free as the last released version.
o Providing timely response to your questions, bug reports, and
submitted patches will require the glibc development team to allocate
time from an already thin time budget. Please try to help us make
this time as productive as possible. See the section below about
how to submit changes.
WHO SHOULD TRY THE SNAPSHOTS
----------------------------
Remember, these are snapshots not tested versions. So if you use
these versions you should be able to
o make sure your system stays usable
o locate and hopefully fix problems
o to port glibc to a new target yourself
You should not use the snapshots if
o your system is needed in a production environment which needs
stability
o you expect us to fix your problems since you somehow depend on them.
You must be willing to fix the problems yourself, we don't want to
see "I have problems, fix this" messages.
HOW TO GET THE SNAPSHOTS
------------------------
At the moment we provide a full snapshot weekly (every sunday), so
that users getting a snapshot for the first time, or updating after
a long period of not updating, can get the latest version in a single
operation. Along with the full snapshot, we will provide incremental
diffs on a nearly daily basis (whenever code changes). Each daily
diff will be relative to the source tree after applying all previous
daily diffs. The daily diffs are for people who have relatively low
bandwidth ftp or uucp connections.
The files will be available via anonymous ftp from alpha.gnu.org, in
directory /gnu/libc and on linux.kernel.org in /pub/software/libs/glibc. The
directories should look something like:
libc-970921.tar.gz
libc-970917-970922.diff.gz
libc-970922-970925.diff.gz
.
.
.
Please note that the snapshots on alpha.gnu.org and on
linux.kernel.org are not always in sync. Patches to some files might
appear a day a diff earlier or later on alpha than on kernel.
Use always alpha or always kernel but don't mix them.
There are sometimes additionally test releases of the add-ons available in
these directories. If a new version of an add-on is available it is normally
required for the corresponding snapshot so always pay attention for these.
Note that we provide GNU gzip compressed files only. You can ftp gzip
from ftp.gnu.org in directory pub/gnu.
In some cases the dates for diffs and snapshots do not match like in the
example above. The full release is for 970921 but the patch is for
970917-970922. This only means that nothing changed between 970917 and 970922
and that you have to use this patch on top of the 970921 snapshot since the
patch is made on 970922.
Also, as the gcc developers did with their gcc snapshot system, even though we
will make the snapshots available on a publically accessible ftp area, we ask
that recipients not widely publicise their availability. The motivation for
this request is not to hoard them, but to avoid the situation where the
general glibc user base naively attempts to use the snapshots, has trouble with
them, complains publically, and the reputation of glibc declines because of a
perception of instability or lack of quality control.
GLIBC TEST SUITE
----------------
A test suite is distributed as an integral part of the snapshots. A simple
"make check" in your build directory is sufficient to run the tests. glibc
should pass all tests and if any fails, please report it. A failure might not
originate from a bug in glibc but also from bugs in the tools, e.g. with gcc
2.7.2.x the math tests fail some of the tests because of compiler bugs.
Note that the test suite is still in its infancy. The tests themselves only
cover a small portion of libc features, and where tests do exist for a feature
they are not exhaustive. New tests are welcome.
GETTING HELP, GLIBC DISCUSSIONS, etc
------------------------------------
People who want to help with glibc and who test out snapshots
regularly should get on the libc-alpha@sourceware.cygnus.com mailing
list by sending an email to libc-alpha-subscribe@sourceware.cygnus.com.
This list is meant (as the name suggests) for the discussion of test
releases and also reports for them. People who are on this list are
welcome to post questions of general interest.
People who are not only willing to test the snapshots but instead
really want to help developing glibc should contact
libc-hacker-subscribe@sourceware.cygnus.com.org to be put on the developers
mailing list. This list is really only meant for developers. No
questions about installation problems or other simple topics are
wanted nor will they be answered.
Do *not* send any questions about the snapshots or patches specific to the
snapshots to bug-glibc@gnu.org. Nobody there will have any idea what
you are talking about and it will just cause confusion.
BUG REPORTS
-----------
Send bug reports directly to Ulrich Drepper <drepper@gnu.org>. Please
do *not* use the glibcbug script for reporting bugs in the snapshots.
glibcbug should only be used for problems with the official released versions.
We don't like bug reports in the bug database because otherwise the impression
of instability or lack of quality control of glibc as a whole might manifest
in people's mind.
Note that since no testing is done on the snapshots, and snapshots may even be
made when glibc is in an inconsistent state, it may not be unusual for an
occasional snapshot to have a very obvious bug, such as failure to compile on
*any* machine. It is likely that such bugs will be fixed by the next
snapshot, so it really isn't necessary to report them unless they persist for
a couple of days.
Missing files should always be reported, since they usually mean there is a
problem with the snapshot-generating process and we won't know about them
unless someone tells us.
Bugs which are non-obvious, such as failure to compile on only a specific
machine, a new machine dependent or obscure bug (particularly one not detected
by the testsuite), etc should be reported when you discover them, or have a
suggested patch to fix them.
FORMAT FOR PATCHES
------------------
If you have a fix for a bug, or an enhancement to submit, send your patch to
Ulrich Drepper <drepper@gnu.org>. Here are some simple guidelines for
submitting patches:
o Use "unified diffs" for patches. A typical command for generating
context diffs is "diff -ru glibc-old glibc-patched".
o Use the "minimalist approach" for patches. That is, each patch
should address only one particular bug, new feature, etc. Do not
save up many unrelated changes and submit them all in one big
patch, since in general, the larger the patch the more difficult
it is for us to decide if the patch is either correct or
desirable. And if we find something about the patch that needs
to be corrected before it can be installed, we would have to reject
the entire patch, which might contain changes which otherwise would
be accepted if submitted separately.
o Submit a sample ChangeLog entry with your patch. See the existing
glibc ChangeLog for examples of what a ChangeLog entry should look
like. The emacs command ^X4A will create a ChangeLog entry header
for you.
BUILDING SNAPSHOTS
------------------
The `best' way to build glibc is to use an extra directory, e.g.:
tar xzf libc-970921.tar.gz
mkdir build-glibc
cd build-glibc
../libc-970921/configure ...
In this way you can easily clean up (since `make clean' doesn't work at
the moment) and rebuild glibc.
NECESSARY TOOLS
---------------
For the recommended versions of gcc, binutils, make, texinfo, gettext,
autoconf and other tools which might be especially needed when using patches,
please read the file INSTALL.
HOW CAN YOU HELP
----------------
It helps already a lot if you just install glibc on your system and try to
solve any problems. You might want to look at the file `PROJECTS' and help
with one of those projects, fix some bugs (see `BUGS' or the bug database),
port to an unsupported platform, ...
FURTHER DOCUMENTATION
---------------------
A lot of questions are answered in the FAQ. The files `INSTALL', `README' and
`NOTES' contain the most important documentation. Furthermore glibc has its
own 700+ pages info documentation, ...
And finally a word of caution: The libc is one of the most fundamental parts
of your system - and these snapshots are untested and come without any
guarantee or warranty. You might be lucky and everything works or you might
crash your system. If you install a glibc snapshot as primary library, you
should have a backup somewhere.
On many systems it is also a problem to replace the libc while the system is
running. In the worst case on broken OSes some systems crash. On better
systems you can move the old libc aside but removing it will cause problems
since there are still processes using this libc image and so you might have to
check the filesystem to get rid of the libc data. One good alternative (which
is also safer) is to use a chroot'ed environment.
Thanks for your help and support.
Thanks to Fred Fish from Cygnus for the original version of this text
(for GDB).
Ulrich Drepper
+856
View File
@@ -0,0 +1,856 @@
The following functions for the `long double' versions of the libm
function have to be written:
e_acosl.c
e_asinl.c
e_atan2l.c
e_expl.c
e_fmodl.c
e_hypotl.c
e_j0l.c
e_j1l.c
e_jnl.c
e_lgammal_r.c
e_logl.c
e_log10l.c
e_powl.c
e_rem_pio2l.c
e_sinhl.c
e_sqrtl.c
k_cosl.c
k_rem_pio2l.c
k_sinl.c
k_tanl.c
s_atanl.c
s_erfl.c
s_expm1l.c
s_log1pl.c
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Methods
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
arcsin
~~~~~~
* Since asin(x) = x + x^3/6 + x^5*3/40 + x^7*15/336 + ...
* we approximate asin(x) on [0,0.5] by
* asin(x) = x + x*x^2*R(x^2)
* where
* R(x^2) is a rational approximation of (asin(x)-x)/x^3
* and its remez error is bounded by
* |(asin(x)-x)/x^3 - R(x^2)| < 2^(-58.75)
*
* For x in [0.5,1]
* asin(x) = pi/2-2*asin(sqrt((1-x)/2))
* Let y = (1-x), z = y/2, s := sqrt(z), and pio2_hi+pio2_lo=pi/2;
* then for x>0.98
* asin(x) = pi/2 - 2*(s+s*z*R(z))
* = pio2_hi - (2*(s+s*z*R(z)) - pio2_lo)
* For x<=0.98, let pio4_hi = pio2_hi/2, then
* f = hi part of s;
* c = sqrt(z) - f = (z-f*f)/(s+f) ...f+c=sqrt(z)
* and
* asin(x) = pi/2 - 2*(s+s*z*R(z))
* = pio4_hi+(pio4-2s)-(2s*z*R(z)-pio2_lo)
* = pio4_hi+(pio4-2f)-(2s*z*R(z)-(pio2_lo+2c))
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
arccos
~~~~~~
* Method :
* acos(x) = pi/2 - asin(x)
* acos(-x) = pi/2 + asin(x)
* For |x|<=0.5
* acos(x) = pi/2 - (x + x*x^2*R(x^2)) (see asin.c)
* For x>0.5
* acos(x) = pi/2 - (pi/2 - 2asin(sqrt((1-x)/2)))
* = 2asin(sqrt((1-x)/2))
* = 2s + 2s*z*R(z) ...z=(1-x)/2, s=sqrt(z)
* = 2f + (2c + 2s*z*R(z))
* where f=hi part of s, and c = (z-f*f)/(s+f) is the correction term
* for f so that f+c ~ sqrt(z).
* For x<-0.5
* acos(x) = pi - 2asin(sqrt((1-|x|)/2))
* = pi - 0.5*(s+s*z*R(z)), where z=(1-|x|)/2,s=sqrt(z)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atan2
~~~~~
* Method :
* 1. Reduce y to positive by atan2(y,x)=-atan2(-y,x).
* 2. Reduce x to positive by (if x and y are unexceptional):
* ARG (x+iy) = arctan(y/x) ... if x > 0,
* ARG (x+iy) = pi - arctan[y/(-x)] ... if x < 0,
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atan
~~~~
* Method
* 1. Reduce x to positive by atan(x) = -atan(-x).
* 2. According to the integer k=4t+0.25 chopped, t=x, the argument
* is further reduced to one of the following intervals and the
* arctangent of t is evaluated by the corresponding formula:
*
* [0,7/16] atan(x) = t-t^3*(a1+t^2*(a2+...(a10+t^2*a11)...)
* [7/16,11/16] atan(x) = atan(1/2) + atan( (t-0.5)/(1+t/2) )
* [11/16.19/16] atan(x) = atan( 1 ) + atan( (t-1)/(1+t) )
* [19/16,39/16] atan(x) = atan(3/2) + atan( (t-1.5)/(1+1.5t) )
* [39/16,INF] atan(x) = atan(INF) + atan( -1/t )
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
exp
~~~
* Method
* 1. Argument reduction:
* Reduce x to an r so that |r| <= 0.5*ln2 ~ 0.34658.
* Given x, find r and integer k such that
*
* x = k*ln2 + r, |r| <= 0.5*ln2.
*
* Here r will be represented as r = hi-lo for better
* accuracy.
*
* 2. Approximation of exp(r) by a special rational function on
* the interval [0,0.34658]:
* Write
* R(r**2) = r*(exp(r)+1)/(exp(r)-1) = 2 + r*r/6 - r**4/360 + ...
* We use a special Reme algorithm on [0,0.34658] to generate
* a polynomial of degree 5 to approximate R. The maximum error
* of this polynomial approximation is bounded by 2**-59. In
* other words,
* R(z) ~ 2.0 + P1*z + P2*z**2 + P3*z**3 + P4*z**4 + P5*z**5
* (where z=r*r, and the values of P1 to P5 are listed below)
* and
* | 5 | -59
* | 2.0+P1*z+...+P5*z - R(z) | <= 2
* | |
* The computation of exp(r) thus becomes
* 2*r
* exp(r) = 1 + -------
* R - r
* r*R1(r)
* = 1 + r + ----------- (for better accuracy)
* 2 - R1(r)
* where
* 2 4 10
* R1(r) = r - (P1*r + P2*r + ... + P5*r ).
*
* 3. Scale back to obtain exp(x):
* From step 1, we have
* exp(x) = 2^k * exp(r)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
hypot
~~~~~
* If (assume round-to-nearest) z=x*x+y*y
* has error less than sqrt(2)/2 ulp, than
* sqrt(z) has error less than 1 ulp (exercise).
*
* So, compute sqrt(x*x+y*y) with some care as
* follows to get the error below 1 ulp:
*
* Assume x>y>0;
* (if possible, set rounding to round-to-nearest)
* 1. if x > 2y use
* x1*x1+(y*y+(x2*(x+x1))) for x*x+y*y
* where x1 = x with lower 32 bits cleared, x2 = x-x1; else
* 2. if x <= 2y use
* t1*y1+((x-y)*(x-y)+(t1*y2+t2*y))
* where t1 = 2x with lower 32 bits cleared, t2 = 2x-t1,
* y1= y with lower 32 bits chopped, y2 = y-y1.
*
* NOTE: scaling may be necessary if some argument is too
* large or too tiny
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
j0/y0
~~~~~
* Method -- j0(x):
* 1. For tiny x, we use j0(x) = 1 - x^2/4 + x^4/64 - ...
* 2. Reduce x to |x| since j0(x)=j0(-x), and
* for x in (0,2)
* j0(x) = 1-z/4+ z^2*R0/S0, where z = x*x;
* (precision: |j0-1+z/4-z^2R0/S0 |<2**-63.67 )
* for x in (2,inf)
* j0(x) = sqrt(2/(pi*x))*(p0(x)*cos(x0)-q0(x)*sin(x0))
* where x0 = x-pi/4. It is better to compute sin(x0),cos(x0)
* as follow:
* cos(x0) = cos(x)cos(pi/4)+sin(x)sin(pi/4)
* = 1/sqrt(2) * (cos(x) + sin(x))
* sin(x0) = sin(x)cos(pi/4)-cos(x)sin(pi/4)
* = 1/sqrt(2) * (sin(x) - cos(x))
* (To avoid cancellation, use
* sin(x) +- cos(x) = -cos(2x)/(sin(x) -+ cos(x))
* to compute the worse one.)
*
* Method -- y0(x):
* 1. For x<2.
* Since
* y0(x) = 2/pi*(j0(x)*(ln(x/2)+Euler) + x^2/4 - ...)
* therefore y0(x)-2/pi*j0(x)*ln(x) is an even function.
* We use the following function to approximate y0,
* y0(x) = U(z)/V(z) + (2/pi)*(j0(x)*ln(x)), z= x^2
* where
* U(z) = u00 + u01*z + ... + u06*z^6
* V(z) = 1 + v01*z + ... + v04*z^4
* with absolute approximation error bounded by 2**-72.
* Note: For tiny x, U/V = u0 and j0(x)~1, hence
* y0(tiny) = u0 + (2/pi)*ln(tiny), (choose tiny<2**-27)
* 2. For x>=2.
* y0(x) = sqrt(2/(pi*x))*(p0(x)*cos(x0)+q0(x)*sin(x0))
* where x0 = x-pi/4. It is better to compute sin(x0),cos(x0)
* by the method mentioned above.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
j1/y1
~~~~~
* Method -- j1(x):
* 1. For tiny x, we use j1(x) = x/2 - x^3/16 + x^5/384 - ...
* 2. Reduce x to |x| since j1(x)=-j1(-x), and
* for x in (0,2)
* j1(x) = x/2 + x*z*R0/S0, where z = x*x;
* (precision: |j1/x - 1/2 - R0/S0 |<2**-61.51 )
* for x in (2,inf)
* j1(x) = sqrt(2/(pi*x))*(p1(x)*cos(x1)-q1(x)*sin(x1))
* y1(x) = sqrt(2/(pi*x))*(p1(x)*sin(x1)+q1(x)*cos(x1))
* where x1 = x-3*pi/4. It is better to compute sin(x1),cos(x1)
* as follow:
* cos(x1) = cos(x)cos(3pi/4)+sin(x)sin(3pi/4)
* = 1/sqrt(2) * (sin(x) - cos(x))
* sin(x1) = sin(x)cos(3pi/4)-cos(x)sin(3pi/4)
* = -1/sqrt(2) * (sin(x) + cos(x))
* (To avoid cancellation, use
* sin(x) +- cos(x) = -cos(2x)/(sin(x) -+ cos(x))
* to compute the worse one.)
*
* Method -- y1(x):
* 1. screen out x<=0 cases: y1(0)=-inf, y1(x<0)=NaN
* 2. For x<2.
* Since
* y1(x) = 2/pi*(j1(x)*(ln(x/2)+Euler)-1/x-x/2+5/64*x^3-...)
* therefore y1(x)-2/pi*j1(x)*ln(x)-1/x is an odd function.
* We use the following function to approximate y1,
* y1(x) = x*U(z)/V(z) + (2/pi)*(j1(x)*ln(x)-1/x), z= x^2
* where for x in [0,2] (abs err less than 2**-65.89)
* U(z) = U0[0] + U0[1]*z + ... + U0[4]*z^4
* V(z) = 1 + v0[0]*z + ... + v0[4]*z^5
* Note: For tiny x, 1/x dominate y1 and hence
* y1(tiny) = -2/pi/tiny, (choose tiny<2**-54)
* 3. For x>=2.
* y1(x) = sqrt(2/(pi*x))*(p1(x)*sin(x1)+q1(x)*cos(x1))
* where x1 = x-3*pi/4. It is better to compute sin(x1),cos(x1)
* by method mentioned above.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
jn/yn
~~~~~
* Note 2. About jn(n,x), yn(n,x)
* For n=0, j0(x) is called,
* for n=1, j1(x) is called,
* for n<x, forward recursion us used starting
* from values of j0(x) and j1(x).
* for n>x, a continued fraction approximation to
* j(n,x)/j(n-1,x) is evaluated and then backward
* recursion is used starting from a supposed value
* for j(n,x). The resulting value of j(0,x) is
* compared with the actual value to correct the
* supposed value of j(n,x).
*
* yn(n,x) is similar in all respects, except
* that forward recursion is used for all
* values of n>1.
jn:
/* (x >> n**2)
* Jn(x) = cos(x-(2n+1)*pi/4)*sqrt(2/x*pi)
* Yn(x) = sin(x-(2n+1)*pi/4)*sqrt(2/x*pi)
* Let s=sin(x), c=cos(x),
* xn=x-(2n+1)*pi/4, sqt2 = sqrt(2),then
*
* n sin(xn)*sqt2 cos(xn)*sqt2
* ----------------------------------
* 0 s-c c+s
* 1 -s-c -c+s
* 2 -s+c -c-s
* 3 s+c c-s
...
/* x is tiny, return the first Taylor expansion of J(n,x)
* J(n,x) = 1/n!*(x/2)^n - ...
...
/* use backward recurrence */
/* x x^2 x^2
* J(n,x)/J(n-1,x) = ---- ------ ------ .....
* 2n - 2(n+1) - 2(n+2)
*
* 1 1 1
* (for large x) = ---- ------ ------ .....
* 2n 2(n+1) 2(n+2)
* -- - ------ - ------ -
* x x x
*
* Let w = 2n/x and h=2/x, then the above quotient
* is equal to the continued fraction:
* 1
* = -----------------------
* 1
* w - -----------------
* 1
* w+h - ---------
* w+2h - ...
*
* To determine how many terms needed, let
* Q(0) = w, Q(1) = w(w+h) - 1,
* Q(k) = (w+k*h)*Q(k-1) - Q(k-2),
* When Q(k) > 1e4 good for single
* When Q(k) > 1e9 good for double
* When Q(k) > 1e17 good for quadruple
...
/* estimate log((2/x)^n*n!) = n*log(2/x)+n*ln(n)
* Hence, if n*(log(2n/x)) > ...
* single 8.8722839355e+01
* double 7.09782712893383973096e+02
* long double 1.1356523406294143949491931077970765006170e+04
* then recurrent value may overflow and the result is
* likely underflow to zero
yn:
/* (x >> n**2)
* Jn(x) = cos(x-(2n+1)*pi/4)*sqrt(2/x*pi)
* Yn(x) = sin(x-(2n+1)*pi/4)*sqrt(2/x*pi)
* Let s=sin(x), c=cos(x),
* xn=x-(2n+1)*pi/4, sqt2 = sqrt(2),then
*
* n sin(xn)*sqt2 cos(xn)*sqt2
* ----------------------------------
* 0 s-c c+s
* 1 -s-c -c+s
* 2 -s+c -c-s
* 3 s+c c-s
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
lgamma
~~~~~~
* Method:
* 1. Argument Reduction for 0 < x <= 8
* Since gamma(1+s)=s*gamma(s), for x in [0,8], we may
* reduce x to a number in [1.5,2.5] by
* lgamma(1+s) = log(s) + lgamma(s)
* for example,
* lgamma(7.3) = log(6.3) + lgamma(6.3)
* = log(6.3*5.3) + lgamma(5.3)
* = log(6.3*5.3*4.3*3.3*2.3) + lgamma(2.3)
* 2. Polynomial approximation of lgamma around its
* minimun ymin=1.461632144968362245 to maintain monotonicity.
* On [ymin-0.23, ymin+0.27] (i.e., [1.23164,1.73163]), use
* Let z = x-ymin;
* lgamma(x) = -1.214862905358496078218 + z^2*poly(z)
* where
* poly(z) is a 14 degree polynomial.
* 2. Rational approximation in the primary interval [2,3]
* We use the following approximation:
* s = x-2.0;
* lgamma(x) = 0.5*s + s*P(s)/Q(s)
* with accuracy
* |P/Q - (lgamma(x)-0.5s)| < 2**-61.71
* Our algorithms are based on the following observation
*
* zeta(2)-1 2 zeta(3)-1 3
* lgamma(2+s) = s*(1-Euler) + --------- * s - --------- * s + ...
* 2 3
*
* where Euler = 0.5771... is the Euler constant, which is very
* close to 0.5.
*
* 3. For x>=8, we have
* lgamma(x)~(x-0.5)log(x)-x+0.5*log(2pi)+1/(12x)-1/(360x**3)+....
* (better formula:
* lgamma(x)~(x-0.5)*(log(x)-1)-.5*(log(2pi)-1) + ...)
* Let z = 1/x, then we approximation
* f(z) = lgamma(x) - (x-0.5)(log(x)-1)
* by
* 3 5 11
* w = w0 + w1*z + w2*z + w3*z + ... + w6*z
* where
* |w - f(z)| < 2**-58.74
*
* 4. For negative x, since (G is gamma function)
* -x*G(-x)*G(x) = pi/sin(pi*x),
* we have
* G(x) = pi/(sin(pi*x)*(-x)*G(-x))
* since G(-x) is positive, sign(G(x)) = sign(sin(pi*x)) for x<0
* Hence, for x<0, signgam = sign(sin(pi*x)) and
* lgamma(x) = log(|Gamma(x)|)
* = log(pi/(|x*sin(pi*x)|)) - lgamma(-x);
* Note: one should avoid compute pi*(-x) directly in the
* computation of sin(pi*(-x)).
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
log
~~~
* Method :
* 1. Argument Reduction: find k and f such that
* x = 2^k * (1+f),
* where sqrt(2)/2 < 1+f < sqrt(2) .
*
* 2. Approximation of log(1+f).
* Let s = f/(2+f) ; based on log(1+f) = log(1+s) - log(1-s)
* = 2s + 2/3 s**3 + 2/5 s**5 + .....,
* = 2s + s*R
* We use a special Reme algorithm on [0,0.1716] to generate
* a polynomial of degree 14 to approximate R The maximum error
* of this polynomial approximation is bounded by 2**-58.45. In
* other words,
* 2 4 6 8 10 12 14
* R(z) ~ Lg1*s +Lg2*s +Lg3*s +Lg4*s +Lg5*s +Lg6*s +Lg7*s
* (the values of Lg1 to Lg7 are listed in the program)
* and
* | 2 14 | -58.45
* | Lg1*s +...+Lg7*s - R(z) | <= 2
* | |
* Note that 2s = f - s*f = f - hfsq + s*hfsq, where hfsq = f*f/2.
* In order to guarantee error in log below 1ulp, we compute log
* by
* log(1+f) = f - s*(f - R) (if f is not too large)
* log(1+f) = f - (hfsq - s*(hfsq+R)). (better accuracy)
*
* 3. Finally, log(x) = k*ln2 + log(1+f).
* = k*ln2_hi+(f-(hfsq-(s*(hfsq+R)+k*ln2_lo)))
* Here ln2 is split into two floating point number:
* ln2_hi + ln2_lo,
* where n*ln2_hi is always exact for |n| < 2000.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
log10
~~~~~
* Method :
* Let log10_2hi = leading 40 bits of log10(2) and
* log10_2lo = log10(2) - log10_2hi,
* ivln10 = 1/log(10) rounded.
* Then
* n = ilogb(x),
* if(n<0) n = n+1;
* x = scalbn(x,-n);
* log10(x) := n*log10_2hi + (n*log10_2lo + ivln10*log(x))
*
* Note 1:
* To guarantee log10(10**n)=n, where 10**n is normal, the rounding
* mode must set to Round-to-Nearest.
* Note 2:
* [1/log(10)] rounded to 53 bits has error .198 ulps;
* log10 is monotonic at all binary break points.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
pow
~~~
* Method: Let x = 2 * (1+f)
* 1. Compute and return log2(x) in two pieces:
* log2(x) = w1 + w2,
* where w1 has 53-24 = 29 bit trailing zeros.
* 2. Perform y*log2(x) = n+y' by simulating muti-precision
* arithmetic, where |y'|<=0.5.
* 3. Return x**y = 2**n*exp(y'*log2)
*
* Special cases:
* 1. (anything) ** 0 is 1
* 2. (anything) ** 1 is itself
* 3. (anything) ** NAN is NAN
* 4. NAN ** (anything except 0) is NAN
* 5. +-(|x| > 1) ** +INF is +INF
* 6. +-(|x| > 1) ** -INF is +0
* 7. +-(|x| < 1) ** +INF is +0
* 8. +-(|x| < 1) ** -INF is +INF
* 9. +-1 ** +-INF is NAN
* 10. +0 ** (+anything except 0, NAN) is +0
* 11. -0 ** (+anything except 0, NAN, odd integer) is +0
* 12. +0 ** (-anything except 0, NAN) is +INF
* 13. -0 ** (-anything except 0, NAN, odd integer) is +INF
* 14. -0 ** (odd integer) = -( +0 ** (odd integer) )
* 15. +INF ** (+anything except 0,NAN) is +INF
* 16. +INF ** (-anything except 0,NAN) is +0
* 17. -INF ** (anything) = -0 ** (-anything)
* 18. (-anything) ** (integer) is (-1)**(integer)*(+anything**integer)
* 19. (-anything except 0 and inf) ** (non-integer) is NAN
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rem_pio2 return the remainder of x rem pi/2 in y[0]+y[1]
~~~~~~~~
This is one of the basic functions which is written with highest accuracy
in mind.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sinh
~~~~
* Method :
* mathematically sinh(x) if defined to be (exp(x)-exp(-x))/2
* 1. Replace x by |x| (sinh(-x) = -sinh(x)).
* 2.
* E + E/(E+1)
* 0 <= x <= 22 : sinh(x) := --------------, E=expm1(x)
* 2
*
* 22 <= x <= lnovft : sinh(x) := exp(x)/2
* lnovft <= x <= ln2ovft: sinh(x) := exp(x/2)/2 * exp(x/2)
* ln2ovft < x : sinh(x) := x*shuge (overflow)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sqrt
~~~~
* Method:
* Bit by bit method using integer arithmetic. (Slow, but portable)
* 1. Normalization
* Scale x to y in [1,4) with even powers of 2:
* find an integer k such that 1 <= (y=x*2^(2k)) < 4, then
* sqrt(x) = 2^k * sqrt(y)
* 2. Bit by bit computation
* Let q = sqrt(y) truncated to i bit after binary point (q = 1),
* i 0
* i+1 2
* s = 2*q , and y = 2 * ( y - q ). (1)
* i i i i
*
* To compute q from q , one checks whether
* i+1 i
*
* -(i+1) 2
* (q + 2 ) <= y. (2)
* i
* -(i+1)
* If (2) is false, then q = q ; otherwise q = q + 2 .
* i+1 i i+1 i
*
* With some algebric manipulation, it is not difficult to see
* that (2) is equivalent to
* -(i+1)
* s + 2 <= y (3)
* i i
*
* The advantage of (3) is that s and y can be computed by
* i i
* the following recurrence formula:
* if (3) is false
*
* s = s , y = y ; (4)
* i+1 i i+1 i
*
* otherwise,
* -i -(i+1)
* s = s + 2 , y = y - s - 2 (5)
* i+1 i i+1 i i
*
* One may easily use induction to prove (4) and (5).
* Note. Since the left hand side of (3) contain only i+2 bits,
* it does not necessary to do a full (53-bit) comparison
* in (3).
* 3. Final rounding
* After generating the 53 bits result, we compute one more bit.
* Together with the remainder, we can decide whether the
* result is exact, bigger than 1/2ulp, or less than 1/2ulp
* (it will never equal to 1/2ulp).
* The rounding mode can be detected by checking whether
* huge + tiny is equal to huge, and whether huge - tiny is
* equal to huge for some floating point number "huge" and "tiny".
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cos
~~~
* kernel cos function on [-pi/4, pi/4], pi/4 ~ 0.785398164
* Input x is assumed to be bounded by ~pi/4 in magnitude.
* Input y is the tail of x.
*
* Algorithm
* 1. Since cos(-x) = cos(x), we need only to consider positive x.
* 2. if x < 2^-27 (hx<0x3e400000 0), return 1 with inexact if x!=0.
* 3. cos(x) is approximated by a polynomial of degree 14 on
* [0,pi/4]
* 4 14
* cos(x) ~ 1 - x*x/2 + C1*x + ... + C6*x
* where the remez error is
*
* | 2 4 6 8 10 12 14 | -58
* |cos(x)-(1-.5*x +C1*x +C2*x +C3*x +C4*x +C5*x +C6*x )| <= 2
* | |
*
* 4 6 8 10 12 14
* 4. let r = C1*x +C2*x +C3*x +C4*x +C5*x +C6*x , then
* cos(x) = 1 - x*x/2 + r
* since cos(x+y) ~ cos(x) - sin(x)*y
* ~ cos(x) - x*y,
* a correction term is necessary in cos(x) and hence
* cos(x+y) = 1 - (x*x/2 - (r - x*y))
* For better accuracy when x > 0.3, let qx = |x|/4 with
* the last 32 bits mask off, and if x > 0.78125, let qx = 0.28125.
* Then
* cos(x+y) = (1-qx) - ((x*x/2-qx) - (r-x*y)).
* Note that 1-qx and (x*x/2-qx) is EXACT here, and the
* magnitude of the latter is at least a quarter of x*x/2,
* thus, reducing the rounding error in the subtraction.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sin
~~~
* kernel sin function on [-pi/4, pi/4], pi/4 ~ 0.7854
* Input x is assumed to be bounded by ~pi/4 in magnitude.
* Input y is the tail of x.
* Input iy indicates whether y is 0. (if iy=0, y assume to be 0).
*
* Algorithm
* 1. Since sin(-x) = -sin(x), we need only to consider positive x.
* 2. if x < 2^-27 (hx<0x3e400000 0), return x with inexact if x!=0.
* 3. sin(x) is approximated by a polynomial of degree 13 on
* [0,pi/4]
* 3 13
* sin(x) ~ x + S1*x + ... + S6*x
* where
*
* |sin(x) 2 4 6 8 10 12 | -58
* |----- - (1+S1*x +S2*x +S3*x +S4*x +S5*x +S6*x )| <= 2
* | x |
*
* 4. sin(x+y) = sin(x) + sin'(x')*y
* ~ sin(x) + (1-x*x/2)*y
* For better accuracy, let
* 3 2 2 2 2
* r = x *(S2+x *(S3+x *(S4+x *(S5+x *S6))))
* then 3 2
* sin(x) = x + (S1*x + (x *(r-y/2)+y))
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tan
~~~
* kernel tan function on [-pi/4, pi/4], pi/4 ~ 0.7854
* Input x is assumed to be bounded by ~pi/4 in magnitude.
* Input y is the tail of x.
* Input k indicates whether tan (if k=1) or
* -1/tan (if k= -1) is returned.
*
* Algorithm
* 1. Since tan(-x) = -tan(x), we need only to consider positive x.
* 2. if x < 2^-28 (hx<0x3e300000 0), return x with inexact if x!=0.
* 3. tan(x) is approximated by a odd polynomial of degree 27 on
* [0,0.67434]
* 3 27
* tan(x) ~ x + T1*x + ... + T13*x
* where
*
* |tan(x) 2 4 26 | -59.2
* |----- - (1+T1*x +T2*x +.... +T13*x )| <= 2
* | x |
*
* Note: tan(x+y) = tan(x) + tan'(x)*y
* ~ tan(x) + (1+x*x)*y
* Therefore, for better accuracy in computing tan(x+y), let
* 3 2 2 2 2
* r = x *(T2+x *(T3+x *(...+x *(T12+x *T13))))
* then
* 3 2
* tan(x+y) = x + (T1*x + (x *(r+y)+y))
*
* 4. For x in [0.67434,pi/4], let y = pi/4 - x, then
* tan(x) = tan(pi/4-y) = (1-tan(y))/(1+tan(y))
* = 1 - 2*(tan(y) - (tan(y)^2)/(1+tan(y)))
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atan
~~~~
* Method
* 1. Reduce x to positive by atan(x) = -atan(-x).
* 2. According to the integer k=4t+0.25 chopped, t=x, the argument
* is further reduced to one of the following intervals and the
* arctangent of t is evaluated by the corresponding formula:
*
* [0,7/16] atan(x) = t-t^3*(a1+t^2*(a2+...(a10+t^2*a11)...)
* [7/16,11/16] atan(x) = atan(1/2) + atan( (t-0.5)/(1+t/2) )
* [11/16.19/16] atan(x) = atan( 1 ) + atan( (t-1)/(1+t) )
* [19/16,39/16] atan(x) = atan(3/2) + atan( (t-1.5)/(1+1.5t) )
* [39/16,INF] atan(x) = atan(INF) + atan( -1/t )
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
erf
~~~
* x
* 2 |\
* erf(x) = --------- | exp(-t*t)dt
* sqrt(pi) \|
* 0
*
* erfc(x) = 1-erf(x)
* Note that
* erf(-x) = -erf(x)
* erfc(-x) = 2 - erfc(x)
*
* Method:
* 1. For |x| in [0, 0.84375]
* erf(x) = x + x*R(x^2)
* erfc(x) = 1 - erf(x) if x in [-.84375,0.25]
* = 0.5 + ((0.5-x)-x*R) if x in [0.25,0.84375]
* where R = P/Q where P is an odd poly of degree 8 and
* Q is an odd poly of degree 10.
* -57.90
* | R - (erf(x)-x)/x | <= 2
*
*
* Remark. The formula is derived by noting
* erf(x) = (2/sqrt(pi))*(x - x^3/3 + x^5/10 - x^7/42 + ....)
* and that
* 2/sqrt(pi) = 1.128379167095512573896158903121545171688
* is close to one. The interval is chosen because the fix
* point of erf(x) is near 0.6174 (i.e., erf(x)=x when x is
* near 0.6174), and by some experiment, 0.84375 is chosen to
* guarantee the error is less than one ulp for erf.
*
* 2. For |x| in [0.84375,1.25], let s = |x| - 1, and
* c = 0.84506291151 rounded to single (24 bits)
* erf(x) = sign(x) * (c + P1(s)/Q1(s))
* erfc(x) = (1-c) - P1(s)/Q1(s) if x > 0
* 1+(c+P1(s)/Q1(s)) if x < 0
* |P1/Q1 - (erf(|x|)-c)| <= 2**-59.06
* Remark: here we use the taylor series expansion at x=1.
* erf(1+s) = erf(1) + s*Poly(s)
* = 0.845.. + P1(s)/Q1(s)
* That is, we use rational approximation to approximate
* erf(1+s) - (c = (single)0.84506291151)
* Note that |P1/Q1|< 0.078 for x in [0.84375,1.25]
* where
* P1(s) = degree 6 poly in s
* Q1(s) = degree 6 poly in s
*
* 3. For x in [1.25,1/0.35(~2.857143)],
* erfc(x) = (1/x)*exp(-x*x-0.5625+R1/S1)
* erf(x) = 1 - erfc(x)
* where
* R1(z) = degree 7 poly in z, (z=1/x^2)
* S1(z) = degree 8 poly in z
*
* 4. For x in [1/0.35,28]
* erfc(x) = (1/x)*exp(-x*x-0.5625+R2/S2) if x > 0
* = 2.0 - (1/x)*exp(-x*x-0.5625+R2/S2) if -6<x<0
* = 2.0 - tiny (if x <= -6)
* erf(x) = sign(x)*(1.0 - erfc(x)) if x < 6, else
* erf(x) = sign(x)*(1.0 - tiny)
* where
* R2(z) = degree 6 poly in z, (z=1/x^2)
* S2(z) = degree 7 poly in z
*
* Note1:
* To compute exp(-x*x-0.5625+R/S), let s be a single
* precision number and s := x; then
* -x*x = -s*s + (s-x)*(s+x)
* exp(-x*x-0.5626+R/S) =
* exp(-s*s-0.5625)*exp((s-x)*(s+x)+R/S);
* Note2:
* Here 4 and 5 make use of the asymptotic series
* exp(-x*x)
* erfc(x) ~ ---------- * ( 1 + Poly(1/x^2) )
* x*sqrt(pi)
* We use rational approximation to approximate
* g(s)=f(1/x^2) = log(erfc(x)*x) - x*x + 0.5625
* Here is the error bound for R1/S1 and R2/S2
* |R1/S1 - f(x)| < 2**(-62.57)
* |R2/S2 - f(x)| < 2**(-61.52)
*
* 5. For inf > x >= 28
* erf(x) = sign(x) *(1 - tiny) (raise inexact)
* erfc(x) = tiny*tiny (raise underflow) if x > 0
* = 2 - tiny if x<0
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expm1 Returns exp(x)-1, the exponential of x minus 1
~~~~~
* Method
* 1. Argument reduction:
* Given x, find r and integer k such that
*
* x = k*ln2 + r, |r| <= 0.5*ln2 ~ 0.34658
*
* Here a correction term c will be computed to compensate
* the error in r when rounded to a floating-point number.
*
* 2. Approximating expm1(r) by a special rational function on
* the interval [0,0.34658]:
* Since
* r*(exp(r)+1)/(exp(r)-1) = 2+ r^2/6 - r^4/360 + ...
* we define R1(r*r) by
* r*(exp(r)+1)/(exp(r)-1) = 2+ r^2/6 * R1(r*r)
* That is,
* R1(r**2) = 6/r *((exp(r)+1)/(exp(r)-1) - 2/r)
* = 6/r * ( 1 + 2.0*(1/(exp(r)-1) - 1/r))
* = 1 - r^2/60 + r^4/2520 - r^6/100800 + ...
* We use a special Reme algorithm on [0,0.347] to generate
* a polynomial of degree 5 in r*r to approximate R1. The
* maximum error of this polynomial approximation is bounded
* by 2**-61. In other words,
* R1(z) ~ 1.0 + Q1*z + Q2*z**2 + Q3*z**3 + Q4*z**4 + Q5*z**5
* where Q1 = -1.6666666666666567384E-2,
* Q2 = 3.9682539681370365873E-4,
* Q3 = -9.9206344733435987357E-6,
* Q4 = 2.5051361420808517002E-7,
* Q5 = -6.2843505682382617102E-9;
* (where z=r*r, and the values of Q1 to Q5 are listed below)
* with error bounded by
* | 5 | -61
* | 1.0+Q1*z+...+Q5*z - R1(z) | <= 2
* | |
*
* expm1(r) = exp(r)-1 is then computed by the following
* specific way which minimize the accumulation rounding error:
* 2 3
* r r [ 3 - (R1 + R1*r/2) ]
* expm1(r) = r + --- + --- * [--------------------]
* 2 2 [ 6 - r*(3 - R1*r/2) ]
*
* To compensate the error in the argument reduction, we use
* expm1(r+c) = expm1(r) + c + expm1(r)*c
* ~ expm1(r) + c + r*c
* Thus c+r*c will be added in as the correction terms for
* expm1(r+c). Now rearrange the term to avoid optimization
* screw up:
* ( 2 2 )
* ({ ( r [ R1 - (3 - R1*r/2) ] ) } r )
* expm1(r+c)~r - ({r*(--- * [--------------------]-c)-c} - --- )
* ({ ( 2 [ 6 - r*(3 - R1*r/2) ] ) } 2 )
* ( )
*
* = r - E
* 3. Scale back to obtain expm1(x):
* From step 1, we have
* expm1(x) = either 2^k*[expm1(r)+1] - 1
* = or 2^k*[expm1(r) + (1-2^-k)]
* 4. Implementation notes:
* (A). To save one multiplication, we scale the coefficient Qi
* to Qi*2^i, and replace z by (x^2)/2.
* (B). To achieve maximum accuracy, we compute expm1(x) by
* (i) if x < -56*ln2, return -1.0, (raise inexact if x!=inf)
* (ii) if k=0, return r-E
* (iii) if k=-1, return 0.5*(r-E)-0.5
* (iv) if k=1 if r < -0.25, return 2*((r+0.5)- E)
* else return 1.0+2.0*(r-E);
* (v) if (k<-2||k>56) return 2^k(1-(E-r)) - 1 (or exp(x)-1)
* (vi) if k <= 20, return 2^k((1-2^-k)-(E-r)), else
* (vii) return 2^k(1-((E+2^-k)-r))
*
* Special cases:
* expm1(INF) is INF, expm1(NaN) is NaN;
* expm1(-INF) is -1, and
* for finite argument, only expm1(0)=0 is exact.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
log1p
~~~~~
* Method :
* 1. Argument Reduction: find k and f such that
* 1+x = 2^k * (1+f),
* where sqrt(2)/2 < 1+f < sqrt(2) .
*
* Note. If k=0, then f=x is exact. However, if k!=0, then f
* may not be representable exactly. In that case, a correction
* term is need. Let u=1+x rounded. Let c = (1+x)-u, then
* log(1+x) - log(u) ~ c/u. Thus, we proceed to compute log(u),
* and add back the correction term c/u.
* (Note: when x > 2**53, one can simply return log(x))
*
* 2. Approximation of log1p(f).
* Let s = f/(2+f) ; based on log(1+f) = log(1+s) - log(1-s)
* = 2s + 2/3 s**3 + 2/5 s**5 + .....,
* = 2s + s*R
* We use a special Reme algorithm on [0,0.1716] to generate
* a polynomial of degree 14 to approximate R The maximum error
* of this polynomial approximation is bounded by 2**-58.45. In
* other words,
* 2 4 6 8 10 12 14
* R(z) ~ Lp1*s +Lp2*s +Lp3*s +Lp4*s +Lp5*s +Lp6*s +Lp7*s
* (the values of Lp1 to Lp7 are listed in the program)
* and
* | 2 14 | -58.45
* | Lp1*s +...+Lp7*s - R(z) | <= 2
* | |
* Note that 2s = f - s*f = f - hfsq + s*hfsq, where hfsq = f*f/2.
* In order to guarantee error in log below 1ulp, we compute log
* by
* log1p(f) = f - (hfsq - s*(hfsq+R)).
*
* 3. Finally, log1p(x) = k*ln2 + log1p(f).
* = k*ln2_hi+(f-(hfsq-(s*(hfsq+R)+k*ln2_lo)))
* Here ln2 is split into two floating point number:
* ln2_hi + ln2_lo,
* where n*ln2_hi is always exact for |n| < 2000.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+96
View File
@@ -0,0 +1,96 @@
This directory contains the version VERSION release of the GNU C Library.
Many bugs have been fixed since the last release.
Some bugs surely remain.
As of this release, the GNU C library is known to run on the following
configurations:
*-*-gnu GNU Hurd
i[3456]86-*-linux-gnu Linux-2.x on Intel
m68k-*-linux-gnu Linux-2.x on Motorola 680x0
alpha-*-linux-gnu Linux-2.x on DEC Alpha
powerpc-*-linux-gnu Linux and MkLinux on PowerPC systems
sparc-*-linux-gnu Linux-2.x on SPARC
sparc64-*-linux-gnu Linux-2.x on UltraSPARC
arm-*-none ARM standalone systems
arm-*-linux Linux-2.x on ARM
arm-*-linuxaout Linux-2.x on ARM using a.out binaries
Former releases of this library (version 1.09.1 and perhaps earlier
versions) used to run on the following configurations:
alpha-dec-osf1
i[3456]86-*-bsd4.3
i[3456]86-*-isc2.2
i[3456]86-*-isc3
i[3456]86-*-sco3.2
i[3456]86-*-sco3.2v4
i[3456]86-*-sysv
i[3456]86-*-sysv4
i[3456]86-force_cpu386-none
i[3456]86-sequent-bsd
i960-nindy960-none
m68k-hp-bsd4.3
m68k-mvme135-none
m68k-mvme136-none
m68k-sony-newsos3
m68k-sony-newsos4
m68k-sun-sunos4
mips-dec-ultrix4
mips-sgi-irix4
sparc-sun-solaris2
sparc-sun-sunos4
Since no one has volunteered to test and fix the above configurations,
these are not supported at the moment. It's expected that these don't
work anymore. Porting the library is not hard. If you are interested
in doing a port, please contact the glibc maintainers by sending
electronic mail to <bug-glibc@gnu.org>.
The GNU C library now includes Michael Glad's Ultra Fast Crypt, which
provides the Unix `crypt' function, plus some other entry points.
Because of the United States export restriction on DES
implementations, we are distributing this code separately from the
rest of the C library. There is an extra distribution tar file just
for crypt; it is called `glibc-crypt-VERSION.tar.gz'. You can just
unpack the crypt distribution along with the rest of the C library and
build; you can also build the library without getting crypt. Users
outside the USA can get the crypt distribution via anonymous FTP from
ftp.gwdg.de [134.76.11.100] in the directory pub/linux/glibc, or
another archive site outside the USA. Archive maintainers are
encouraged to copy this distribution to their archives outside the
USA. Please get it from ftp.gwdg.de; transferring this distribution
from ftp.gnu.org (or any other site in the USA) to a site outside the
USA is in violation of US export laws.
Beside the separate crypt tar file there are some more add-ons which can be
used together with GNU libc. They are designed in a way to ease the
installation by integrating them in the libc source tree. Simply get the
add-ons you need and use the --enable-add-ons option of the `configure'
script to tell where the add-ons are found. Please read the FAQ file for
more details.
See the file INSTALL to find out how to configure, build, install, and port
the GNU C library. You might also consider reading the WWW pages for the
GNU libc at http://www.gnu.org/software/libc/libc.html.
The GNU C Library is completely documented by the Texinfo manual found
in the `manual/' subdirectory. The manual is still being updated and
contains some known errors and omissions; we regret that we do not
have the resources to work on the manual as much as we would like.
Please send comments on the manual to <bug-glibc-manual@gnu.org>, and
not to the library bug-reporting address.
The file NOTES contains a description of the feature-test macros used
in the GNU C library, explaining how you can tell the library what
facilities you want it to make available.
We prefer to get bug reports sent using the `glibcbug' shell script which
is installed together with the rest of the GNU libc to <bugs@gnu.org>.
Simply run this shell script and fill in the information. Nevertheless
you can still send bug reports to <bug-glibc@gnu.org> as normal electronic
mails.
The GNU C Library is free software. See the file COPYING.LIB for copying
conditions.
+98 -369
View File
@@ -1,19 +1,20 @@
# Copyright (C) 1991-2026 Free Software Foundation, Inc.
# Copyright (C) 1991,92,93,94,95,96,97,98,99 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.
# modify it under the terms of the GNU Library General Public License as
# published by the Free Software Foundation; either version 2 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.
# Library 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
# <https://www.gnu.org/licenses/>.
# You should have received a copy of the GNU Library General Public
# License along with the GNU C Library; see the file COPYING.LIB. If not,
# write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
# Boston, MA 02111-1307, USA.
#
# Rules for making a subdirectory in the GNU C library.
@@ -25,7 +26,7 @@ endif
all: # Don't let the default goal come from Makeconfig.
include $(firstword $(..) ../)Makeconfig
include ../Makeconfig
ifndef subdir
Each subdirectory makefile must define the `subdir' variable.
@@ -40,8 +41,7 @@ all: objs lib others
ifeq ($(build-programs),yes)
others: $(addprefix $(objpfx),$(extra-objs) \
$(install-lib) \
$(install-bin) $(install-bin-script) \
$(install-lib) $(install-bin) \
$(install-rootsbin) $(install-sbin))
else
others: $(addprefix $(objpfx),$(extra-objs) \
@@ -60,7 +60,7 @@ ifneq "$(findstring env,$(origin common-generated))" ""
common-generated :=
endif
include $(..)Makerules
include ../Makerules
.PHONY: subdir_lib
subdir_lib: lib-noranlib
@@ -74,388 +74,59 @@ endef
$(common-objpfx)dummy.c:
rm -f $@
(echo 'extern void __dummy__ (void);'; \
echo 'void __dummy__ (void) { }') > $@
echo 'void __dummy__ (void) { }' > $@
common-generated += dummy.o dummy.c
ifneq "$(headers)" ""
# Test that all of the headers installed by this directory can be compiled
# in isolation.
tests-special += $(objpfx)check-installed-headers-c.out
libof-check-installed-headers-c := testsuite
$(objpfx)check-installed-headers-c.out: \
$(..)scripts/check-installed-headers.sh $(headers)
$(SHELL) $(..)scripts/check-installed-headers.sh c $(supported-fortify) \
"$(CC) $(test-config-cflags-finput-charset-ascii) \
$(filter-out -std=%,$(CFLAGS)) -D_ISOMAC $(+includes)" \
$(headers) > $@; \
$(evaluate-test)
ifneq "$(CXX)" ""
# If a C++ compiler is available, also test that they can be compiled
# in isolation as C++.
tests-special += $(objpfx)check-installed-headers-cxx.out
libof-check-installed-headers-cxx := testsuite
$(objpfx)check-installed-headers-cxx.out: \
$(..)scripts/check-installed-headers.sh $(headers)
$(SHELL) $(..)scripts/check-installed-headers.sh c++ $(supported-fortify) \
"$(CXX) $(test-config-cxxflags-finput-charset-ascii) \
$(filter-out -std=%,$(CXXFLAGS)) -D_ISOMAC $(+includes)" \
$(headers) > $@; \
$(evaluate-test)
endif # $(CXX)
# Test that a wrapper header exists in include/ for each non-sysdeps header.
# This script does not need $(py-env).
tests-special += $(objpfx)check-wrapper-headers.out
$(objpfx)check-wrapper-headers.out: \
$(..)scripts/check-wrapper-headers.py $(headers)
$(PYTHON) $< --root=$(..) --subdir=$(subdir) $(headers) > $@; \
$(evaluate-test)
# Test that none of the headers installed by this directory use certain
# obsolete constructs (e.g. legacy BSD typedefs superseded by stdint.h).
# This script does not need $(py-env).
tests-special += $(objpfx)check-obsolete-constructs.out
libof-check-obsolete-constructs := testsuite
$(objpfx)check-obsolete-constructs.out: \
$(..)scripts/check-obsolete-constructs.py $(headers)
$(PYTHON) $^ > $@ 2>&1; \
$(evaluate-test)
endif # $(headers)
# This makes all the auxiliary and test programs.
.PHONY: others tests bench bench-build
# Test programs for the pretty printers.
tests-printers-programs := $(addprefix $(objpfx),$(tests-printers))
# .out files with the output of running the pretty printer tests.
tests-printers-out := $(patsubst %,$(objpfx)%.out,$(tests-printers))
.PHONY: others tests
ifeq ($(build-programs),yes)
others: $(addprefix $(objpfx),$(others) $(sysdep-others) $(extra-objs))
else
others: $(addprefix $(objpfx),$(extra-objs))
endif
# Generate constant files for Python pretty printers if required.
others: $(py-const)
ifeq ($(run-built-tests),no)
# The $(xtests) dependency ensures that xtests are always built.
tests: $(addprefix $(objpfx),$(filter-out $(tests-unsupported), \
$(tests) $(tests-internal) $(xtests) \
$(tests-container) \
$(tests-mcheck:%=%-mcheck) \
$(tests-malloc-check:%=%-malloc-check) \
$(tests-malloc-hugetlb1:%=%-malloc-hugetlb1) \
$(tests-malloc-hugetlb2:%=%-malloc-hugetlb2) \
$(tests-malloc-largetcache:%=%-malloc-largetcache)) \
$(test-srcs)) $(tests-special) \
$(tests-printers-programs)
xtests: tests $(xtests-special)
else # $(run-built-tests) != no
# The $(xtests) dependency ensures that xtests are always built.
tests: $(tests:%=$(objpfx)%.out) $(tests-internal:%=$(objpfx)%.out) \
$(addprefix $(objpfx),$(filter-out $(tests-unsupported), $(xtests))) \
$(tests-container:%=$(objpfx)%.out) \
$(tests-mcheck:%=$(objpfx)%-mcheck.out) \
$(tests-malloc-check:%=$(objpfx)%-malloc-check.out) \
$(tests-malloc-hugetlb1:%=$(objpfx)%-malloc-hugetlb1.out) \
$(tests-malloc-hugetlb2:%=$(objpfx)%-malloc-hugetlb2.out) \
$(tests-malloc-largetcache:%=$(objpfx)%-malloc-largetcache.out) \
$(tests-special) $(tests-printers-out)
xtests: tests $(xtests:%=$(objpfx)%.out) $(xtests-special)
endif # $(run-built-tests) != no
tests-special-notdir = $(patsubst $(objpfx)%, %, $(tests-special))
xtests-special-notdir = $(patsubst $(objpfx)%, %, $(xtests-special))
ifeq ($(run-built-tests),no)
tests-expected =
xtests-expected =
else # $(run-built-tests) != no
tests-expected = $(tests) $(tests-internal) $(tests-printers) \
$(tests-container) $(tests-malloc-check:%=%-malloc-check) \
$(tests-malloc-hugetlb1:%=%-malloc-hugetlb1) \
$(tests-malloc-hugetlb2:%=%-malloc-hugetlb2) \
$(tests-malloc-largetcache:%=%-malloc-largetcache) \
$(tests-mcheck:%=%-mcheck)
xtests-expected = $(xtests)
endif # $(run-built-tests) != no
tests:
$(..)scripts/merge-test-results.sh -s $(objpfx) $(subdir) \
$(sort $(tests-expected) $(tests-special-notdir:.out=)) \
> $(objpfx)subdir-tests.sum
xtests:
$(..)scripts/merge-test-results.sh -s $(objpfx) $(subdir) \
$(sort $(xtests-expected) $(xtests-special-notdir:.out=)) \
> $(objpfx)subdir-xtests.sum
ifeq ($(cross-compiling),yes)
tests: $(addprefix $(objpfx),$(tests) $(test-srcs))
else
tests: $(tests:%=$(objpfx)%.out)
endif
ifeq ($(build-programs),yes)
ifeq (yes,$(have-libgcc_s))
# NB: Build programs in $(others-noinstall) like tests only if libgcc_s is
# available. Otherwise, "build-many-glibcs.py compilers" will fail to
# build the initial glibc with the initial limited gcc due to the missing
# libgcc_s.
all-notests = $(others-noinstall)
endif
binaries-all-notests = $(filter-out $(all-notests), \
$(others) $(sysdep-others))
binaries-all-tests = $(tests) $(tests-internal) $(xtests) $(test-srcs) \
$(tests-container) $(all-notests)
binaries-all = $(binaries-all-notests) $(binaries-all-tests)
binaries-static-notests = $(others-static)
binaries-static-tests = $(tests-static) $(xtests-static)
binaries-static = $(binaries-static-notests) $(binaries-static-tests)
binaries-shared-2.0-tests = $(tests-2.0)
ifeq (yesyes,$(have-fpie)$(build-shared))
binaries-pie-tests = $(tests-pie) $(xtests-pie)
binaries-pie-notests = $(others-pie)
binaries-all = $(others) $(sysdep-others) $(tests) $(test-srcs)
binaries-static = $(others-static)
else
binaries-pie-tests =
binaries-pie-notests =
endif
binaries-mcheck-tests = $(tests-mcheck:%=%-mcheck)
binaries-malloc-check-tests = $(tests-malloc-check:%=%-malloc-check)
binaries-malloc-hugetlb1-tests = $(tests-malloc-hugetlb1:%=%-malloc-hugetlb1)
binaries-malloc-hugetlb2-tests = $(tests-malloc-hugetlb2:%=%-malloc-hugetlb2)
binaries-malloc-largetcache-tests = $(tests-malloc-largetcache:%=%-malloc-largetcache)
else
binaries-all-notests =
binaries-all-tests = $(tests) $(tests-internal) $(xtests) $(test-srcs)
binaries-all = $(binaries-all-tests)
binaries-static-notests =
binaries-static-tests =
binaries-all = $(tests) $(test-srcs)
binaries-static =
binaries-pie-tests =
binaries-pie-notests =
binaries-mcheck-tests =
binaries-malloc-check-tests =
binaries-malloc-hugetlb1-tests =
binaries-malloc-hugetlb2-tests =
binaries-malloc-largetcache-tests =
endif
binaries-pie = $(binaries-pie-tests) $(binaries-pie-notests)
binaries-shared-tests = $(filter-out $(binaries-pie) $(binaries-static) \
$(binaries-shared-2.0-tests), \
$(binaries-all-tests))
binaries-shared-notests = $(filter-out $(binaries-pie) $(binaries-static), \
$(binaries-all-notests))
binaries-shared = $(filter-out $(binaries-static), $(binaries-all))
ifneq "$(strip $(binaries-shared-notests))" ""
$(addprefix $(objpfx),$(binaries-shared-notests)): %: %.o \
ifneq "$(strip $(binaries-shared))" ""
$(addprefix $(objpfx),$(binaries-shared)): %: %.o \
$(sort $(filter $(common-objpfx)lib%,$(link-libc))) \
$(addprefix $(csu-objpfx),start.o) $(+preinit) $(+postinit)
$(+link)
endif
ifneq "$(strip $(binaries-shared-tests))" ""
$(addprefix $(objpfx),$(sort $(binaries-shared-tests))): %: %.o \
$(link-extra-libs-tests) \
$(sort $(filter $(common-objpfx)lib%,$(link-libc))) \
$(addprefix $(csu-objpfx),start.o) $(+preinit) $(+postinit)
$(+link-tests)
endif
# Linking test programs with crt1.o from glibc 2.0.
ifneq "$(strip $(binaries-shared-2.0-tests))" ""
$(addprefix $(objpfx),$(binaries-shared-2.0-tests)): %: %.o \
$(link-extra-libs-tests) \
$(sort $(filter $(common-objpfx)lib%,$(link-libc))) \
$(addprefix $(csu-objpfx),start.o) $(+preinit) $(+postinit)
$(+link-2.0-tests)
endif
ifneq "$(strip $(binaries-mcheck-tests))" ""
$(addprefix $(objpfx),$(binaries-mcheck-tests)): %-mcheck: %.o \
$(link-extra-libs-tests) \
$(sort $(filter $(common-objpfx)lib%,$(link-libc))) \
$(common-objpfx)malloc/libmcheck.a \
$(addprefix $(csu-objpfx),start.o) $(+preinit) $(+postinit)
$(+link-tests)
endif
ifneq "$(strip $(binaries-malloc-check-tests))" ""
$(addprefix $(objpfx),$(binaries-malloc-check-tests)): %-malloc-check: %.o \
$(link-extra-libs-tests) \
$(sort $(filter $(common-objpfx)lib%,$(link-libc))) \
$(addprefix $(csu-objpfx),start.o) $(+preinit) $(+postinit)
$(+link-tests)
endif
ifneq "$(strip $(binaries-malloc-hugetlb1-tests))" ""
$(addprefix $(objpfx),$(binaries-malloc-hugetlb1-tests)): \
%-malloc-hugetlb1: %-malloc-hugetlb1.o \
$(link-extra-libs-tests) \
$(sort $(filter $(common-objpfx)lib%,$(link-libc))) \
$(addprefix $(csu-objpfx),start.o) $(+preinit) $(+postinit)
$(+link-tests)
endif
ifneq "$(strip $(binaries-malloc-hugetlb2-tests))" ""
$(addprefix $(objpfx),$(binaries-malloc-hugetlb2-tests)): \
%-malloc-hugetlb2: %-malloc-hugetlb2.o \
$(link-extra-libs-tests) \
$(sort $(filter $(common-objpfx)lib%,$(link-libc))) \
$(addprefix $(csu-objpfx),start.o) $(+preinit) $(+postinit)
$(+link-tests)
endif
ifneq "$(strip $(binaries-malloc-largetcache-tests))" ""
$(addprefix $(objpfx),$(binaries-malloc-largetcache-tests)): %-malloc-largetcache: %.o \
$(link-extra-libs-tests) \
$(sort $(filter $(common-objpfx)lib%,$(link-libc))) \
$(addprefix $(csu-objpfx),start.o) $(+preinit) $(+postinit)
$(+link-tests)
endif
ifneq "$(strip $(binaries-pie-tests))" ""
$(addprefix $(objpfx),$(binaries-pie-tests)): %: %.o \
$(link-extra-libs-tests) \
$(sort $(filter $(common-objpfx)lib%,$(link-libc))) \
$(addprefix $(csu-objpfx),start.o) $(+preinit) $(+postinit)
$(+link-pie-tests)
endif
ifneq "$(strip $(binaries-pie-notests))" ""
$(addprefix $(objpfx),$(binaries-pie-notests)): %: %.o \
$(sort $(filter $(common-objpfx)lib%,$(link-libc))) \
$(addprefix $(csu-objpfx),start.o) $(+preinit) $(+postinit)
$(+link-pie)
endif
ifneq "$(strip $(binaries-static-notests))" ""
$(addprefix $(objpfx),$(binaries-static-notests)): %: %.o \
ifneq "$(strip $(binaries-static))" ""
$(addprefix $(objpfx),$(binaries-static)): %: %.o \
$(sort $(filter $(common-objpfx)lib%,$(link-libc-static))) \
$(addprefix $(csu-objpfx),start.o) $(+preinit) $(+postinit)
$(+link-static)
endif
ifneq "$(strip $(binaries-static-tests))" ""
$(addprefix $(objpfx),$(binaries-static-tests)): %: %.o \
$(link-extra-libs-tests) \
$(sort $(filter $(common-objpfx)lib%,$(link-libc-static-tests))) \
$(addprefix $(csu-objpfx),start.o) $(+preinit) $(+postinit)
$(+link-static-tests)
endif
# All malloc-check tests will be run with MALLOC_CHECK_=3
define malloc-check-ENVS
$(1)-malloc-check-ENV = MALLOC_CHECK_=3 \
LD_PRELOAD=$(common-objpfx)/malloc/libc_malloc_debug.so
endef
$(foreach t,$(tests-malloc-check),$(eval $(call malloc-check-ENVS,$(t))))
# Generate environment variable GLIBC_TUNABLES to be appended to
# the test environment, appending tunables specifically added for
# each test to the ambient GLIBC_TUNABLES environment variable.
# The *-TUNABLES-only can be used by a test to override any ambient
# tunables.
define test-tun-joined
$(subst $(empty) ,:,$(strip $($*-TUNABLES)))
endef
define test-tunables-all
$(if $($*-TUNABLES),$(if $(GLIBC_TUNABLES),GLIBC_TUNABLES=$(GLIBC_TUNABLES):$(test-tun-joined),GLIBC_TUNABLES=$(test-tun-joined)),)
endef
define test-tunables-only
GLIBC_TUNABLES=$(subst $(empty) ,:,$(strip $($*-TUNABLES-only)))
endef
define test-tunables
$(if $($*-TUNABLES-only),$(test-tunables-only),$(test-tunables-all))
endef
# All malloc-hugetlb1 tests will be run with GLIBC_TUNABLES=glibc.malloc.hugetlb=1
define malloc-hugetlb1-ENVS
$(1)-malloc-hugetlb1-TUNABLES += glibc.malloc.hugetlb=1
endef
$(foreach t,$(tests-malloc-hugetlb1),$(eval $(call malloc-hugetlb1-ENVS,$(t))))
# All malloc-hugetlb2 tests will be run with GLIBC_TUNABLE=glibc.malloc.hugetlb=2
define malloc-hugetlb2-ENVS
$(1)-malloc-hugetlb2-TUNABLES += glibc.malloc.hugetlb=2
endef
$(foreach t,$(tests-malloc-hugetlb2),$(eval $(call malloc-hugetlb2-ENVS,$(t))))
# All malloc-largetcache tests will be run with GLIBC_TUNABLE=glibc.malloc.tcache_max=1048576
define malloc-largetcache-ENVS
$(1)-malloc-largetcache-TUNABLES += glibc.malloc.tcache_max=1048576
endef
$(foreach t,$(tests-malloc-largetcache),$(eval $(call malloc-largetcache-ENVS,$(t))))
# mcheck tests need the debug DSO to support -lmcheck.
define mcheck-ENVS
$(1)-mcheck-ENV = LD_PRELOAD=$(common-objpfx)/malloc/libc_malloc_debug.so
endef
$(foreach t,$(tests-mcheck),$(eval $(call mcheck-ENVS,$(t))))
ifneq "$(strip $(tests) $(tests-container) $(tests-internal) $(xtests) $(test-srcs))" ""
ifneq "$(strip $(tests) $(test-srcs))" ""
# These are the implicit rules for making test outputs
# from the test programs and whatever input files are present.
define make-test-out
$(if $($*-ENV-only),$(test-wrapper-env-only) $($*-ENV-only) $(test-tunables),\
$(test-wrapper-env) $(run-program-env) $($*-ENV) $(test-tunables)) \
$(host-test-program-cmd) $($*-ARGS)
endef
$(objpfx)%.out: %.args $(objpfx)% %.input
$($*-ENV) $(built-program-cmd) `cat $(word 1,$^)` < $(word 3,$^) > $@
$(objpfx)%.out: %.args $(objpfx)%
$($*-ENV) $(built-program-cmd) `cat $(word 1,$^)` > $@
$(objpfx)%.out: %.input $(objpfx)%
$(make-test-out) > $@ < $(word 1,$^); \
$(evaluate-test)
$($*-ENV) $(built-program-cmd) < $(word 1,$^) > $@
$(objpfx)%.out: /dev/null $(objpfx)% # Make it 2nd arg for canned sequence.
$(make-test-out) > $@; \
$(evaluate-test)
# Any tests that require an isolated container (filesystem, network
# and pid namespaces) in which to run, should be added to
# tests-container.
$(tests-container:%=$(objpfx)%.out): $(objpfx)%.out : $(if $(wildcard $(objpfx)%.files),$(objpfx)%.files,/dev/null) $(objpfx)%
$(test-wrapper-env) $(run-program-env) $(test-via-rtld-prefix) \
$(common-objpfx)support/test-container env $(run-program-env) $($*-ENV) $(test-tunables) \
$(host-test-program-cmd) $($*-ARGS) > $@; \
$(evaluate-test)
# tests-unsupported lists tests that we will not try to build at all in
# this configuration. Note this runs every time because it does not
# actually create its target. The dependency on Makefile is meant to
# ensure that it runs after a Makefile change to add a test to the list
# when it previously ran and produced a .out file (probably for a failure).
ifneq "$(strip $(tests-unsupported))" ""
$(tests-unsupported:%=$(objpfx)%.out): $(objpfx)%.out: Makefile
@rm -f $@
$(..)scripts/evaluate-test.sh $(patsubst $(common-objpfx)%.out,%,$@) \
77 false false > $(@:.out=.test-result)
endif
$($*-ENV) $(built-program-cmd) > $@
endif # tests
ifneq "$(strip $(tests-printers))" ""
# Static pattern rule for building the test programs for the pretty printers.
$(tests-printers-programs): %: %.o $(tests-printers-libs) \
$(sort $(filter $(common-objpfx)lib%,$(link-libc-static-tests))) \
$(addprefix $(csu-objpfx),start.o) $(+preinit) $(+postinit)
$(+link-printers-tests)
# Add the paths to the generated constants file and test_common_printers.py
# to PYTHONPATH so the test scripts can find them.
py-env := PYTHONPATH=$(py-const-dir):$(..)scripts:$${PYTHONPATH}
# Static pattern rule that matches the test-* targets to their .c and .py
# prerequisites. It'll run the corresponding test script for each test program
# we compiled and place its output in the corresponding .out file.
# The pretty printer files and test_common_printers.py must be present for all.
$(tests-printers-out): $(objpfx)%.out: $(objpfx)% %.py %.c $(pretty-printers) \
$(..)scripts/test_printers_common.py
$(test-wrapper-env) $(py-env) \
$(PYTHON) $*.py $*.c $(objpfx)$* $(pretty-printers) > $@; \
$(evaluate-test)
endif
.PHONY: distclean realclean subdir_distclean subdir_realclean \
subdir_clean subdir_mostlyclean subdir_testclean
@@ -467,15 +138,28 @@ subdir_testclean: do-tests-clean
realclean: distclean
distclean: clean
.PHONY: subdir_echo-headers
subdir_echo-headers: echo-headers
.PHONY: subdir_echo-distinfo
subdir_echo-distinfo:
@echo $(addprefix +header+,$(headers) $(filter %.h,$(distribute))) \
$(addprefix +nodist+,$(generated) $(common-generated) $(dont_distribute))
# We want to install everything except the library itself, but update all
# our portions of the library because the parent make will install it later
# (likewise the stubs file).
.PHONY: subdir_install
subdir_install: install-no-libc.a lib-noranlib stubs
.PHONY: subdir_objs subdir_stubs
subdir_objs: objs
subdir_stubs: stubs
.PHONY: subdir_TAGS subdir_dist
subdir_TAGS: TAGS
subdir_dist: dist
# Convenient target to update all the generated source files.
.PHONY: generated
generated: $(addprefix $(common-objpfx),$(common-generated)) \
$(addprefix $(objpfx),$(generated))
# Target required by the Hurd to ensure that all the MiG-generated
# headers are in place before building a subdirectory.
@@ -485,6 +169,51 @@ before-compile: $(before-compile)
$(common-objpfx)dummy.o: $(common-objpfx)dummy.c $(before-compile);
$(compile-command.c)
# Local Variables:
# mode: makefile
# End:
# There's no good place to put this - here will do.
# The dependencies are wrong if it's run from the top level.
ifeq ($(filter %posix, $(sysdirs)),)
L_tmpnam = 1
TMP_MAX = 0
L_ctermid = 1
L_cuserid = 1
else
L_tmpnam = 20
TMP_MAX = 238328
L_ctermid = 9
L_cuserid = 9
endif
stdio_lim = $(common-objpfx)bits/stdio_lim.h
$(stdio_lim:lim.h=%.h) $(stdio_lim:lim.h=%.d): $(stdio_lim:lim.h=%.st); @:
$(stdio_lim:h=st): $(..)stdio-common/stdio_lim.h.in $(..)Rules \
$(common-objpfx)config.make
$(make-target-directory)
echo '#include "$(..)posix/bits/posix1_lim.h"' | \
SUNPRO_DEPENDENCIES='$(@:st=dT) $@' \
$(CC) $(+includes) -E -dM -xc - -o $(@:st=hT)
ifdef sed-remove-objpfx
sed $(sed-remove-objpfx) $(@:st=dT) > $(@:st=dt)
mv -f $(@:st=dt) $(@:st=d)
else
mv -f $(@:st=dT) $(@:st=d)
endif
fopen_max=`sed -n 's/^#define OPEN_MAX //p' $(@:st=hT)`; \
filename_max=`sed -n 's/^#define PATH_MAX //p' $(@:st=hT)`; \
fopen_max=$${fopen_max:-16}; \
filename_max=$${filename_max:-1024}; \
sed -e "s/@FOPEN_MAX@/$$fopen_max/" \
-e "s/@FILENAME_MAX@/$$filename_max/" \
-e "s/@L_tmpnam@/$(L_tmpnam)/" \
-e "s/@TMP_MAX@/$(TMP_MAX)/" \
-e "s/@L_ctermid@/$(L_ctermid)/" \
-e "s/@L_cuserid@/$(L_cuserid)/" \
$< > $(@:st=h.new)
$(move-if-change) $(@:st=h.new) $(@:st=h)
# Remove these last so that they can be examined if something went wrong.
rm -f $(@:st=hT) $(@:st=dT)
touch $@
# Get dependencies.
ifndef no_deps
-include $(stdio_lim:h=d)
endif
common-generated += bits/stdio_lim.h bits/stdio_lim.d bits/stdio_lim.st
-176
View File
@@ -1,176 +0,0 @@
# The GNU C Library Security Policy
This document describes the policy followed by the GNU C Library maintainers
to handle bugs that may have a security impact. This includes determining if a
bug has a security impact, reporting such bugs to the community and handling
such bugs all the way to resolution. This policy may evolve over time, so if
you're reading this from a release tarball, be sure to check the latest copy of
the [SECURITY.md in the
repository](https://sourceware.org/git/?p=glibc.git;a=blob;f=SECURITY.md),
especially for instructions on reporting issues privately.
## What is a security bug?
Most security vulnerabilities in the GNU C Library materialize only after an
application uses functionality in a specific way. Therefore, it is sometimes
difficult to determine if a defect in the GNU C Library constitutes a
vulnerability as such. The follow guidelines can help with a decision.
* Buffer overflows should be treated as security bugs if it is conceivable that
the data triggering them can come from an untrusted source.
* Other bugs that cause memory corruption which is likely exploitable should be
treated as security bugs.
* Information disclosure can be security bugs, especially if exposure through
applications can be determined.
* Memory leaks and races are security bugs if they cause service breakage.
* Stack overflow through unbounded alloca calls or variable-length arrays are
security bugs if it is conceivable that the data triggering the overflow
could come from an untrusted source.
* Stack overflow through deep recursion and other crashes are security bugs if
they cause service breakage.
* Bugs that cripple the whole system (so that it doesn't even boot or does not
run most applications) are not security bugs because they will not be
exploitable in practice, due to general system instability.
* Bugs that crash `nscd` are generally security bugs, except if they can only
be triggered by a trusted data source (DNS is not trusted, but NIS and LDAP
probably are).
* The [Security Exceptions](#SecurityExceptions) section below describes
subsystems for which determining the security status of bugs is especially
complicated.
* For consistency, if the bug has received a CVE name attributing it to the GNU
C library, it should be flagged `security+`.
* Duplicates of security bugs (flagged with `security+`) should be flagged
`security-`, to avoid cluttering the reporting.
In this context, _service breakage_ means client-side privilege escalation
(code execution) or server-side denial of service or privilege escalation
through actual, concrete, non-synthetic applications. Or put differently, if
the GNU C Library causes a security bug in an application (and the application
uses the library in a standard-conforming manner or according to the manual),
the GNU C Library bug should be treated as security-relevant.
### Security Exceptions
It may be especially complicated to determine the security status of bugs in
some subsystems in the GNU C Library. This subsection describes such
subsystems and the special considerations applicable during security bug
classification in them.
#### Regular expression processing
Regular expression processing comes in two parts, compilation (through regcomp)
and execution (through regexec).
Implementing regular expressions efficiently, in a standard-conforming way, and
without denial-of-service vulnerabilities is very difficult and impossible for
Basic Regular Expressions. Most implementation strategies have issues dealing
with certain classes of patterns.
Consequently, certain issues which can be triggered only with crafted patterns
(either during compilation or execution) are treated as regular bugs and not
security issues. Examples of such issues would include (but is not limited
to):
* Running out of memory through valid use of malloc
* Quadratic or exponential behaviour resulting in slow execution time
* Stack overflows due to recursion when processing patterns
Crashes, infinite loops (and not merely exponential behavior), buffer overflows
and overreads, memory leaks and other bugs resulting from the regex
implementation relying on undefined behavior should be treated as security
vulnerabilities.
#### wordexp patterns
`wordexp` inherently has exponential memory consumption in terms of the input
size. This means that denial of service flaws from crafted patterns are not
security issues (even if they lead to other issues, such as NULL pointer
dereferences).
#### Asynchronous I/O
The GNU C Library tries to implement asynchronous I/O without kernel support,
which means that several operations are not fully standard conforming. Several
known races can cause crashes and resource leaks. Such bugs are only treated
as security bugs if applications (as opposed to synthetic test cases) have
security exposures due to these bugs.
#### Asynchronous cancellation
The implementation of asynchronous cancellation is not fully
standard-conforming and has races and leaks. Again, such bugs are only treated
as security bugs if applications (as opposed to synthetic test cases) have
security exposures due to these bugs.
#### Crafted binaries and ldd
The `ldd` tool is not expected to be used with untrusted executables.
#### Post-exploitation countermeasures
Certain features have been added to the library only to make exploitation of
security bugs (mainly for code execution) more difficult. Examples includes
the stack smashing protector, function pointer obfuscation, vtable validation
for stdio stream handles, and various heap consistency checks. Failure of such
countermeasures to stop exploitation of a different vulnerability is not a
security vulnerability in itself. By their nature, these countermeasures are
based on heuristics and will never offer complete protection, so the original
vulnerability needs to be fixed anyway.
## Reporting security bugs
The process to report security bugs is documented on the glibc [security
page](https://sourceware.org/glibc/security.html). In general, most security
bugs may be reported publicly in the [glibc
bugzilla](https://sourceware.org/glibc/bugs.html), but if in doubt, please feel
free to report security issues privately first.
## Triaging security bugs
This section is aimed at developers, not reporters.
Security-relevant bugs should be marked with `security+`, as per the [Bugzilla
security flag
documentation](https://sourceware.org/glibc/wiki/Bugzilla%20Procedures#security),
following the guidelines above. If you set the `security+` flag, you should
make sure the following information is included in the bug (usually in a bug
comment):
* The first glibc version which includes the vulnerable code. If the
vulnerability was introduced before glibc 2.4 (released in 2006), this
information is not necessary.
* The commit or commits (identified by hash) that fix this vulnerability in the
master branch, and (for historic security bugs) the first release that
includes this fix.
* The summary should include the CVE names (if any), in parentheses at the end.
* If there is a single CVE name assigned to this bug, it should be set as an
alias.
The following links are helpful for finding untriaged bugs:
* [Unprocessed bugs](https://sourceware.org/bugzilla/buglist.cgi?f1=flagtypes.name&o1=notsubstring&product=glibc&query_format=advanced&v1=security)
* [`security?` review requests](https://sourceware.org/bugzilla/buglist.cgi?f1=flagtypes.name&o1=substring&product=glibc&query_format=advanced&v1=security%3f)
* [Open `security+` bugs](https://sourceware.org/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=SUSPENDED&bug_status=WAITING&bug_status=REOPENED&bug_status=VERIFIED&f1=flagtypes.name&o1=substring&product=glibc&query_format=advanced&v1=security%2B)
## Fixing security bugs
For changes to master, the regular [consensus-driven
process](https://sourceware.org/glibc/wiki/Consensus) must be followed. It
makes sense to obtain consensus in private, to ensure that the patch is likely
in a committable state, before disclosing an emboargoed vulnerability.
Security backports to release branches need to follow the
[release process](https://sourceware.org/glibc/wiki/Release#General_policy).
Contact the [website
maintainers](https://sourceware.org/glibc/wiki/MAINTAINERS#Maintainers_for_the_website)
and have them draft a news entry for the website frontpage to direct users to
the bug, the fix, or the mailing list discussions.
## CVE assignment
Security bugs flagged with `security+` should have [CVE
identifiers](https://www.cve.org/About/Overview). Please reach out to the glibc
security team using the documented [security
process](https://sourceware.org/glibc/security.html) and they work on getting a
CVE number.
-855
View File
@@ -1,855 +0,0 @@
# Files shared with other projects. Pass a file path to the
# get_glibc_shared_code() function in the python library
# scripts/glibc_shared_code.py to get a dict object with this information. See
# the library sources for more information.
# The headers on most of these files indicate that glibc is the canonical
# source for these files, although in many cases there seem to be useful
# changes in the gnulib versions that could be merged back in. Not all gnulib
# files contain such a header and it is not always consistent in its format, so
# it would be useful to make sure that all gnulib files that are using glibc as
# upstream have a greppable header.
#
# These files are quite hard to find without a header to grep for and each file
# has to be compared manually so this list is likely incomplete or may contain
# errors.
gnulib:
COPYINGv2
COPYINGv3
COPYING.LESSERv2
doc/fdl-1.3.texi
argp/argp-ba.c
argp/argp-ba.c
argp/argp-eexst.c
argp/argp-fmtstream.c
argp/argp-fmtstream.h
argp/argp-fs-xinl.c
argp/argp-help.c
argp/argp-namefrob.h
argp/argp-parse.c
argp/argp-pv.c
argp/argp-pvh.c
argp/argp-xinl.c
argp/argp.h
dirent/alphasort.c
dirent/scandir.c
# Merged from gnulib 2025-10-29 (gnulib commit 1790ef25d8)
include/intprops.h
include/intprops-internal.h
# Merged from gnulib 2026-02-16
include/assure.h
include/flexmember.h
include/hash.h
include/next-prime.h
include/xalloc-oversized.h
# Merged from gnulib 2021-09-21
include/regex.h
# Merged from gnulib 2026-02-16
io/cycle-check.c
io/cycle-check.h
io/dev-ino.h
io/fts-cycle.c
io/fts-common.c
io/i-ring.c
io/same-inode.h
locale/programs/3level.h
# Merged from gnulib 2014-6-23
malloc/obstack.c
# Merged from gnulib 2014-6-23
malloc/obstack.h
# Merged from gnulib 2014-07-10
misc/error.c
misc/error.h
misc/getpass.c
misc/hash.c
misc/mkdtemp.c
misc/next-prime.c
# Merged from gnulib 2021-09-21
misc/sys/cdefs.h
posix/fnmatch_loop.c
# Intended to be the same. Gnulib copy contains glibc changes.
posix/getopt.c
# Intended to be the same. Gnulib copy contains glibc changes.
posix/getopt1.c
# Intended to be the same. Gnulib copy contains glibc changes.
posix/getopt_int.h
posix/glob.c
# Merged from gnulib 2021-09-21
posix/regcomp.c
# Merged from gnulib 2021-09-21
posix/regex.c
# Merged from gnulib 2021-09-21
posix/regex.h
# Merged from gnulib 2021-09-21
posix/regex_internal.c
# Merged from gnulib 2021-09-21
posix/regex_internal.h
# Merged from gnulib 2021-09-21
posix/regexec.c
posix/spawn.c
posix/spawn_faction_addclose.c
posix/spawn_faction_adddup2.c
posix/spawn_faction_addopen.c
posix/spawn_faction_destroy.c
posix/spawn_faction_init.c
posix/spawn_int.h
posix/spawnattr_destroy.c
posix/spawnattr_getdefault.c
posix/spawnattr_getflags.c
posix/spawnattr_getpgroup.c
posix/spawnattr_getschedparam.c
posix/spawnattr_getschedpolicy.c
posix/spawnattr_getsigmask.c
posix/spawnattr_init.c
posix/spawnattr_setdefault.c
posix/spawnattr_setflags.c
posix/spawnattr_setpgroup.c
posix/spawnattr_setschedparam.c
posix/spawnattr_setschedpolicy.c
posix/spawnattr_setsigmask.c
posix/spawnp.c
stdlib/atoll.c
stdlib/getsubopt.c
stdlib/setenv.c
stdlib/strtoll.c
stdlib/strtoul.c
stdlib/tst-stdc_rotate_left.c
stdlib/tst-stdc_rotate_right.c
# Merged from gnulib 2014-6-26, needs merge back
string/memchr.c
string/memcmp.c
string/memmem.c
string/mempcpy.c
string/memrchr.c
string/rawmemchr.c
string/stpcpy.c
string/stpncpy.c
string/str-two-way.h
string/strcasestr.c
string/strcspn.c
string/strdup.c
string/strndup.c
string/strpbrk.c
string/strsignal.c
string/strstr.c
string/strtok_r.c
string/strverscmp.c
# Merged from gnulib 2024-04-08 (gnulib commit 3238349628)
stdio-common/tmpdir.c
stdio-common/tmpdir.h
sysdeps/generic/pty-private.h
sysdeps/generic/siglist.h
sysdeps/posix/euidaccess.c
sysdeps/posix/gai_strerror.c
sysdeps/posix/getcwd.c
sysdeps/posix/pwrite.c
sysdeps/posix/spawni.c
# Merged from gnulib 2024-04-08 (gnulib commit 3238349628)
sysdeps/posix/tempname.c
# Merged from gnulib 2014-6-27
time/mktime.c
time/mktime-internal.h
time/strptime.c
time/timegm.c
# Synced with GNU gettext 1.0 (2026-05-18), through gettext commit 2ebbdd0e2.
#
# This commit was omitted from the merge as it does not appear to be compatible
# with how glibc expects things to work:
#
# commit 279b57fc367251666f00e8e2b599b83703451afb
# Author: Bruno Haible <bruno@clisp.org>
# Date: Fri Jun 14 12:03:49 2002 +0000
#
# Make absolute pathnames inside $LANGUAGE work.
gettext:
intl/bindtextdom.c
intl/dcgettext.c
intl/dcigettext.c
intl/dcngettext.c
intl/dgettext.c
intl/dngettext.c
intl/eval-plural.h
intl/explodename.c
intl/finddomain.c
intl/gettext.c
intl/gettextP.h
intl/gmo.h
intl/hash-string.c
intl/hash-string.h
intl/l10nflist.c
intl/loadinfo.h
intl/loadmsgcat.c
intl/locale.alias
intl/localealias.c
intl/ngettext.c
intl/plural-exp.c
intl/plural-exp.h
intl/plural.y
intl/textdomain.c
# The following files are bundled from upstream Linux 6.10 for FUSE testing
# support.
linux:
support/bundled/linux/COPYING
support/bundled/linux/LICENSES
support/bundled/linux/LICENSES/exceptions/Linux-syscall-note
support/bundled/linux/LICENSES/preferred/GPL-2.0
support/bundled/linux/include/uapi/linux/fuse.h
# The following files are shared with the upstream Unicode project and must be
# updated regularly to stay in sync with the upstream unicode releases.
#
# Merged from Unicode 17.0.0 release (2025 September 9)
unicode:
localedata/unicode-gen/UnicodeData.txt
localedata/unicode-gen/unicode-license.txt
localedata/unicode-gen/DerivedCoreProperties.txt
localedata/unicode-gen/EastAsianWidth.txt
localedata/unicode-gen/HangulSyllableType.txt
# The following files are shared with the upstream tzcode project and must be
# updated regularly to stay in sync with the upstream releases.
#
# Currently synced to TZDB 2026b, distributed at:
# https://github.com/eggert/tz/releases/tag/2026b
# https://data.iana.org/time-zones/releases/tzdb-2026b.tar.lz
tzcode:
timezone/private.h
timezone/tzfile.h
timezone/tzselect.ksh
timezone/version
timezone/zdump.c
timezone/zic.c
# The following files are shared with the upstream tzdata project but is not
# synchronized regularly. The data files themselves are used only for testing
# purposes and their data is never used to generate any output. We synchronize
# them only to stay on top of newer data that might help with testing.
#
# Currently synced to tzcode 2009i, announced and distributed here:
# https://mm.icann.org/pipermail/tz/2009-June/040697.html
# https://data.iana.org/time-zones/releases/tzdata2009i.tar.gz
tzdata:
timezone/africa
timezone/antarctica
timezone/asia
timezone/australasia
timezone/europe
timezone/northamerica
timezone/southamerica
timezone/pacificnew
timezone/etcetera
timezone/factory
timezone/backward
timezone/systemv
timezone/solar87
timezone/solar88
timezone/solar89
timezone/iso3166.tab
timezone/zone.tab
timezone/leapseconds
# This is yearistype.sh in the parent project
timezone/yearistype
# The following files are imported from the CORE-MATH project, with
# adjustments made to follow glibc code style, to utilize internal error
# handling functions, and to implement minor fixes for ABIs with
# FLT_EVAL_METHOD equal to 2 (i386). Additionally, extra optimizations
# are applied to share the internal data table across different
# implementations.
#
# The project is distribute here:
# https://gitlab.inria.fr/core-math/core-math/
core-math:
# src/binary64/acosh/acosh.c, revision 887cab6f
sysdeps/ieee754/dbl-64/e_acosh.c
# src/binary64/atanh/atanh.c, revision 532e37dc
sysdeps/ieee754/dbl-64/e_atanh.c
# src/binary64/cosh/cosh.c, revision 5d0c89d5
sysdeps/ieee754/dbl-64/e_cosh.c
# src/binary64/tgamma/tgamma.c, revision 0f185e23
sysdeps/ieee754/dbl-64/e_gamma_r.c
# src/binary64/lgamma/lgamma.c, revision 0413bb7e
sysdeps/ieee754/dbl-64/e_lgamma_r.c
# src/binary64/sinh/sinh.c, revision 8127b7ac
sysdeps/ieee754/dbl-64/e_sinh.c
# src/binary64/asinh/asinh.c, revision cd653cf7
sysdeps/ieee754/dbl-64/s_asinh.c
# src/binary64/erf/erf.c, revision 384ed01d
sysdeps/ieee754/dbl-64/s_erf.c
# src/binary64/erfc/erfc.c, revision 55e9869e
sysdeps/ieee754/dbl-64/s_erfc.c
# src/binary64/tanh/tanh.c, revision 8ea8ea35
sysdeps/ieee754/dbl-64/s_tanh.c
# src/binary32/acos/acosf.c, revision 56dd347
sysdeps/ieee754/flt-32/e_acosf.c
# src/binary32/acosh/acoshf.c, revision d0b9ddd
sysdeps/ieee754/flt-32/e_acoshf.c
# file src/binary32/cosh/coshf.c, revision de59ecfb
sysdeps/ieee754/flt-32/e_coshf.c
# src/binary32/tgamma/tgammaf.c, revision 8ea8ea35
sysdeps/ieee754/flt-32/e_gammaf_r.c
# src/binary32/lgamma/lgammaf.c, revision 8ea8ea35
sysdeps/ieee754/flt-32/e_lgammaf_r.c
# src/binary32/log10/log10f.c, revision ebff4c43
sysdeps/ieee754/flt-32/e_log10f.c
# src/binary32/sinh/sinhf.c, revision bbfabd99
sysdeps/ieee754/flt-32/e_sinhf.c
# src/binary32/acospi/acospif.c, revision 1a6a9ab
sysdeps/ieee754/flt-32/s_acospif.c
# src/binary32/asinpi/asinpif.c, revision 6ee58266
sysdeps/ieee754/flt-32/s_asinpif.c
# src/binary32/atan2pi/atan2pif.c, revision dbebee1
sysdeps/ieee754/flt-32/s_atan2pif.c
# src/binary32/atanpi/atanpif.c, revision e02000e
sysdeps/ieee754/flt-32/s_atanpif.c
# src/binary32/cbrt/cbrtf.c, revision f7c7408d
sysdeps/ieee754/flt-32/s_cbrtf.c
# src/binary32/cospi/cospif.c, revision bbfabd99
sysdeps/ieee754/flt-32/s_cospif.c
# src/binary32/erfc/erfcf.c revision d0a2be20
sysdeps/ieee754/flt-32/s_erfcf.c
# src/binary32/erf/erff.c revision bc385c2
sysdeps/ieee754/flt-32/s_erff.c
# src/binary32/exp10m1/exp10m1f.c, revision c46b85b
sysdeps/ieee754/flt-32/s_exp10m1f.c
# src/binary32/exp2m1/exp2m1f.c, revision baf5f6b
sysdeps/ieee754/flt-32/s_exp2m1f.c
# src/binary32/expm1/expm1f.c, revision bc385c2
sysdeps/ieee754/flt-32/s_expm1f.c
# src/binary32/log10p1/log10p1f.c revision eb28456b
sysdeps/ieee754/flt-32/s_log10p1f.c
# src/binary32/log1p/log1pf.c revision 24ef43a1
sysdeps/ieee754/flt-32/s_log1pf.c
# src/binary32/log2p1/log2p1f.c revision 3fbe16be
sysdeps/ieee754/flt-32/s_log2p1f.c
# src/binary32/sinpi/sinpif.c, revision bbfabd99d
sysdeps/ieee754/flt-32/s_sinpif.c
# src/binary32/tan/tanf.c, revision 59d21d7
sysdeps/ieee754/flt-32/s_tanf.c
# src/binary32/tanh/tanhf.c, revision b1ecd83
sysdeps/ieee754/flt-32/s_tanhf.c
# src/binary32/tanpi/tanpif.c, revision 3bbf907
sysdeps/ieee754/flt-32/s_tanpif.c
# The following files are imported from the Arm Optimized-Routines project,
# with adjustments made to follow glibc code style and integrate with
# glibc-specific infrastructure where needed.
#
# The project is distributed here:
# https://github.com/ARM-software/optimized-routines/
arm-optimized-routines:
# Math routines
# math/math_config.h, revision 712aa21
sysdeps/ieee754/flt-32/math_config.h
# math/math_config.h, revision 712aa21
sysdeps/ieee754/dbl-64/math_config.h
# math/math_err.c, revision 189dfef
sysdeps/ieee754/dbl-64/math_err.c
# math/math_errf.c, revision 189dfef
sysdeps/ieee754/flt-32/math_errf.c
# math/cosf.c, revision aec783d
sysdeps/ieee754/flt-32/s_cosf.c
# math/exp2f.c, revision 712aa21
sysdeps/ieee754/flt-32/e_exp2f.c
# math/exp2f_data.c, revision 189dfef
sysdeps/ieee754/flt-32/e_exp2f_data.c
# math/expf.c, revision 712aa21
sysdeps/ieee754/flt-32/e_expf.c
# math/log2f.c, revision 712aa21
sysdeps/ieee754/flt-32/e_log2f.c
# math/log2f_data.c, revision 189dfef
sysdeps/ieee754/flt-32/e_log2f_data.c
# math/logf.c, revision 712aa21
sysdeps/ieee754/flt-32/e_logf.c
# math/logf_data.c, revision c0136f1
sysdeps/ieee754/flt-32/e_logf_data.c
# math/powf.c, revision 712aa21
sysdeps/ieee754/flt-32/e_powf.c
# math/powf_log2_data.c, revision 189dfef
sysdeps/ieee754/flt-32/e_powf_log2_data.c
# math/sincosf.c, revision af29d39
sysdeps/ieee754/flt-32/s_sincosf.c
# math/sincosf.h, revision aed553c
sysdeps/ieee754/flt-32/s_sincosf.h
# math/sincosf_data.c, revision 189dfef
sysdeps/ieee754/flt-32/s_sincosf_data.c
# math/sinf.c, revision aec783d
sysdeps/ieee754/flt-32/s_sinf.c
# math/exp.c, revision 712aa21
sysdeps/ieee754/dbl-64/e_exp.c
# math/exp10.c, revision 712aa21
sysdeps/ieee754/dbl-64/e_exp10.c
# math/exp2.c, revision 712aa21
sysdeps/ieee754/dbl-64/e_exp2.c
# math/exp_data.c, revision c013701
sysdeps/ieee754/dbl-64/e_exp_data.c
# math/log.c, revision 712aa21
sysdeps/ieee754/dbl-64/e_log.c
# math/log2.c, revision 712aa21
sysdeps/ieee754/dbl-64/e_log2.c
# math/log2_data.c, revision 189dfef
sysdeps/ieee754/dbl-64/e_log2_data.c
# math/log_data.c, revision 189dfef
sysdeps/ieee754/dbl-64/e_log_data.c
# math/pow.c, revision 712aa21
sysdeps/ieee754/dbl-64/e_pow.c
# math/pow_log_data.c, revision 189dfef
sysdeps/ieee754/dbl-64/e_pow_log_data.c
# Mathvec routines
# math/math_config.h, revision 712aa21
sysdeps/aarch64/fpu/vecmath_config.h
# math/aarch64/v_erf_data.c, revision 0a6ab6d
sysdeps/aarch64/fpu/erf_data.c
# math/aarch64/v_erfc_data.c, revision 0a6ab6d
sysdeps/aarch64/fpu/erfc_data.c
# math/aarch64/v_erfcf_data.c, revision 0a6ab6d
sysdeps/aarch64/fpu/erfcf_data.c
# math/aarch64/v_erff_data.c, revision 0a6ab6d
sysdeps/aarch64/fpu/erff_data.c
# math/aarch64/v_exp_data.c, revision 0a6ab6d
sysdeps/aarch64/fpu/v_exp_data.c
# math/aarch64/v_exp_tail_data.c, revision 0a6ab6d
sysdeps/aarch64/fpu/v_exp_tail_data.c
# math/aarch64/v_log10_data.c, revision 0a6ab6d
sysdeps/aarch64/fpu/v_log10_data.c
# math/aarch64/v_log2_data.c, revision 0a6ab6d
sysdeps/aarch64/fpu/v_log2_data.c
# math/aarch64/v_log_data.c, revision 0a6ab6d
sysdeps/aarch64/fpu/v_log_data.c
# math/aarch64/v_pow_exp_data.c, revision 0a6ab6d
sysdeps/aarch64/fpu/v_pow_exp_data.c
# math/aarch64/v_pow_log_data.c, revision 0a6ab6d
sysdeps/aarch64/fpu/v_pow_log_data.c
# math/aarch64/v_powf_data.c, revision 0a6ab6d
sysdeps/aarch64/fpu/v_powf_data.c
# math/aarch64/sve/acos.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/acos.c
# math/aarch64/sve/acosf.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/acosf.c
# math/aarch64/sve/acosh.c, revision 8b665af
sysdeps/aarch64/fpu/sve/acosh.c
# math/aarch64/sve/acoshf.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/acoshf.c
# math/aarch64/sve/acospi.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/acospi.c
# math/aarch64/sve/acospif.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/acospif.c
# math/aarch64/sve/asin.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/asin.c
# math/aarch64/sve/asinf.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/asinf.c
# math/aarch64/sve/asinh.c, revision 9bf4cfc
sysdeps/aarch64/fpu/sve/asinh.c
# math/aarch64/sve/asinhf.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/asinhf.c
# math/aarch64/sve/asinpi.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/asinpi.c
# math/aarch64/sve/asinpif.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/asinpif.c
# math/aarch64/sve/atan.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/atan.c
# math/aarch64/sve/atan2.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/atan2.c
# math/aarch64/sve/atan2f.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/atan2f.c
# math/aarch64/sve/atan2pi.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/atan2pi.c
# math/aarch64/sve/atan2pif.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/atan2pif.c
# math/aarch64/sve/atanf.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/atanf.c
# math/aarch64/sve/atanh.c, revision 29c7342
sysdeps/aarch64/fpu/sve/atanh.c
# math/aarch64/sve/atanhf.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/atanhf.c
# math/aarch64/sve/atanpi.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/atanpi.c
# math/aarch64/sve/atanpif.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/atanpif.c
# math/aarch64/sve/cbrt.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/cbrt.c
# math/aarch64/sve/cbrtf.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/cbrtf.c
# math/aarch64/sve/cos.c, revision 99cbbad
sysdeps/aarch64/fpu/sve/cos.c
# math/aarch64/sve/cosf.c, revision 25aa012
sysdeps/aarch64/fpu/sve/cosf.c
# math/aarch64/sve/cosh.c, revision 242a017
sysdeps/aarch64/fpu/sve/cosh.c
# math/aarch64/sve/coshf.c, revision 2fff60c
sysdeps/aarch64/fpu/sve/coshf.c
# math/aarch64/sve/cospi.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/cospi.c
# math/aarch64/sve/cospif.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/cospif.c
# math/aarch64/sve/erf.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/erf.c
# math/aarch64/sve/erfc.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/erfc.c
# math/aarch64/sve/erfcf.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/erfcf.c
# math/aarch64/sve/erff.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/erff.c
# math/aarch64/sve/exp.c, revision d664b69
sysdeps/aarch64/fpu/sve/exp.c
# math/aarch64/sve/exp10.c, revision d664b69
sysdeps/aarch64/fpu/sve/exp10.c
# math/aarch64/sve/exp10f.c, revision d664b69
sysdeps/aarch64/fpu/sve/exp10f.c
# math/aarch64/sve/exp10m1.c, revision d664b69
sysdeps/aarch64/fpu/sve/exp10m1.c
# math/aarch64/sve/exp10m1f.c, revision d664b69
sysdeps/aarch64/fpu/sve/exp10m1f.c
# math/aarch64/sve/exp2.c, revision d664b69
sysdeps/aarch64/fpu/sve/exp2.c
# math/aarch64/sve/exp2f.c, revision d664b69
sysdeps/aarch64/fpu/sve/exp2f.c
# math/aarch64/sve/exp2m1.c, revision d664b69
sysdeps/aarch64/fpu/sve/exp2m1.c
# math/aarch64/sve/exp2m1f.c, revision d664b69
sysdeps/aarch64/fpu/sve/exp2m1f.c
# math/aarch64/sve/expf.c, revision 47044a5
sysdeps/aarch64/fpu/sve/expf.c
# math/aarch64/sve/expm1.c, revision d664b69
sysdeps/aarch64/fpu/sve/expm1.c
# math/aarch64/sve/expm1f.c, revision d664b69
sysdeps/aarch64/fpu/sve/expm1f.c
# math/aarch64/sve/hypot.c, revision 74d699d
sysdeps/aarch64/fpu/sve/hypot.c
# math/aarch64/sve/hypotf.c, revision 74d699d
sysdeps/aarch64/fpu/sve/hypotf.c
# math/aarch64/sve/log.c, revision 91b052e
sysdeps/aarch64/fpu/sve/log.c
# math/aarch64/sve/log10.c, revision 91b052e
sysdeps/aarch64/fpu/sve/log10.c
# math/aarch64/sve/log10f.c, revision 8ca4cc0
sysdeps/aarch64/fpu/sve/log10f.c
# math/aarch64/sve/log10p1.c, revision 166744d
sysdeps/aarch64/fpu/sve/log10p1.c
# math/aarch64/sve/log10p1f.c, revision 8124d30
sysdeps/aarch64/fpu/sve/log10p1f.c
# math/aarch64/sve/log1p.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/log1p.c
# math/aarch64/sve/log1pf.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/log1pf.c
# math/aarch64/sve/log2.c, revision 91b052e
sysdeps/aarch64/fpu/sve/log2.c
# math/aarch64/sve/log2f.c, revision 8ca4cc0
sysdeps/aarch64/fpu/sve/log2f.c
# math/aarch64/sve/log2p1.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/log2p1.c
# math/aarch64/sve/log2p1f.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/log2p1f.c
# math/aarch64/sve/logf.c, revision 8ca4cc0
sysdeps/aarch64/fpu/sve/logf.c
# math/aarch64/sve/pow.c, revision 2c38e83
sysdeps/aarch64/fpu/sve/pow.c
# math/aarch64/sve/powf.c, revision 2c38e83
sysdeps/aarch64/fpu/sve/powf.c
# math/aarch64/sve/powr.c, revision 30da949
sysdeps/aarch64/fpu/sve/powr.c
# math/aarch64/sve/powrf.c, revision e2bca42
sysdeps/aarch64/fpu/sve/powrf.c
# math/aarch64/sve/rsqrt.c, revision 4fc7374
sysdeps/aarch64/fpu/sve/rsqrt.c
# math/aarch64/sve/rsqrtf.c, revision b1bc8ba
sysdeps/aarch64/fpu/sve/rsqrtf.c
# math/aarch64/sve/sin.c, revision 99cbbad
sysdeps/aarch64/fpu/sve/sin.c
# math/aarch64/sve/sinf.c, revision 25aa012
sysdeps/aarch64/fpu/sve/sinf.c
# math/aarch64/sve/sinh.c, revision 242a017
sysdeps/aarch64/fpu/sve/sinh.c
# math/aarch64/sve/sinhf.c, revision 2fff60c
sysdeps/aarch64/fpu/sve/sinhf.c
# math/aarch64/sve/sinpi.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/sinpi.c
# math/aarch64/sve/sinpif.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/sinpif.c
# math/aarch64/sve/tan.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/tan.c
# math/aarch64/sve/tanf.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/tanf.c
# math/aarch64/sve/tanh.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/tanh.c
# math/aarch64/sve/tanhf.c, revision 2fff60c
sysdeps/aarch64/fpu/sve/tanhf.c
# math/aarch64/sve/tanpi.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/tanpi.c
# math/aarch64/sve/tanpif.c, revision 1aad38d
sysdeps/aarch64/fpu/sve/tanpif.c
# math/aarch64/sve/sv_exp_special_inline.h, revision d664b69
sysdeps/aarch64/fpu/sve/sv_exp_special_inline.h
# math/aarch64/sve/sv_expf_inline.h, revision ba35b32
sysdeps/aarch64/fpu/sve/sv_expf_inline.h
# math/aarch64/sve/sv_expf_special_inline.h, revision d664b69
sysdeps/aarch64/fpu/sve/sv_expf_special_inline.h
# math/aarch64/sve/sv_expm1f_inline.h, revision 78cd003
sysdeps/aarch64/fpu/sve/sv_expm1f_inline.h
# math/aarch64/sve/sv_log1p_inline.h, revision 7d08237
sysdeps/aarch64/fpu/sve/sv_log1p_inline.h
# math/aarch64/sve/sv_log1pf_inline.h, revision a386525
sysdeps/aarch64/fpu/sve/sv_log1pf_inline.h
# math/aarch64/sve/sv_pow_inline.h, revision 30da949
sysdeps/aarch64/fpu/sve/sv_pow_inline.h
# math/aarch64/sve/sv_powf_inline.h, revision 30da949
sysdeps/aarch64/fpu/sve/sv_powf_inline.h
# math/aarch64/sve/sv_poly_f32.h, revision 5d5e6e6
sysdeps/aarch64/fpu/sve/poly_sve_f32.h
# math/aarch64/sve/sv_poly_f64.h, revision 5d5e6e6
sysdeps/aarch64/fpu/sve/poly_sve_f64.h
# math/aarch64/sve/sv_poly_generic.h, revision 5d5e6e6
sysdeps/aarch64/fpu/sve/poly_sve_generic.h
# math/aarch64/sve/sv_math.h, revision 7361ef6
sysdeps/aarch64/fpu/sve/sv_math.h
# math/aarch64/sve/sv_trig_fallback.h, revision 99cbbad
sysdeps/aarch64/fpu/sve/sv_trig_fallback.h
# math/aarch64/sve/sv_trigf_fallback.h, revision 25aa012
sysdeps/aarch64/fpu/sve/sv_trigf_fallback.h
# math/aarch64/advsimd/acos.c, revision 1aad38d
sysdeps/aarch64/fpu/advsimd/acos.c
# math/aarch64/advsimd/acosf.c, revision 1aad38d
sysdeps/aarch64/fpu/advsimd/acosf.c
# math/aarch64/advsimd/acosh.c, revision 188e75a
sysdeps/aarch64/fpu/advsimd/acosh.c
# math/aarch64/advsimd/acoshf.c, revision af3851e
sysdeps/aarch64/fpu/advsimd/acoshf.c
# math/aarch64/advsimd/acospi.c, revision 1aad38d
sysdeps/aarch64/fpu/advsimd/acospi.c
# math/aarch64/advsimd/acospif.c, revision 1aad38d
sysdeps/aarch64/fpu/advsimd/acospif.c
# math/aarch64/advsimd/asin.c, revision 1aad38d
sysdeps/aarch64/fpu/advsimd/asin.c
# math/aarch64/advsimd/asinf.c, revision 1aad38d
sysdeps/aarch64/fpu/advsimd/asinf.c
# math/aarch64/advsimd/asinh.c, revision bac1b4f
sysdeps/aarch64/fpu/advsimd/asinh.c
# math/aarch64/advsimd/asinhf.c, revision af3851e
sysdeps/aarch64/fpu/advsimd/asinhf.c
# math/aarch64/advsimd/asinpi.c, revision 1aad38d
sysdeps/aarch64/fpu/advsimd/asinpi.c
# math/aarch64/advsimd/asinpif.c, revision 1aad38d
sysdeps/aarch64/fpu/advsimd/asinpif.c
# math/aarch64/advsimd/atan.c, revision 1aad38d
sysdeps/aarch64/fpu/advsimd/atan.c
# math/aarch64/advsimd/atan2.c, revision 1aad38d
sysdeps/aarch64/fpu/advsimd/atan2.c
# math/aarch64/advsimd/atan2f.c, revision 1aad38d
sysdeps/aarch64/fpu/advsimd/atan2f.c
# math/aarch64/advsimd/atan2pi.c, revision 1aad38d
sysdeps/aarch64/fpu/advsimd/atan2pi.c
# math/aarch64/advsimd/atan2pif.c, revision 1aad38d
sysdeps/aarch64/fpu/advsimd/atan2pif.c
# math/aarch64/advsimd/atanf.c, revision 1aad38d
sysdeps/aarch64/fpu/advsimd/atanf.c
# math/aarch64/advsimd/atanh.c, revision 281cb3a
sysdeps/aarch64/fpu/advsimd/atanh.c
# math/aarch64/advsimd/atanhf.c, revision d852158
sysdeps/aarch64/fpu/advsimd/atanhf.c
# math/aarch64/advsimd/atanpi.c, revision 1aad38d
sysdeps/aarch64/fpu/advsimd/atanpi.c
# math/aarch64/advsimd/atanpif.c, revision 1aad38d
sysdeps/aarch64/fpu/advsimd/atanpif.c
# math/aarch64/advsimd/cbrt.c, revision 0a6ab6d
sysdeps/aarch64/fpu/advsimd/cbrt.c
# math/aarch64/advsimd/cbrtf.c, revision 6c74650
sysdeps/aarch64/fpu/advsimd/cbrtf.c
# math/aarch64/advsimd/cos.c, revision 677a12b
sysdeps/aarch64/fpu/advsimd/cos.c
# math/aarch64/advsimd/cosf.c, revision 15c35d9
sysdeps/aarch64/fpu/advsimd/cosf.c
# math/aarch64/advsimd/cosh.c, revision 447bbaa
sysdeps/aarch64/fpu/advsimd/cosh.c
# math/aarch64/advsimd/coshf.c, revision 45237ba
sysdeps/aarch64/fpu/advsimd/coshf.c
# math/aarch64/advsimd/cospi.c, revision 1aad38d
sysdeps/aarch64/fpu/advsimd/cospi.c
# math/aarch64/advsimd/cospif.c, revision 1aad38d
sysdeps/aarch64/fpu/advsimd/cospif.c
# math/aarch64/advsimd/erf.c, revision 1aad38d
sysdeps/aarch64/fpu/advsimd/erf.c
# math/aarch64/advsimd/erfc.c, revision 1aad38d
sysdeps/aarch64/fpu/advsimd/erfc.c
# math/aarch64/advsimd/erfcf.c, revision 1aad38d
sysdeps/aarch64/fpu/advsimd/erfcf.c
# math/aarch64/advsimd/erff.c, revision 1aad38d
sysdeps/aarch64/fpu/advsimd/erff.c
# math/aarch64/advsimd/exp.c, revision dce5dab
sysdeps/aarch64/fpu/advsimd/exp.c
# math/aarch64/advsimd/exp10.c, revision dce5dab
sysdeps/aarch64/fpu/advsimd/exp10.c
# math/aarch64/advsimd/exp10f.c, revision 69d38dd
sysdeps/aarch64/fpu/advsimd/exp10f.c
# math/aarch64/advsimd/exp10m1.c, revision dce5dab
sysdeps/aarch64/fpu/advsimd/exp10m1.c
# math/aarch64/advsimd/exp10m1f.c, revision a5092e8
sysdeps/aarch64/fpu/advsimd/exp10m1f.c
# math/aarch64/advsimd/exp2.c, revision dce5dab
sysdeps/aarch64/fpu/advsimd/exp2.c
# math/aarch64/advsimd/exp2f.c, revision 69d38dd
sysdeps/aarch64/fpu/advsimd/exp2f.c
# math/aarch64/advsimd/exp2m1.c, revision dce5dab
sysdeps/aarch64/fpu/advsimd/exp2m1.c
# math/aarch64/advsimd/exp2m1f.c, revision a5092e8
sysdeps/aarch64/fpu/advsimd/exp2m1f.c
# math/aarch64/advsimd/expf.c, revision 69d38dd
sysdeps/aarch64/fpu/advsimd/expf.c
# math/aarch64/advsimd/expm1.c, revision dce5dab
sysdeps/aarch64/fpu/advsimd/expm1.c
# math/aarch64/advsimd/expm1f.c, revision a5092e8
sysdeps/aarch64/fpu/advsimd/expm1f.c
# math/aarch64/advsimd/hypot.c, revision 09f8d05
sysdeps/aarch64/fpu/advsimd/hypot.c
# math/aarch64/advsimd/hypotf.c, revision 99dff4f
sysdeps/aarch64/fpu/advsimd/hypotf.c
# math/aarch64/advsimd/log.c, revision 0345857
sysdeps/aarch64/fpu/advsimd/log.c
# math/aarch64/advsimd/log10.c, revision 77aff35
sysdeps/aarch64/fpu/advsimd/log10.c
# math/aarch64/advsimd/log10f.c, revision ff1596f
sysdeps/aarch64/fpu/advsimd/log10f.c
# math/aarch64/advsimd/log10p1.c, revision 7fc8510
sysdeps/aarch64/fpu/advsimd/log10p1.c
# math/aarch64/advsimd/log10p1f.c, revision 58cd796
sysdeps/aarch64/fpu/advsimd/log10p1f.c
# math/aarch64/advsimd/log1p.c, revision 355a985
sysdeps/aarch64/fpu/advsimd/log1p.c
# math/aarch64/advsimd/log1pf.c, revision 5cf8408
sysdeps/aarch64/fpu/advsimd/log1pf.c
# math/aarch64/advsimd/log2.c, revision b8deb33
sysdeps/aarch64/fpu/advsimd/log2.c
# math/aarch64/advsimd/log2f.c, revision b98f80d
sysdeps/aarch64/fpu/advsimd/log2f.c
# math/aarch64/advsimd/log2p1.c, revision 1aad38d
sysdeps/aarch64/fpu/advsimd/log2p1.c
# math/aarch64/advsimd/log2p1f.c, revision 58cd796
sysdeps/aarch64/fpu/advsimd/log2p1f.c
# math/aarch64/advsimd/logf.c, revision 1b15b12
sysdeps/aarch64/fpu/advsimd/logf.c
# math/aarch64/advsimd/finite_pow.h, revision 30da949
sysdeps/aarch64/fpu/advsimd/finite_pow.h
# math/pow_common.h, revision 30da949
sysdeps/aarch64/fpu/pow_common.h
# math/powf_common.h, revision 30da949
sysdeps/aarch64/fpu/powf_common.h
# math/aarch64/advsimd/pow.c, revision 30da949
sysdeps/aarch64/fpu/advsimd/pow.c
# math/aarch64/advsimd/powf.c, revision 30da949
sysdeps/aarch64/fpu/advsimd/powf.c
# math/aarch64/advsimd/powr.c, revision 30da949
sysdeps/aarch64/fpu/advsimd/powr.c
# math/aarch64/advsimd/powrf.c, revision e2bca42
sysdeps/aarch64/fpu/advsimd/powrf.c
# math/aarch64/advsimd/rsqrt.c, revision 0945eab
sysdeps/aarch64/fpu/advsimd/rsqrt.c
# math/aarch64/advsimd/rsqrtf.c, revision 88e9cc9
sysdeps/aarch64/fpu/advsimd/rsqrtf.c
# math/aarch64/advsimd/sin.c, revision 677a12b
sysdeps/aarch64/fpu/advsimd/sin.c
# math/aarch64/advsimd/sinf.c, revision 15c35d9
sysdeps/aarch64/fpu/advsimd/sinf.c
# math/aarch64/advsimd/sinh.c, revision 447bbaa
sysdeps/aarch64/fpu/advsimd/sinh.c
# math/aarch64/advsimd/sinhf.c, revision 45237ba
sysdeps/aarch64/fpu/advsimd/sinhf.c
# math/aarch64/advsimd/sinpi.c, revision 1aad38d
sysdeps/aarch64/fpu/advsimd/sinpi.c
# math/aarch64/advsimd/sinpif.c, revision 1aad38d
sysdeps/aarch64/fpu/advsimd/sinpif.c
# math/aarch64/advsimd/tan.c, revision a8bbb87
sysdeps/aarch64/fpu/advsimd/tan.c
# math/aarch64/advsimd/tanf.c, revision 1aad38d
sysdeps/aarch64/fpu/advsimd/tanf.c
# math/aarch64/advsimd/tanh.c, revision 447bbaa
sysdeps/aarch64/fpu/advsimd/tanh.c
# math/aarch64/advsimd/tanhf.c, revision 45237ba
sysdeps/aarch64/fpu/advsimd/tanhf.c
# math/aarch64/advsimd/tanpi.c, revision 1aad38d
sysdeps/aarch64/fpu/advsimd/tanpi.c
# math/aarch64/advsimd/tanpif.c, revision 1aad38d
sysdeps/aarch64/fpu/advsimd/tanpif.c
# math/aarch64/advsimd/v_exp_special_case_inline.h, revision dce5dab
sysdeps/aarch64/fpu/advsimd/v_exp_special_case_inline.h
# math/aarch64/advsimd/v_expf_inline.h, revision 747e0e1
sysdeps/aarch64/fpu/advsimd/v_expf_inline.h
# math/aarch64/advsimd/v_expf_special_inline.h, revision a5092e8
sysdeps/aarch64/fpu/advsimd/v_expf_special_inline.h
# math/aarch64/advsimd/v_expm1_inline.h, revision 0a6ab6d
sysdeps/aarch64/fpu/advsimd/v_expm1_inline.h
# math/aarch64/advsimd/v_expm1f_inline.h, revision 0a6ab6d
sysdeps/aarch64/fpu/advsimd/v_expm1f_inline.h
# math/aarch64/advsimd/v_log1p_inline.h, revision 1aad38d
sysdeps/aarch64/fpu/advsimd/v_log1p_inline.h
# math/aarch64/advsimd/v_log1pf_inline.h, revision 0a6ab6d
sysdeps/aarch64/fpu/advsimd/v_log1pf_inline.h
# math/aarch64/advsimd/v_pow_inline.h, revision efde0c7
sysdeps/aarch64/fpu/advsimd/v_pow_inline.h
# math/aarch64/advsimd/v_powf_inline.h, revision 5b06a16
sysdeps/aarch64/fpu/advsimd/v_powf_inline.h
# math/aarch64/advsimd/v_powrf_inline.h, revision 30da949
sysdeps/aarch64/fpu/advsimd/v_powrf_inline.h
# math/aarch64/advsimd/v_poly_f32.h, revision 0a6ab6d
sysdeps/aarch64/fpu/advsimd/poly_advsimd_f32.h
# math/aarch64/advsimd/v_poly_f64.h, revision 0a6ab6d
sysdeps/aarch64/fpu/advsimd/poly_advsimd_f64.h
# math/poly_generic.h, revision 0a6ab6d
sysdeps/aarch64/fpu/advsimd/poly_generic.h
# math/aarch64/advsimd/v_math.h, revision 1829557
sysdeps/aarch64/fpu/advsimd/v_math.h
# math/aarch64/advsimd/v_trig_fallback.h, revision 677a12b
sysdeps/aarch64/fpu/advsimd/v_trig_fallback.h
# math/aarch64/advsimd/v_trigf_fallback.h, revision 15c35d9
sysdeps/aarch64/fpu/advsimd/v_trigf_fallback.h
# String routines
# string/aarch64/__mtag_tag_region.S, revision 41e5ae5
sysdeps/aarch64/__mtag_tag_region.S
# string/aarch64/__mtag_tag_zero_region.S, revision 41e5ae5
sysdeps/aarch64/__mtag_tag_zero_region.S
# string/aarch64/memchr-mte.S, revision 41e5ae5
sysdeps/aarch64/memchr.S
# string/aarch64/memcmp.S, revision 41e5ae5
sysdeps/aarch64/memcmp.S
# string/aarch64/memcpy-advsimd.S, revision 41e5ae5
sysdeps/aarch64/memcpy.S
# string/aarch64/memcpy-mops.S, revision 41e5ae5
sysdeps/aarch64/multiarch/memcpy_mops.S
# string/aarch64/memcpy-sve.S, revision 71e3640
sysdeps/aarch64/multiarch/memcpy_sve.S
# string/aarch64/memmove-mops.S, revision 41e5ae5
sysdeps/aarch64/multiarch/memmove_mops.S
# string/aarch64/memrchr.S, revision 41e5ae5
sysdeps/aarch64/memrchr.S
# string/aarch64/memset-mops.S, revision 41e5ae5
sysdeps/aarch64/multiarch/memset_mops.S
# string/aarch64/memset-sve.S, revision 0f71101
sysdeps/aarch64/multiarch/memset_sve_zva64.S
# string/aarch64/memset.S, revision 098df8c
sysdeps/aarch64/memset.S
# string/aarch64/stpcpy.S, revision 189dfef
sysdeps/aarch64/stpcpy.S
# string/aarch64/strchr-mte.S, revision 41e5ae5
sysdeps/aarch64/strchr.S
# string/aarch64/strchrnul-mte.S, revision 41e5ae5
sysdeps/aarch64/strchrnul.S
# string/aarch64/strcmp.S, revision 41e5ae5
sysdeps/aarch64/strcmp.S
# string/aarch64/strcpy.S, revision 41e5ae5
sysdeps/aarch64/strcpy.S
# string/aarch64/strlen-mte.S, revision 41e5ae5
sysdeps/aarch64/strlen.S
# string/aarch64/strncmp.S, revision 41e5ae5
sysdeps/aarch64/strncmp.S
# string/aarch64/strnlen.S, revision 41e5ae5
sysdeps/aarch64/strnlen.S
# string/aarch64/strrchr-mte.S, revision 41e5ae5
sysdeps/aarch64/strrchr.S
# string/arm/memchr.S, revision 1eb5d7c
sysdeps/arm/armv6t2/memchr.S
# string/arm/memcpy.S, revision 1eb5d7c
sysdeps/arm/armv7/multiarch/memcpy_impl.S
# string/arm/strcmp.S, revision 1eb5d7c
sysdeps/arm/armv7/strcmp.S
# string/arm/strlen-armv6t2.S, revision 1eb5d7c
sysdeps/arm/armv6t2/strlen.S
+77
View File
@@ -0,0 +1,77 @@
libBrokenLocale {
GLIBC_2.0
}
libc {
GLIBC_2.0
GLIBC_2.1 GLIBC_2.0
GLIBC_2.1.1 GLIBC_2.1
GLIBC_2.1.2 GLIBC_2.1.1
}
libcrypt {
GLIBC_2.0
}
libdb {
GLIBC_2.0
}
libdl {
GLIBC_2.0
GLIBC_2.1 GLIBC_2.0
}
libhurduser {
GLIBC_2.0
}
libm {
GLIBC_2.0
GLIBC_2.1 GLIBC_2.0
}
libmachuser {
GLIBC_2.0
}
libnsl {
GLIBC_2.0
GLIBC_2.1 GLIBC_2.0
}
libnss_compat {
GLIBC_2.0
}
libnss_db {
GLIBC_2.0
}
libnss_dns {
GLIBC_2.0
}
libnss_files {
GLIBC_2.0
GLIBC_2.1 GLIBC_2.0
}
libnss_hesiod {
GLIBC_2.1
}
libnss_nis {
GLIBC_2.0
}
libnss_nisplus {
GLIBC_2.0
}
libpthread {
GLIBC_2.0
GLIBC_2.1 GLIBC_2.0
GLIBC_2.1.1 GLIBC_2.1
}
libresolv {
GLIBC_2.0
}
librt {
GLIBC_2.1
}
libutil {
GLIBC_2.0
}
libdb1 {
GLIBC_2.0
}
ld.so {
GLIBC_2.0
GLIBC_2.1 GLIBC_2.0
GLIBC_2.1.1 GLIBC_2.1
}
-6
View File
@@ -22,11 +22,5 @@
.*-sun-solaris2.* 2 2.0.0 # just an arbitrary value
.*-.*-freebsd.*-gnu.* 3 4.0.0 # earliest compatible kernel version
.*-.*-knetbsd.*-gnu.* 4 1.6.0 # earliest compatible kernel version
.*-.*-syllable.* 5 2.0.0 # just an arbitrary value
# There is no catch-all default here because every supported OS that uses
# ELF must have its own unique ABI tag.
Vendored
+66 -485
View File
@@ -1,53 +1,21 @@
dnl We require that everyone use exactly the same Autoconf version so that
dnl the internal functions defined and used by the main configure script
dnl match those expected by the fragments. When changing this version,
dnl install.texi also needs to be updated.
m4_define([GLIBC_AUTOCONF_VERSION], [2.72])
m4_if(m4_defn([AC_AUTOCONF_VERSION]), GLIBC_AUTOCONF_VERSION, [],
[m4_fatal(m4_flatten(
Exactly version GLIBC_AUTOCONF_VERSION of Autoconf is required but you have
m4_defn([AC_AUTOCONF_VERSION])
), [63])])dnl
dnl
dnl We define the macro GLIBC_PROVIDES to do an AC_PROVIDE for each macro
dnl which appears in configure.ac before the sysdep configure scripts are run.
dnl Each sysdep configure.ac does GLIBC_PROVIDES first, to avoid any
dnl which appears in configure.in before the sysdep configure scripts are run.
dnl Each sysdep configure.in does GLIBC_PROVIDES first, to avoid any
dnl AC_REQUIREs or AC_BEFOREs duplicating their code.
dnl
define([GLIBC_PROVIDES], [dnl
AC_PROVIDE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
AC_PROVIDE([AC_CONFIG_SUBDIRS])dnl
AC_PROVIDE([_AS_ECHO_N_PREPARE])dnl
AC_PROVIDE([_AS_ECHO_PREPARE])dnl
AC_PROVIDE([_AS_CR_PREPARE])dnl
AC_PROVIDE([_AS_TR_SH_PREPARE])dnl
AC_PROVIDE([_AS_VAR_ARITH_PREPARE])dnl
define(AC_FD_MSG,6)dnl Autoconf lossage.
define(AC_FD_CC,5)dnl Autoconf lossage.
AC_DEFUN([GLIBC_PROVIDES], [dnl
AC_PROVIDE([AC_PROG_INSTALL])dnl
AC_PROVIDE([AC_PROG_RANLIB])dnl
AC_PROVIDE([AC_PROG_CC])dnl
AC_PROVIDE([AC_PROG_CPP])dnl
AC_PROVIDE([_AS_PATH_SEPARATOR_PREPARE])dnl
AC_PROVIDE([_AS_TEST_PREPARE])dnl
AC_PROVIDE([_AS_BASENAME_PREPARE])dnl
AC_PROVIDE([_AS_ME_PREPARE])dnl
AC_PROVIDE([_AS_LINENO_PREPARE])dnl
AC_PROVIDE([AS_SHELL_FN_as_fn_set_status])dnl
AC_PROVIDE([AS_SHELL_FN_as_fn_exit])dnl
AC_PROVIDE([AS_SHELL_FN_as_fn_arith])dnl
AC_PROVIDE([AS_SHELL_FN_ac_fn_c_try_compile])dnl
AC_PROVIDE([AS_SHELL_FN_ac_fn_c_try_cpp])dnl
define([AS_MESSAGE_LOG_FD],5)dnl
define([AS_MESSAGE_FD],6)dnl
dnl Ripped out of AS_INIT, which does more cruft we do not want.
m4_wrap([m4_divert_pop([BODY])[]])
m4_divert_push([BODY])[]dnl
dnl End of ripped out of AS_INIT.
# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
define([_AC_LANG], [C])dnl
# This file is generated from configure.in by Autoconf. DO NOT EDIT!
])dnl
dnl
dnl Check for a symbol
dnl
AC_DEFUN([AC_CHECK_SYMBOL], [dnl
AC_DEFUN(AC_CHECK_SYMBOL, [dnl
AC_MSG_CHECKING(for $1)
AC_CACHE_VAL(ac_cv_check_symbol_$1, [dnl
AC_TRY_LINK(,
@@ -67,7 +35,7 @@ dnl
dnl Locate a program and check that its version is acceptable.
dnl AC_PROG_CHECK_VER(var, namelist, version-switch,
dnl [version-extract-regexp], version-glob [, do-if-fail])
AC_DEFUN([AC_CHECK_PROG_VER],
AC_DEFUN(AC_CHECK_PROG_VER,
[AC_CHECK_PROGS([$1], [$2])
if test -z "[$]$1"; then
ac_verc_fail=yes
@@ -76,7 +44,7 @@ else
AC_MSG_CHECKING([version of [$]$1])
changequote(<<,>>)dnl
ac_prog_version=`<<$>>$1 $3 2>&1 ifelse(<<$4>>,,,
<<| sed -n 's/^.*patsubst(<<$4>>,/,\/).*$/\1/p'>>)`
<<| sed -n 's/^.*patsubst(<<$4>>,/,\/).*$/\1/p'>>)`
case $ac_prog_version in
'') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
<<$5>>)
@@ -94,10 +62,42 @@ fi])
])
dnl These modifications are to allow for an empty cross compiler tree.
define([_AC_COMPILER_EXEEXT], [EXEEXT=
dnl In the situation that cross-linking is impossible, the variable
dnl `cross_linkable' will be substituted with "yes".
dnl The vercheck macros are expected to have been called already.
AC_DEFUN(AC_PROG_CC_LOCAL,
[AC_BEFORE([$0], [AC_PROG_CPP])dnl
AC_PROG_CC_WORKS_LOCAL
AC_PROG_CC_GNU
if test $ac_cv_prog_gcc != yes; then
AC_MSG_ERROR([GNU libc must be compiled using GNU CC])
fi
])
AC_DEFUN([LIBC_PROG_FOO_GNU],
AC_DEFUN(AC_PROG_CC_WORKS_LOCAL,
[AC_MSG_CHECKING([whether the C compiler ($CC $CFLAGS $LDFLAGS) works])
AC_CACHE_VAL(ac_cv_prog_cc_works,
[AC_LANG_SAVE
AC_LANG_C
AC_TRY_COMPILER([main(){return(0);}], ac_cv_prog_cc_works, ac_cv_prog_cc_cross)
AC_LANG_RESTORE])
AC_MSG_RESULT($ac_cv_prog_cc_works)
if test $ac_cv_prog_cc_works = no; then
cross_linkable=no
ac_cv_prog_cc_cross=yes
dnl AC_MSG_ERROR([installation or configuration problem: C compiler cannot create executables.])
else
cross_linkable=yes
fi
AC_CACHE_CHECK(
[whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler],
ac_cv_prog_cc_cross, [:])
AC_SUBST(cross_linkable)
cross_compiling=$ac_cv_prog_cc_cross
])
AC_DEFUN(LIBC_PROG_FOO_GNU,
[# Most GNU programs take a -v and spit out some text including
# the word 'GNU'. Some try to read stdin, so give them /dev/null.
if $1 -o conftest -v </dev/null 2>&1 | grep GNU > /dev/null 2>&1; then
@@ -107,453 +107,34 @@ else
fi
rm -fr contest*])
AC_DEFUN([LIBC_PROG_BINUTILS],
AC_DEFUN(LIBC_PROG_BINUTILS,
[# Was a --with-binutils option given?
if test -n "$path_binutils"; then
# Make absolute; ensure a single trailing slash.
path_binutils=`(cd $path_binutils; pwd) | sed 's%/*$%/%'`
CC="$CC -B$path_binutils"
fi
case "$CC" in
*fuse-ld=lld*) LDNAME=ld.lld;;
*) LDNAME=ld;;
esac
if test -z "$LD"; then
LD=`$CC -print-prog-name=$LDNAME`
fi
if test -z "$AR"; then
AR=`$CC -print-prog-name=ar`
fi
AS=`$CC -print-prog-name=as`
LD=`$CC -print-prog-name=ld`
AR=`$CC -print-prog-name=ar`
AC_SUBST(AR)
if test -z "$OBJCOPY"; then
OBJCOPY=`$CC -print-prog-name=objcopy`
# ranlib has to be treated a bit differently since it might not exist at all.
RANLIB=`$CC -print-prog-name=ranlib`
if test $RANLIB = ranlib; then
# This extra check has to happen since gcc simply echos the parameter in
# case it cannot find the value in its own directories.
AC_CHECK_TOOL(RANLIB, ranlib, :)
fi
AC_SUBST(OBJCOPY)
if test -z "$GPROF"; then
GPROF=`$CC -print-prog-name=gprof`
fi
AC_SUBST(GPROF)
if test -z "$READELF"; then
READELF=`$CC -print-prog-name=readelf`
fi
AC_SUBST(READELF)
if test -z "$OBJDUMP"; then
OBJDUMP=`$CC -print-prog-name=objdump`
fi
AC_SUBST(OBJDUMP)
if test -z "$NM"; then
NM=`$CC -print-prog-name=nm`
fi
AC_SUBST(NM)
if test -z "$STRIP"; then
STRIP=`$CC -print-prog-name=strip`
fi
AC_SUBST(STRIP)
AC_SUBST(RANLIB)
# Determine whether we are using GNU binutils.
AC_CACHE_CHECK(whether $AS is GNU as, libc_cv_prog_as_gnu,
[LIBC_PROG_FOO_GNU($AS, libc_cv_prog_as_gnu=yes, libc_cv_prog_as_gnu=no)])
rm -f a.out
gnu_as=$libc_cv_prog_as_gnu
AC_CACHE_CHECK(whether $LD is GNU ld, libc_cv_prog_ld_gnu,
[LIBC_PROG_FOO_GNU($LD, libc_cv_prog_ld_gnu=yes, libc_cv_prog_ld_gnu=no)])
gnu_ld=$libc_cv_prog_ld_gnu
])
dnl Run a static link test with -nostdlib -nostartfiles.
dnl LIBC_TRY_LINK_STATIC([code], [action-if-true], [action-if-false])
AC_DEFUN([LIBC_TRY_LINK_STATIC],
[cat > conftest.c <<EOF
int _start (void) { return 0; }
int __start (void) { return 0; }
$1
EOF
AS_IF([AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS $no_ssp -o conftest
conftest.c -static -nostartfiles -nostdlib
1>&AS_MESSAGE_LOG_FD])],
[$2], [$3])
rm -f conftest*])
dnl Test a compiler option or options with an empty input file.
dnl LIBC_TRY_CC_OPTION([options], [action-if-true], [action-if-false])
AC_DEFUN([LIBC_TRY_CC_OPTION],
[AS_IF([AC_TRY_COMMAND([${CC-cc} $1 -xc /dev/null -S -o /dev/null])],
[$2], [$3])])
dnl Test a C++ compiler option or options with an empty input file.
dnl LIBC_TRY_CXX_OPTION([options], [action-if-true], [action-if-false])
AC_DEFUN([LIBC_TRY_CXX_OPTION],
[AS_IF([AC_TRY_COMMAND([${CXX-c++} $1 -xc++ /dev/null -S -o /dev/null])],
[$2], [$3])])
dnl Find and source sysdeps/*/preconfigure.
dnl LIBC_PRECONFIGURE([$srcdir], [for])
AC_DEFUN([LIBC_PRECONFIGURE], [dnl
if frags=`ls -d $1/sysdeps/*/preconfigure 2> /dev/null`
then
AC_MSG_CHECKING($2 preconfigure fragments)
for frag in $frags; do
name=`echo "$frag" | sed 's@/[[^/]]*[$]@@;s@^.*/@@'`
echo $ECHO_N "$name $ECHO_C" >&AS_MESSAGE_FD
. "$frag"
done
AC_MSG_RESULT()
fi])
# These two macros are taken from GCC's config/acx.m4.
dnl Support the --with-pkgversion configure option.
dnl ACX_PKGVERSION(default-pkgversion)
AC_DEFUN([ACX_PKGVERSION],[
AC_ARG_WITH(pkgversion,
AS_HELP_STRING([--with-pkgversion=PKG],
[Use PKG in the version string in place of "$1"]),
[case "$withval" in
yes) AC_MSG_ERROR([package version not specified]) ;;
no) PKGVERSION= ;;
*) PKGVERSION="($withval) " ;;
esac],
PKGVERSION="($1) "
)
PKGVERSION_TEXI=`echo "$PKGVERSION" | sed 's/@/@@/g'`
AC_SUBST(PKGVERSION)
AC_SUBST(PKGVERSION_TEXI)
])
dnl Support the --with-bugurl configure option.
dnl ACX_BUGURL(default-bugurl)
AC_DEFUN([ACX_BUGURL],[
AC_ARG_WITH(bugurl,
AS_HELP_STRING([--with-bugurl=URL],
[Direct users to URL to report a bug]),
[case "$withval" in
yes) AC_MSG_ERROR([bug URL not specified]) ;;
no) BUGURL=
;;
*) BUGURL="$withval"
;;
esac],
BUGURL="$1"
)
case ${BUGURL} in
"")
REPORT_BUGS_TO=
REPORT_BUGS_TEXI=
;;
*)
REPORT_BUGS_TO="<$BUGURL>"
REPORT_BUGS_TEXI=@uref{`echo "$BUGURL" | sed 's/@/@@/g'`}
;;
esac;
AC_SUBST(REPORT_BUGS_TO)
AC_SUBST(REPORT_BUGS_TEXI)
])
dnl Check linker option support.
dnl LIBC_LINKER_FEATURE([ld_option], [cc_option], [action-if-true], [action-if-false])
AC_DEFUN([LIBC_LINKER_FEATURE],
[AC_MSG_CHECKING([for linker that supports $1])
libc_linker_feature=no
cat > conftest.c <<EOF
int _start (void) { return 42; }
EOF
if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS $no_ssp
$2 -nostdlib -nostartfiles
-fPIC -shared -o conftest.so conftest.c
1>&AS_MESSAGE_LOG_FD])
then
if ${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS $no_ssp $2 -nostdlib \
-nostartfiles -fPIC -shared -o conftest.so conftest.c 2>&1 \
| grep "warning: $1 ignored" > /dev/null 2>&1; then
true
else
libc_linker_feature=yes
fi
fi
rm -f conftest*
if test $libc_linker_feature = yes; then
$3
else
$4
fi
AC_MSG_RESULT($libc_linker_feature)])
dnl Check linker option support.
dnl LIBC_TEST_LINKER_FEATURE([ld_option], [cc_option], [action-if-true], [action-if-false])
AC_DEFUN([LIBC_TEST_LINKER_FEATURE],
[AC_MSG_CHECKING([for linker that supports $1])
libc_linker_feature=no
cat > conftest.c <<EOF
int _start (void) { return 42; }
EOF
saved_CC="$CC"
CC="$TEST_CC"
if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS $no_ssp
$2 -nostdlib -nostartfiles
-fPIC -shared -o conftest.so conftest.c
1>&AS_MESSAGE_LOG_FD])
then
if ${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS $no_ssp $2 -nostdlib \
-nostartfiles -fPIC -shared -o conftest.so conftest.c 2>&1 \
| grep "warning: $1 ignored" > /dev/null 2>&1; then
true
else
libc_linker_feature=yes
fi
fi
rm -f conftest*
if test $libc_linker_feature = yes; then
$3
else
$4
fi
CC="$saved_CC"
AC_MSG_RESULT($libc_linker_feature)])
dnl Add a makefile variable, with value set from a shell string
dnl (expanded by the shell inside double quotes), to config.make.
dnl LIBC_CONFIG_VAR(make-variable, shell-value)
AC_DEFUN([LIBC_CONFIG_VAR],
[config_vars="$config_vars
$1 = $2"])
dnl Check that function FUNC was inlined as a builtin. The code fragment
dnl CODE is compiled with additional options CC_OPTION. If FUNC is
dnl not found in the assembly then it is assumed the compiler has support
dnl for this builtin and has inlined the call. If the compiler has the
dnl feature then ACTION-IF-TRUE is called, otherwise ACTION-IF-FALSE.
dnl It is up to the caller to provide a CC_OPTION that ensures the
dnl builtin is inlined if present.
dnl Warning: This may not work for some machines. For example on ARM the
dnl ABI dictates that some functions should not be inlined and instead
dnl should be provided by a compiler helper library e.g. __aeabi_memcpy.
dnl This is done to reduce code size.
dnl LIBC_COMPILER_BUILTIN([func], [code], [cc_option], [action-if-true], [action-if-false])
AC_DEFUN([LIBC_COMPILER_BUILTIN_INLINED],
[AC_MSG_CHECKING([for compiler support of inlined builtin function $1])
libc_compiler_builtin_inlined=no
cat > conftest.c <<EOF
int _start (void) { $2 return 0; }
EOF
if ! AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS $no_ssp
$3 -nostdlib -nostartfiles
-S conftest.c -o - | grep -F "$1"
1>&AS_MESSAGE_LOG_FD])
then
libc_compiler_builtin_inlined=yes
fi
rm -f conftest*
if test $libc_compiler_builtin_inlined = yes; then
$4
else
$5
fi
AC_MSG_RESULT($libc_compiler_builtin_inlined)])
dnl Default to slibdir named SLIBDIR instead of "lib", and rtlddir
dnl named RTLDDIR instead of "lib". This is used to put 64-bit
dnl libraries in /lib64.
dnl LIBC_SLIBDIR_RTLDDIR([slibdir], [rtlddir])
AC_DEFUN([LIBC_SLIBDIR_RTLDDIR],
[test -n "$libc_cv_slibdir" ||
case "$prefix" in
/usr | /usr/)
libc_cv_slibdir='/$1'
libc_cv_rtlddir='/$2'
if test "$libdir" = '${exec_prefix}/lib'; then
libdir='${exec_prefix}/$1';
# Locale data can be shared between 32-bit and 64-bit libraries.
libc_cv_complocaledir='${exec_prefix}/lib/locale'
fi
;;
esac])
dnl Test a CC compiler option or options with an input file.
dnl LIBC_TRY_CC_COMMAND([message], [code], [options],
dnl [CC-cache-id], [CC-action-if-true], [CC-action-if-false])
AC_DEFUN([LIBC_TRY_CC_COMMAND],
[
cat > conftest.c <<EOF
$2
EOF
AC_CACHE_CHECK([$1], $4, [dnl
if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $3 conftest.c -o conftest 1>&AS_MESSAGE_LOG_FD])
then
[$5]
else
[$6]
fi])
rm -f conftest*])
dnl Run a test with TEST_CC.
dnl LIBC_CHECK_TEST_CC([commands])
AC_DEFUN([LIBC_CHECK_TEST_CC],
[
saved_CC="$CC"
CC="$TEST_CC"
[$1]
CC="$saved_CC"
])
dnl Run a test with TEST_CXX.
dnl LIBC_CHECK_TEST_CXX([commands])
AC_DEFUN([LIBC_CHECK_TEST_CXX],
[
saved_CXX="$CXX"
CXX="$TEST_CXX"
[$1]
CXX="$saved_CXX"
])
dnl Test a CC and TEST_CC compiler option or options with an empty input
dnl file.
dnl LIBC_TRY_CC_AND_TEST_CC_OPTION([message], [options],
dnl [CC-cache-id], [CC-action-if-true], [CC-action-if-false]
dnl [TEST_CC-cache-id], [TEST_CC-action-if-true], [TEST_CC-action-if-false])
AC_DEFUN([LIBC_TRY_CC_AND_TEST_CC_OPTION],
[
AC_CACHE_CHECK([$1], $3,
[LIBC_TRY_CC_OPTION([$2], [$4], [$5])])
if test "$TEST_CC" = "$CC"; then
$6=$[$3]
else
LIBC_CHECK_TEST_CC(
AC_CACHE_CHECK([$1 in testing], $6,
[LIBC_TRY_CC_OPTION([$2], [$7], [$8])])
)
fi
])
dnl Test a CC and TEST_CC compiler option or options with an input file.
dnl LIBC_TRY_CC_AND_TEST_CC_COMMAND([message], [code], [options],
dnl [CC-cache-id], [CC-action-if-true], [CC-action-if-false]
dnl [TEST_CC-cache-id], [TEST_CC-action-if-true], [TEST_CC-action-if-false])
AC_DEFUN([LIBC_TRY_CC_AND_TEST_CC_COMMAND],
[
cat > conftest.c <<EOF
$2
EOF
AC_CACHE_CHECK([$1], $4, [dnl
if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $3 conftest.c -o conftest 1>&AS_MESSAGE_LOG_FD])
then
[$5]
else
[$6]
fi
])
if test "$TEST_CC" = "$CC"; then
$7=$[$4]
else
LIBC_CHECK_TEST_CC(
AC_CACHE_CHECK([$1 in testing], $7, [dnl
if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $3 conftest.c -o conftest 1>&AS_MESSAGE_LOG_FD])
then
[$8]
else
[$9]
fi])
)
fi
rm -f conftest*])
dnl Test if CC and TEST_CC can link with an input file.
dnl LIBC_TRY_CC_AND_TEST_LINK([message], [code],
dnl [CC-cache-id], [CC-action-if-true], [CC-action-if-false]
dnl [TEST_CC-cache-id], [TEST_CC-action-if-true], [TEST_CC-action-if-false])
AC_DEFUN([LIBC_TRY_CC_AND_TEST_LINK],
[
AC_CACHE_CHECK([$1], $3, [
AC_LINK_IFELSE([AC_LANG_PROGRAM([], [$2])],
[$4], [$5])
])
if test "$TEST_CC" = "$CC"; then
$6=$[$3]
else
LIBC_CHECK_TEST_CC(
AC_CACHE_CHECK([$1 in testing], $6, [
AC_LINK_IFELSE([AC_LANG_PROGRAM([], [$2])],
[$7], [$8])
])
)
fi
])
dnl Test a TEST_CC compiler option or options with an input file.
dnl LIBC_TRY_TEST_CC_COMMAND([message], [code], [options],
dnl [TEST_CC-cache-id], [TEST_CC-action-if-true], [TEST_CC-action-if-false])
AC_DEFUN([LIBC_TRY_TEST_CC_COMMAND],
[
cat > conftest.c <<EOF
$2
EOF
LIBC_CHECK_TEST_CC(
AC_CACHE_CHECK([$1 in testing], $4, [dnl
if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $3 conftest.c -o conftest 1>&AS_MESSAGE_LOG_FD])
then
[$5]
else
[$6]
fi])
)
rm -f conftest*])
dnl Test a TEST_CXX compiler option or options with an input file.
dnl LIBC_TRY_TEST_CXX_COMMAND([message], [code], [options],
dnl [TEST_CXX-cache-id], [TEST_CXX-action-if-true],
dnl [TEST_CXX-action-if-false])
AC_DEFUN([LIBC_TRY_TEST_CXX_COMMAND],
[
cat > conftest.cc <<EOF
$2
EOF
LIBC_CHECK_TEST_CXX(
AC_CACHE_CHECK([$1 in testing], $4, [dnl
if AC_TRY_COMMAND([${CXX-c++} $CXXFLAGS $CPPFLAGS $3 conftest.cc -o conftest 1>&AS_MESSAGE_LOG_FD])
then
[$5]
else
[$6]
fi])
)
rm -f conftest*])
dnl Test a TEST_CC compiler option or options with an empty input file.
dnl LIBC_TRY_TEST_CC_OPTION([message], [options],
dnl [TEST_CC-cache-id], [TEST_CC-action-if-true], [TEST_CC-action-if-false])
AC_DEFUN([LIBC_TRY_TEST_CC_OPTION],
[
LIBC_CHECK_TEST_CC(
AC_CACHE_CHECK([$1 in testing], $3,
[LIBC_TRY_CC_OPTION([$2], [$4], [$5])])
)
])
dnl Test a TEST_CXX compiler option or options with an empty input file.
dnl LIBC_TRY_TEST_CXX_OPTION([message], [options],
dnl [TEST_CXX-cache-id], [TEST_CXX-action-if-true],
dnl [TEST_CXX-action-if-false])
AC_DEFUN([LIBC_TRY_TEST_CXX_OPTION],
[
LIBC_CHECK_TEST_CXX(
AC_CACHE_CHECK([$1 in testing], $3,
[LIBC_TRY_CXX_OPTION([$2], [$4], [$5])])
)
])
dnl Check if toolchain supports generating binaries with the required
dnl ELF marking as checked by readelf.
dnl LIBC_CHECK_ELF_PROPERTY([message], [pattern], [action-if-true], [action-if-false])
AC_DEFUN([LIBC_CHECK_ELF_PROPERTY],
[AC_MSG_CHECKING([$1])
libc_elf_property=no
cat > conftest.c <<EOF
int foo (void) { return 42; }
EOF
if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS
-fPIC -shared -o conftest.so conftest.c
1>&AS_MESSAGE_LOG_FD])
then
if AC_TRY_COMMAND([LC_ALL=C $READELF -n --wide conftest.so | grep "$2" 1>&AS_MESSAGE_LOG_FD])
then
libc_elf_property=yes
else
libc_elf_property=no
fi
fi
rm -f conftest*
if test $libc_elf_property = yes; then
$3
else
$4
fi
AC_MSG_RESULT($libc_elf_property)])
-14
View File
@@ -1,14 +0,0 @@
printf: incorrect output for integers with thousands separator and width field
When the printf family of functions is called with a format specifier
that uses an <apostrophe> (enable grouping) and a minimum width
specifier, the resulting output could be larger than reasonably expected
by a caller that computed a tight bound on the buffer size. The
resulting larger than expected output could result in a buffer overflow
in the printf family of functions.
CVE-Id: CVE-2023-25139
Public-Date: 2023-02-02
Vulnerable-Commit: e88b9f0e5cc50cab57a299dc7efe1a4eb385161d (2.37)
Fix-Commit: c980549cc6a1c03c23cc2fe3e7b0fe626a0364b0 (2.38)
Fix-Commit: 07b9521fc6369d000216b96562ff7c0ed32a16c4 (2.37-4)
-15
View File
@@ -1,15 +0,0 @@
getaddrinfo: Stack read overflow in no-aaaa mode
If the system is configured in no-aaaa mode via /etc/resolv.conf,
getaddrinfo is called for the AF_UNSPEC address family, and a DNS
response is received over TCP that is larger than 2048 bytes,
getaddrinfo may potentially disclose stack contents via the returned
address data, or crash.
CVE-Id: CVE-2023-4527
Public-Date: 2023-09-12
Vulnerable-Commit: f282cdbe7f436c75864e5640a409a10485e9abb2 (2.36)
Fix-Commit: bd77dd7e73e3530203be1c52c8a29d08270cb25d (2.39)
Fix-Commit: 4ea972b7edd7e36610e8cde18bf7a8149d7bac4f (2.36-113)
Fix-Commit: b7529346025a130fee483d42178b5c118da971bb (2.37-38)
Fix-Commit: b25508dd774b617f99419bdc3cf2ace4560cd2d6 (2.38-19)
-15
View File
@@ -1,15 +0,0 @@
getaddrinfo: Potential use-after-free
When an NSS plugin only implements the _gethostbyname2_r and
_getcanonname_r callbacks, getaddrinfo could use memory that was freed
during buffer resizing, potentially causing a crash or read or write to
arbitrary memory.
CVE-Id: CVE-2023-4806
Public-Date: 2023-09-12
Fix-Commit: 973fe93a5675c42798b2161c6f29c01b0e243994 (2.39)
Fix-Commit: e09ee267c03e3150c2c9ba28625ab130705a485e (2.34-420)
Fix-Commit: e3ccb230a961b4797510e6a1f5f21fd9021853e7 (2.35-270)
Fix-Commit: a9728f798ec7f05454c95637ee6581afaa9b487d (2.36-115)
Fix-Commit: 6529a7466c935f36e9006b854d6f4e1d4876f942 (2.37-39)
Fix-Commit: 00ae4f10b504bc4564e9f22f00907093f1ab9338 (2.38-20)
-16
View File
@@ -1,16 +0,0 @@
tunables: local privilege escalation through buffer overflow
If a tunable of the form NAME=NAME=VAL is passed in the environment of a
setuid program and NAME is valid, it may result in a buffer overflow,
which could be exploited to achieve escalated privileges. This flaw was
introduced in glibc 2.34.
CVE-Id: CVE-2023-4911
Public-Date: 2023-10-03
Vulnerable-Commit: 2ed18c5b534d9e92fc006202a5af0df6b72e7aca (2.34)
Fix-Commit: 1056e5b4c3f2d90ed2b4a55f96add28da2f4c8fa (2.39)
Fix-Commit: dcc367f148bc92e7f3778a125f7a416b093964d9 (2.34-423)
Fix-Commit: c84018a05aec80f5ee6f682db0da1130b0196aef (2.35-274)
Fix-Commit: 22955ad85186ee05834e47e665056148ca07699c (2.36-118)
Fix-Commit: b4e23c75aea756b4bddc4abcf27a1c6dca8b6bd3 (2.37-45)
Fix-Commit: 750a45a783906a19591fb8ff6b7841470f1f5701 (2.38-27)
-18
View File
@@ -1,18 +0,0 @@
getaddrinfo: DoS due to memory leak
The fix for CVE-2023-4806 introduced a memory leak when an application
calls getaddrinfo for AF_INET6 with AI_CANONNAME, AI_ALL and AI_V4MAPPED
flags set.
CVE-Id: CVE-2023-5156
Public-Date: 2023-09-25
Vulnerable-Commit: e09ee267c03e3150c2c9ba28625ab130705a485e (2.34-420)
Vulnerable-Commit: e3ccb230a961b4797510e6a1f5f21fd9021853e7 (2.35-270)
Vulnerable-Commit: a9728f798ec7f05454c95637ee6581afaa9b487d (2.36-115)
Vulnerable-Commit: 6529a7466c935f36e9006b854d6f4e1d4876f942 (2.37-39)
Vulnerable-Commit: 00ae4f10b504bc4564e9f22f00907093f1ab9338 (2.38-20)
Fix-Commit: 8006457ab7e1cd556b919f477348a96fe88f2e49 (2.34-421)
Fix-Commit: 17092c0311f954e6f3c010f73ce3a78c24ac279a (2.35-272)
Fix-Commit: 856bac55f98dc840e7c27cfa82262b933385de90 (2.36-116)
Fix-Commit: 4473d1b87d04b25cdd0e0354814eeaa421328268 (2.37-42)
Fix-Commit: 5ee59ca371b99984232d7584fe2b1a758b4421d3 (2.38-24)
-15
View File
@@ -1,15 +0,0 @@
syslog: Heap buffer overflow in __vsyslog_internal
__vsyslog_internal did not handle a case where printing a SYSLOG_HEADER
containing a long program name failed to update the required buffer
size, leading to the allocation and overflow of a too-small buffer on
the heap.
CVE-Id: CVE-2023-6246
Public-Date: 2024-01-30
Vulnerable-Commit: 52a5be0df411ef3ff45c10c7c308cb92993d15b1 (2.37)
Fix-Commit: 6bd0e4efcc78f3c0115e5ea9739a1642807450da (2.39)
Fix-Commit: 23514c72b780f3da097ecf33a793b7ba9c2070d2 (2.38-42)
Fix-Commit: 97a4292aa4a2642e251472b878d0ec4c46a0e59a (2.37-57)
Vulnerable-Commit: b0e7888d1fa2dbd2d9e1645ec8c796abf78880b9 (2.36-16)
Fix-Commit: d1a83b6767f68b3cb5b4b4ea2617254acd040c82 (2.36-126)
-15
View File
@@ -1,15 +0,0 @@
syslog: Heap buffer overflow in __vsyslog_internal
__vsyslog_internal used the return value of snprintf/vsnprintf to
calculate buffer sizes for memory allocation. If these functions (for
any reason) failed and returned -1, the resulting buffer would be too
small to hold output.
CVE-Id: CVE-2023-6779
Public-Date: 2024-01-30
Vulnerable-Commit: 52a5be0df411ef3ff45c10c7c308cb92993d15b1 (2.37)
Fix-Commit: 7e5a0c286da33159d47d0122007aac016f3e02cd (2.39)
Fix-Commit: d0338312aace5bbfef85e03055e1212dd0e49578 (2.38-43)
Fix-Commit: 67062eccd9a65d7fda9976a56aeaaf6c25a80214 (2.37-58)
Vulnerable-Commit: b0e7888d1fa2dbd2d9e1645ec8c796abf78880b9 (2.36-16)
Fix-Commit: 2bc9d7c002bdac38b5c2a3f11b78e309d7765b83 (2.36-127)
-13
View File
@@ -1,13 +0,0 @@
syslog: Integer overflow in __vsyslog_internal
__vsyslog_internal calculated a buffer size by adding two integers, but
did not first check if the addition would overflow.
CVE-Id: CVE-2023-6780
Public-Date: 2024-01-30
Vulnerable-Commit: 52a5be0df411ef3ff45c10c7c308cb92993d15b1 (2.37)
Fix-Commit: ddf542da94caf97ff43cc2875c88749880b7259b (2.39)
Fix-Commit: d37c2b20a4787463d192b32041c3406c2bd91de0 (2.38-44)
Fix-Commit: 2b58cba076e912961ceaa5fa58588e4b10f791c0 (2.37-59)
Vulnerable-Commit: b0e7888d1fa2dbd2d9e1645ec8c796abf78880b9 (2.36-16)
Fix-Commit: b9b7d6a27aa0632f334352fa400771115b3c69b7 (2.36-128)

Some files were not shown because too many files have changed in this diff Show More