diff options
-rw-r--r-- | faq/release.mdwn | 6 | ||||
-rw-r--r-- | history.mdwn | 5 | ||||
-rw-r--r-- | hurd.mdwn | 2 | ||||
-rw-r--r-- | index.mdwn | 4 | ||||
-rw-r--r-- | microkernel/mach/gnumach.mdwn | 2 | ||||
-rw-r--r-- | microkernel/mach/history.mdwn | 3 | ||||
-rw-r--r-- | microkernel/mach/mig/gnu_mig.mdwn | 2 | ||||
-rw-r--r-- | news/2015-10-31-releases.mdwn | 14 | ||||
-rw-r--r-- | news/2016-05-18-releases.mdwn | 24 | ||||
-rw-r--r-- | news/2016-12-18-releases.mdwn | 170 | ||||
-rw-r--r-- | open_issues/gcc.mdwn | 23 | ||||
-rw-r--r-- | open_issues/gnat.mdwn | 76 | ||||
m--------- | toolchain/logs | 0 |
13 files changed, 290 insertions, 41 deletions
diff --git a/faq/release.mdwn b/faq/release.mdwn index 4c9806be..1db0714a 100644 --- a/faq/release.mdwn +++ b/faq/release.mdwn @@ -13,13 +13,13 @@ License|/fdl]]."]]"""]] [[!meta title="When will the Hurd be released?"]] -GNU Hurd 0.8 has been [[released on 2016-05-18|news/2016-05-18-releases]], -along with GNU Mach 1.7, and GNU MIG 1.7. Read about the [[Hurd's +GNU Hurd 0.9 has been [[released on 2016-12-18|news/2016-12-18-releases]], +along with GNU Mach 1.8, and GNU MIG 1.8. Read about the [[Hurd's status|hurd/status]]. > OK, but when will it be finished? -Well, is the Linux kernel considered to be really "finished"? Hurd 0.8 does +Well, is the Linux kernel considered to be really "finished"? Hurd 0.9 does work, but of course it can still become better -- beginning to [[contribute|contributing]] and [[joining us|how_many_developers]] is the best way for you to help achieve that. :-) diff --git a/history.mdwn b/history.mdwn index 949ba7d8..7f1b8e8e 100644 --- a/history.mdwn +++ b/history.mdwn @@ -118,6 +118,8 @@ mailing lists. released|news/2015-10-31-releases]] (2015-10-31) * [[GNU Hurd 0.8, GNU Mach 1.7, GNU MIG 1.7 released|news/2016-05-18-releases]] (2016-05-18) + * [[GNU Hurd 0.9, GNU Mach 1.8, GNU MIG 1.8 + released|news/2016-12-18-releases]] (2016-12-18) # An Incomplete GNU Hurd Timeline @@ -177,4 +179,5 @@ mailing lists. 2015|news/2015-04-29-debian_gnu_hurd_2015]], [[GNU Hurd 0.7, GNU Mach 1.6, GNU MIG 1.6 released|news/2015-10-31-releases]], [...]. * 2016: [...], [[GNU Hurd 0.8, GNU Mach 1.7, GNU MIG 1.7 - released|news/2016-05-18-releases]]. + released|news/2016-05-18-releases]], [...], [[GNU Hurd 0.9, GNU Mach 1.8, + GNU MIG 1.8 released|news/2016-12-18-releases]]. @@ -12,7 +12,7 @@ License|/fdl]]."]]"""]] The GNU Hurd is under active development. Because of that, there is no *stable* version. We mainly distribute the Hurd sources through [[Git|source_repositories]]. The latest release is [[GNU Hurd -0.8|news/2016-05-18-releases]]. +0.9|news/2016-12-18-releases]]. Although it is possible to bootstrap the GNU/Hurd system from the sources by cross-compiling and installing the system software and the basic applications, @@ -98,8 +98,8 @@ are rendered on a [[Debian_GNU/Hurd|hurd/running/debian]] system. # Current Status -The latest releases are [[GNU Hurd 0.8, GNU Mach 1.7, GNU MIG -1.7|news/2016-05-18-releases]], 2016-05-18. The Hurd is +The latest releases are [[GNU Hurd 0.9, GNU Mach 1.8, GNU MIG +1.8|news/2016-12-18-releases]], 2016-12-18. The Hurd is developed by [[a few volunteers in their spare time|faq/how_many_developers]]. The project welcomes any assistance [[you can provide|contributing]]. Porting and development expertise is still badly needed in many key areas. diff --git a/microkernel/mach/gnumach.mdwn b/microkernel/mach/gnumach.mdwn index 10c48186..08331b04 100644 --- a/microkernel/mach/gnumach.mdwn +++ b/microkernel/mach/gnumach.mdwn @@ -24,7 +24,7 @@ GNU Mach runs on x86 machines. See the [[hardware_compatibility_list]] and information about [[ports]] to other architectures. -The latest release is [[GNU Mach 1.7|news/2016-05-18-releases]]. +The latest release is [[GNU Mach 1.8|news/2016-12-18-releases]]. # Advantages of GNU Mach diff --git a/microkernel/mach/history.mdwn b/microkernel/mach/history.mdwn index 2d29eef1..bba392ce 100644 --- a/microkernel/mach/history.mdwn +++ b/microkernel/mach/history.mdwn @@ -217,4 +217,5 @@ IRC, freenode, #hurd, 2013-07-04: [[!tag open_issue_documentation]]Update for [[GNU Mach 1.4 release|news/2013-09-27]], [[GNU Mach 1.5|news/2015-04-10-releases]], [[GNU -Mach 1.6|news/2015-10-31-releases]], [[GNU Mach 1.7|news/2016-05-18-releases]]. +Mach 1.6|news/2015-10-31-releases]], [[GNU Mach 1.7|news/2016-05-18-releases]], +[[GNU Mach 1.8|news/2016-12-18-releases]]. diff --git a/microkernel/mach/mig/gnu_mig.mdwn b/microkernel/mach/mig/gnu_mig.mdwn index 415d1e32..f2cc54a5 100644 --- a/microkernel/mach/mig/gnu_mig.mdwn +++ b/microkernel/mach/mig/gnu_mig.mdwn @@ -24,7 +24,7 @@ Like its predecessor, it can only generate C code, that has to be compiled and linked to client and server programs respectively ([[!taglink open_issue_mig]]). -The latest release is [[GNU MIG 1.7|news/2016-05-18-releases]]. +The latest release is [[GNU MIG 1.8|news/2016-12-18-releases]]. * [[Building]] - building (and obtaining) GNU MIG * [[Open Issues|tag/open_issue_mig]] diff --git a/news/2015-10-31-releases.mdwn b/news/2015-10-31-releases.mdwn index a4404e7a..75ceb9cf 100644 --- a/news/2015-10-31-releases.mdwn +++ b/news/2015-10-31-releases.mdwn @@ -24,20 +24,20 @@ We're pleased to announce new releases! [NEWS](http://git.savannah.gnu.org/cgit/hurd/hurd.git/tree/NEWS?id=v0.7): Version 0.7 (2015-10-31) - + The node cache in ext2fs has been improved, generalized, and moved to libdiskfs. It is now also used by isofs and fatfs. - + The native fakeroot tool has been greatly improved. It now handles named sockets, and multiple corner cases related to permissions were identified and fixed. - + A new utility `rpcscan' has been introduced. It scans Mach servers and displays the RPCs handled by the associated demuxer. - + A long-standing synchronization issue involving the filesystem translators, libdiskfs, and libpager has been identified and fixed. - + The code has been updated to work with newer versions of the compiler and libc, and numerous bugs have been fixed throughout the code. @@ -110,8 +110,8 @@ We're pleased to announce new releases! Version 1.6 (2015-10-31) - * MIG now emits RPC lookup functions that are declared `static inline' - improving compatibility with newer dialects of C. + MIG now emits RPC lookup functions that are declared `static inline' + improving compatibility with newer dialects of C. Release tarballs may be downloaded from <ftp://ftp.gnu.org/gnu/mig/>, <http://ftp.gnu.org/gnu/mig/>, or checked out of Git, diff --git a/news/2016-05-18-releases.mdwn b/news/2016-05-18-releases.mdwn index 6ed8a31e..ff1b2c30 100644 --- a/news/2016-05-18-releases.mdwn +++ b/news/2016-05-18-releases.mdwn @@ -103,22 +103,22 @@ We're pleased to announce new releases! Version 1.7 (2016-05-18) - * MIG now has a test suite. It includes a set of valid and invalid - definition files that MIG will try to process. For valid - definitions, GCC will compile the stubs to check if valid C code was - generated. + MIG now has a test suite. It includes a set of valid and invalid + definition files that MIG will try to process. For valid + definitions, GCC will compile the stubs to check if valid C code was + generated. - * The generated code uses integer types from <stdint.h> now instead of - the old Mach types. + The generated code uses integer types from <stdint.h> now instead of + the old Mach types. - * Code that was hard-coding the word size has been identified and - fixed. + Code that was hard-coding the word size has been identified and + fixed. - * Support for the obsolete kinds of RPC routines 'functions', - 'procedures', and 'simple procedures' has been removed. + Support for the obsolete kinds of RPC routines 'functions', + 'procedures', and 'simple procedures' has been removed. - * MIG now emits code that casts objects translated from capabilities - to the correct C type. + MIG now emits code that casts objects translated from capabilities + to the correct C type. Release tarballs may be downloaded from <ftp://ftp.gnu.org/gnu/mig/>, <http://ftp.gnu.org/gnu/mig/>, or checked out of Git, diff --git a/news/2016-12-18-releases.mdwn b/news/2016-12-18-releases.mdwn new file mode 100644 index 00000000..124358e4 --- /dev/null +++ b/news/2016-12-18-releases.mdwn @@ -0,0 +1,170 @@ +[[!meta copyright="Copyright © 2016 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] + +[[!meta date="2016-12-18 22:00 UTC"]] + +GNU Hurd 0.9, GNU Mach 1.8, GNU MIG 1.8 released. +[[!if test="included()" then="""[[!toggle id=full_news +text="Details."]][[!toggleable id=full_news text="[[!paste id=full_news]]"]]""" +else=" +[[!paste id=full_news]]"]] + +[[!cut id="full_news" text=""" + +We're pleased to announce new releases! + + * **GNU Hurd 0.9**, + [NEWS](http://git.savannah.gnu.org/cgit/hurd/hurd.git/tree/NEWS?id=v0.9): + + Version 0.9 (2016-12-18) + + The 'boot' program can now be run as unprivileged user, allowing any + user to create unprivileged Subhurds. + + An ethernet multiplexer (eth-multiplexer translator) has been merged + into this repository. This is a network multiplexer that makes + available virtual interfaces, and routes traffic between these and a + real ethernet interface. It uses the Berkeley Packet Filter library + (libbpf), which has also been merged. The ethernet multiplexer now + generates and uses stable pseudo-random ethernet addresses for the + virtual interfaces. + + As usual, bugs have been fixed throughout the code, notably in + libpager and ext2fs which now gracefully handles running out of space. + Further compatibility fixes have been applied (for compliance to + standards such as POSIX). + + Release tarballs may be downloaded from <ftp://ftp.gnu.org/gnu/hurd/>, + <http://ftp.gnu.org/gnu/hurd/>, or checked out of Git, + <http://git.savannah.gnu.org/cgit/hurd/hurd.git>. SHA1 checksums: + + 7e6f406e5202501216a0da4b4ee7914f1e0a7552 hurd-0.9.tar.bz2 + ffa8d40a99835824a0228bf54570c054d7fe8bf0 hurd-0.9.tar.bz2.sig + ef999452b794d7239a5ed98999def51bf11c8c17 hurd-0.9.tar.gz + 5f5d34bbbe8cccafbe79f13103d7e48b3a2baddf hurd-0.9.tar.gz.sig + + The [[**GNU Hurd**|hurd]] is the GNU project's replacement for the [[Unix]] + kernel. It is a collection of [[servers|hurd/translator]] that run on the + Mach microkernel to implement file systems, network protocols, file access + control, and other features that are implemented by the Unix kernel or + similar kernels (such as Linux). More detailed: [[hurd/documentation]], + [[hurd/what_is_the_GNU_Hurd]]. + + * **GNU Mach 1.8**, + [NEWS](http://git.savannah.gnu.org/cgit/hurd/gnumach.git/tree/NEWS?id=v1.8): + + Version 1.8 (2016-12-18) + + The memory management system was extensively reworked. A new type for + physical addresses is now used where appropriate, and the system can + make use of the high memory segment. Many paging issues have been + addressed, and as a result the system handles low memory situations + more gracefully now. + + The virtual memory system now uses a red-black tree for allocations, + and as a result it now supports tasks with tens of thousands of + mappings. + + Debugging and error reporting has been improved. Among other things + the VM maps are now augmented with names that are used in error + messages, panics and assertions point to their locations, the lock + debugging mechanism has been fixed, and the kernel debugger can now + inspect stack traces reaching into the machine-dependent bits + implemented in assembler. + + As usual, bugs have been fixed throughout the code, including minor + issues with the gsync synchronization mechanism which is now used for + the internal locks in the GNU C Library (glibc). + + The deprecated external memory management interface has been removed. + + The partial ACPI support has been removed. + + Release tarballs may be downloaded from <ftp://ftp.gnu.org/gnu/gnumach/>, + <http://ftp.gnu.org/gnu/gnumach/>, or checked out of Git, + <http://git.savannah.gnu.org/cgit/hurd/gnumach.git>. SHA1 checksums: + + 4b59c7f7bc814576d2b88c43c0cdba292824f230 gnumach-1.8.tar.bz2 + e6262e991a1e056bb87741a9456811cf73e8f7cd gnumach-1.8.tar.bz2.sig + 8cbebcbee624c64d926de8779272821c67663da5 gnumach-1.8.tar.gz + 28c4a65db3c04bf7508b74a187a3d6aae3a5ce31 gnumach-1.8.tar.gz.sig + + [[**GNU Mach**|microkernel/mach/gnumach]] is the GNU distribution of the + [[Mach microkernel|microkernel/mach]], upon which a GNU Hurd system is + based. The [[microkernel]] provides an [[Inter Process Communication + (IPC)|ipc]] mechanism that the Hurd uses to define interfaces for + implementing in a distributed multi-server fashion the services a + traditional operating system kernel provides. More detailed: + [[microkernel/mach/documentation]]. + + * **GNU MIG 1.8**, + [NEWS](http://git.savannah.gnu.org/cgit/hurd/mig.git/tree/NEWS?id=v1.8): + + Version 1.8 (2016-12-18) + + A spurious warning in the generated code has been fixed. + + Release tarballs may be downloaded from <ftp://ftp.gnu.org/gnu/mig/>, + <http://ftp.gnu.org/gnu/mig/>, or checked out of Git, + <http://git.savannah.gnu.org/cgit/hurd/mig.git>. SHA1 checksums: + + f765881d6ed4e883372eee52fd7842e7048a3da8 mig-1.8.tar.bz2 + 2091b6632176eeba1dac524d0ae939334ed51fdb mig-1.8.tar.bz2.sig + 40ae7a5a12e3e5669a2c449be7ebe53c72c90b3a mig-1.8.tar.gz + 054ca62368fb7d8e95ca1447510905e3df8906d8 mig-1.8.tar.gz.sig + + [[**GNU MIG**|microkernel/mach/mig/gnu_mig]] is the GNU distribution of the + [[Mach 3.0 Interface Generator (MIG)|microkernel/mach/mig]]. This tool + translates [[Remote Procedure Call (RPC)|rpc]] definition files to C code, + and is required to compile any packages that are receiving or invoking + RPCs, such as GNU Mach, GNU Hurd, and the GNU C Library (glibc) when + compiled for the Hurd. More detailed: + [[microkernel/mach/mig/documentation]]. + + * **glibc-2.23-hurd+libpthread-20161218** + + Based on the [[glibc]] 2.23 release, we include additional changes for GNU + Hurd support, and bundle GNU Hurd's [[libpthread]]. + + Snapshot tarballs may be downloaded from <ftp://alpha.gnu.org/gnu/hurd/>, + <http://alpha.gnu.org/gnu/hurd/>, or checked out of Git, + <http://git.savannah.gnu.org/cgit/hurd/glibc.git> and + <http://git.savannah.gnu.org/cgit/hurd/libpthread.git>. SHA1 checksums: + + 55c9b6c61991a9ea585f019c787fe0e1da756cd4 glibc-2.23-hurd+libpthread-20161218.tar.bz2 + 1475fff2029fcd2c655d6ea05af5efa74d224b4f glibc-2.23-hurd+libpthread-20161218.tar.bz2.sig + 870425f4398b514ecac06e88fc21e13536eece4f glibc-2.23-hurd+libpthread-20161218.tar.gz + e8c9c6ba34cd4bbabb8fadd28f335430ca88ff0b glibc-2.23-hurd+libpthread-20161218.tar.gz.sig + + The [[**GNU C Library** (glibc)|glibc]] implements a system's standard + library functions (as described by ISO C, and POSIX, for example). An + important part of the Hurd actually resides in glibc: here, the system + interfaces are implemented on top of the [[Hurd IPC + protocols|hurd/interface]]. This is different to the Linux port, where + most simple system interfaces are in fact simply forwarded to/implemented + as [[system_call]]s. + +Many thanks to all the people who are helping! + +If you want to give the Hurd a try, you may easily do so with [[Debian +GNU/Hurd|hurd/running/debian]]. + +The GNU Hurd system currently runs on 32-bit x86 machines. To compile the +Hurd, you need a toolchain configured to target `i?86-gnu`; you cannot use a +toolchain targeting GNU/Linux. + +Please read the [[FAQ]]. +Bug reports should be sent to [[mailing_lists/bug-hurd]] or filed on +<http://savannah.gnu.org/bugs/?group=hurd>. Requests for assistance +should be sent to [[mailing_lists/help-hurd]] or filed on +<http://savannah.gnu.org/support/?group=hurd>. You can also find us on +the Freenode IRC network in the [[#hurd|IRC]] channel. + +"""]] diff --git a/open_issues/gcc.mdwn b/open_issues/gcc.mdwn index 3627179b..194a401a 100644 --- a/open_issues/gcc.mdwn +++ b/open_issues/gcc.mdwn @@ -479,9 +479,10 @@ Last reviewed up to the Git mirror's commit 0 0x102c000 0 0x102e000 - * `gcc/ada` (not all reviewed) + * `gcc/ada`, `gcc/testsuite/ada`, `gcc/testsuite/gnat.dg`, `gnattools`, + `libada` (not all reviewed) - * [[Ada (GNAT)|gnat]] support is work in progress. + See [[Ada (GNAT)|gnat]]. * `gcc/go`, `gcc/testsuite/go.test`, `libgo` (not reviewed) @@ -992,13 +993,14 @@ Last reviewed up to the Git mirror's commit Here's a log of a GCC build run; this is from Git commit 17f0f5acdcfb9181203ca9b6d8f8cbc64e5ce843 (2016-11-30), +plus *GNU Hurd Ada fixes*, plus *libstdc++ RLIMIT changes* ([[!message-id "8760n66mky.fsf@euler.schwinge.homeip.net"]]), run on kepler.SCHWINGE and laplace.SCHWINGE. $ export LC_ALL=C $ (cd ../master/ && contrib/gcc_update --touch) - $ ../master/configure --prefix="$PWD".install SHELL=/bin/dash CC=gcc-6 CXX=g++-6 --enable-languages=all --disable-libcilkrts --disable-libsanitizer --disable-libvtv --disable-libmpx --with-native-system-header-dir=/usr/include --enable-multiarch 2>&1 | tee log_build + $ ../master/configure --prefix="$PWD".install SHELL=/bin/dash CC=gcc-6 CXX=g++-6 --enable-languages=all,ada --disable-libcilkrts --disable-libsanitizer --disable-libvtv --disable-libmpx --with-native-system-header-dir=/usr/include --enable-multiarch 2>&1 | tee log_build [...] $ make 2>&1 | tee log_build_ [...] @@ -1014,8 +1016,8 @@ until these is auto-detected/fixed/ported for GNU Hurd. `/include` for GNU Hurd. Explicit `--enable-multiarch` because *auto check [is disabled if] configured with --native-system-header-dir*. -This takes up around 3.9 GiB, and runs for [[3 h 57 min|performance#measure]] -on kepler.SCHWINGE and [[4 h 37 min|performance#measure]] on laplace.SCHWINGE. +This takes up around 4.6 GiB, and runs for [[5 h 16 min|performance#measure]] +on kepler.SCHWINGE and [[5 h 14 min|performance#measure]] on laplace.SCHWINGE. <!-- @@ -1132,8 +1134,8 @@ on kepler.SCHWINGE and [[4 h 37 min|performance#measure]] on laplace.SCHWINGE. $ make install 2>&1 | tee log_install [...] -This takes up around 0.9 GiB, and runs for [[1 min|performance#measure]] on -kepler.SCHWINGE and [[3 min|performance#measure]] on laplace.SCHWINGE. +This takes up around 1.3 GiB, and runs for [[1 min|performance#measure]] on +kepler.SCHWINGE and [[5 min|performance#measure]] on laplace.SCHWINGE. ## Analysis @@ -1152,8 +1154,8 @@ kepler.SCHWINGE and [[3 min|performance#measure]] on laplace.SCHWINGE. $ make -k check 2>&1 | tee log_test [...] -This runs for [[5 h 43 min|performance#measure]] on kepler.SCHWINGE and [[12 h -36 min|performance#measure]] on laplace.SCHWINGE. +This runs for [[6 h 12 min|performance#measure]] on kepler.SCHWINGE and [[13 h +34 min|performance#measure]] on laplace.SCHWINGE. ## Analysis @@ -1447,9 +1449,6 @@ This runs for [[5 h 43 min|performance#measure]] on kepler.SCHWINGE and [[12 h 2015-11-03 - With work-in-progress [[Ada (GNAT)|gnat]] support (but that's not relevant - here). - splitting /home/thomas/tmp/gcc/hurd/master.build/gcc/testsuite/ada/acats/tests/cb/cb1010a.ada into: cb1010a.adb BUILD cb1010a.adb diff --git a/open_issues/gnat.mdwn b/open_issues/gnat.mdwn index 1ab0866f..9c255ed5 100644 --- a/open_issues/gnat.mdwn +++ b/open_issues/gnat.mdwn @@ -125,6 +125,82 @@ GCC trunk r234252. Still incomplete? (Changes to generic files?) +### 2016-12-14 + +Based on commit 17f0f5acdcfb9181203ca9b6d8f8cbc64e5ce843, [[tschwinge]] tried +to build with `--enable-languages=all,ada`, but both with `--disable-bootstrap` +and `--enable-bootstrap` we run into: + + [...] + make[3]: Entering directory '/media/erich/home/thomas/tmp/gcc/hurd/master.build/gcc/ada/tools' + ../../gnatbind -I- -I../rts -I. -I/home/thomas/tmp/gcc/hurd/master/gcc/ada -o b_gnatm.adb gnatmake.ali + error: "system.ads" has restriction No_Implicit_Dynamic_Code + error: but the following files violate this restriction: + error: "make.adb" + error: "makeutl.adb" + error: "prj.adb" + error: "prj-env.adb" + error: "prj-conf.adb" + error: "prj-nmsc.adb" + ../gcc-interface/Makefile:2987: recipe for target 'b_gnatm.adb' failed + make[3]: *** [b_gnatm.adb] Error 5 + make[3]: Leaving directory '/media/erich/home/thomas/tmp/gcc/hurd/master.build/gcc/ada/tools' + Makefile:194: recipe for target 'gnattools-native' failed + make[2]: *** [gnattools-native] Error 2 + make[2]: Leaving directory '/media/erich/home/thomas/tmp/gcc/hurd/master.build/gnattools' + Makefile:9650: recipe for target 'all-gnattools' failed + make[1]: *** [all-gnattools] Error 2 + make[1]: Leaving directory '/media/erich/home/thomas/tmp/gcc/hurd/master.build' + Makefile:895: recipe for target 'all' failed + make: *** [all] Error 2 + +(Partial) review of differences: + +`gcc/ada/gcc-interface/Makefile.in`, Linux vs. Hurd + + LIBGNAT_TARGET_PAIRS = \ + a-intnam.ads<a-intnam-linux.ads vs. a-intnam.ads<a-intnam-freebsd.ads + a-synbar.adb<a-synbar-posix.adb vs. nil + a-synbar.ads<a-synbar-posix.ads vs. nil + s-inmaop.adb<s-inmaop-posix.adb + s-intman.adb<s-intman-posix.adb + s-tpopsp.adb<s-tpopsp-tls.adb vs. s-tpopsp.adb<s-tpopsp-posix-foreign.adb + g-sercom.adb<g-sercom-linux.adb vs. nil + a-exetim.adb<a-exetim-posix.adb vs. nil + a-exetim.ads<a-exetim-default.ads vs. nil + s-linux.ads<s-linux.ads vs. nil + s-osinte.adb<s-osinte-posix.adb vs. s-osinte.adb<s-osinte-gnu.adb + $(ATOMICS_TARGET_PAIRS) + system.ads<system-linux-x86.ads vs. system.ads<system-freebsd-x86.ads + $(X86_TARGET_PAIRS) + s-mudido.adb<s-mudido-affinity.adb vs. nil + s-osinte.ads<s-osinte-linux.ads vs. s-osinte.ads<s-osinte-gnu.ads + s-osprim.adb<s-osprim-posix.adb + s-taprop.adb<s-taprop-linux.adb vs. s-taprop.adb<s-taprop-posix.adb + s-tasinf.ads<s-tasinf-linux.ads vs. nil + s-tasinf.adb<s-tasinf-linux.adb vs. nil + s-taspri.ads<s-taspri-posix.ads + + EH_MECHANISM=-gcc + THREADSLIB = -lpthread -lrt vs. THREADSLIB = -lpthread + EXTRA_GNATRTL_NONTASKING_OBJS += g-sse.o g-ssvety.o + EXTRA_GNATRTL_TASKING_OBJS=s-linux.o a-exetim.o vs. nil + + TOOLS_TARGET_PAIRS = \ + mlib-tgt-specific.adb<mlib-tgt-specific-linux.adb + indepsw.adb<indepsw-gnu.adb + + GNATLIB_SHARED = gnatlib-shared-dual + MISCLIB = -ldl vs. nil + GMEM_LIB = gmemlib + LIBRARY_VERSION := $(LIB_VERSION) + + TOOLS1_LIBS=-ldl vs. nil + +Eventually [[tschwinge]] found <http://gcc.gnu.org/PR57188>, and similarly +fixed the issue. + + ## `getcontext`/`makecontext`/`setcontext`/`swapcontext` usage analysis In context of [[glibc/t/tls-threadvar]]. Looking at GCC trunk commit diff --git a/toolchain/logs b/toolchain/logs -Subproject 1532082e156ed4229d8f7002b733deddb7da34a +Subproject b9d5ce62343d50df7800d02ae97790ea9e530bd |