[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] hurd: align -p and -pg behavior on Linux
From: |
Thomas Schwinge |
Subject: |
Re: [PATCH] hurd: align -p and -pg behavior on Linux |
Date: |
Tue, 29 Mar 2016 23:19:09 +0200 |
User-agent: |
Notmuch/0.9-125-g4686d11 (http://notmuchmail.org) Emacs/24.5.1 (i586-pc-linux-gnu) |
Hi!
On Wed, 24 Feb 2016 23:46:36 +0100, I wrote:
> On Sat, 19 Sep 2015 14:00:23 +0200, Samuel Thibault <samuel.thibault@gnu.org>
> wrote:
> > On Linux, -p and -pg do not make gcc link against libc_p.a, only
> > -profile does (as documented in r11246), and thus people expect -p
>
> (Yo, 20 years ago...)
>
> > and -pg to work without libc_p.a installed (it is actually even not
> > available any more in Debian). We should thus rather make the Hurd port
> > do the same to avoid build failures.
>
> Conceptually, ACK.
> I'm now testing the following patch:
Now committed in r234535:
commit 9b2eb5d3268cf674f9a6964479f20428e0b43500
Author: tschwinge <tschwinge@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Tue Mar 29 21:17:53 2016 +0000
[Hurd] Specs maintenance
gcc/
* config/gnu.h (CPP_SPEC, LIB_SPEC): Don't override.
* config/i386/gnu.h (STARTFILE_SPEC): Use gcrt1.o instead of
gcrt0.o if linking dynamically.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@234535
138bc75d-0d04-0410-961f-82ee72b054a4
---
gcc/ChangeLog | 6 ++++++
gcc/config/gnu.h | 8 --------
gcc/config/i386/gnu.h | 4 ++--
3 files changed, 8 insertions(+), 10 deletions(-)
diff --git gcc/ChangeLog gcc/ChangeLog
index 866531f..37e2504 100644
--- gcc/ChangeLog
+++ gcc/ChangeLog
@@ -1,3 +1,9 @@
+2016-03-29 Thomas Schwinge <thomas@codesourcery.com>
+
+ * config/gnu.h (CPP_SPEC, LIB_SPEC): Don't override.
+ * config/i386/gnu.h (STARTFILE_SPEC): Use gcrt1.o instead of
+ gcrt0.o if linking dynamically.
+
2016-03-10 Jan Hubicka <hubicka@ucw.cz>
PR ipa/70283
diff --git gcc/config/gnu.h gcc/config/gnu.h
index 1d98ec8..1dbecda 100644
--- gcc/config/gnu.h
+++ gcc/config/gnu.h
@@ -19,14 +19,6 @@ You should have received a copy of the GNU General Public
License
along with GCC. If not, see <http://www.gnu.org/licenses/>.
*/
-/* Provide GCC options for standard feature-test macros. */
-#undef CPP_SPEC
-#define CPP_SPEC "%{posix:-D_POSIX_SOURCE}"
-
-/* Default C library spec. */
-#undef LIB_SPEC
-#define LIB_SPEC "%{pthread:-lpthread} %{pg|p|profile:-lc_p;:-lc}"
-
#undef GNU_USER_TARGET_OS_CPP_BUILTINS
#define GNU_USER_TARGET_OS_CPP_BUILTINS() \
do { \
diff --git gcc/config/i386/gnu.h gcc/config/i386/gnu.h
index c726d31..9d2f94f 100644
--- gcc/config/i386/gnu.h
+++ gcc/config/i386/gnu.h
@@ -27,11 +27,11 @@ along with GCC. If not, see <http://www.gnu.org/licenses/>.
#undef STARTFILE_SPEC
#if defined HAVE_LD_PIE
#define STARTFILE_SPEC \
- "%{!shared:
%{pg|p|profile:gcrt0.o%s;pie:Scrt1.o%s;static:crt0.o%s;:crt1.o%s}} \
+ "%{!shared:
%{pg|p|profile:%{static:gcrt0.o%s;:gcrt1.o%s};pie:Scrt1.o%s;static:crt0.o%s;:crt1.o%s}}
\
crti.o%s %{static:crtbeginT.o%s;shared|pie:crtbeginS.o%s;:crtbegin.o%s}"
#else
#define STARTFILE_SPEC \
- "%{!shared: %{pg|p|profile:gcrt0.o%s;static:crt0.o%s;:crt1.o%s}} \
+ "%{!shared:
%{pg|p|profile:%{static:gcrt0.o%s;:gcrt1.o%s};static:crt0.o%s;:crt1.o%s}} \
crti.o%s %{static:crtbeginT.o%s;shared|pie:crtbeginS.o%s;:crtbegin.o%s}"
#endif
Grüße
Thomas
signature.asc
Description: PGP signature
- Re: [PATCH] hurd: align -p and -pg behavior on Linux,
Thomas Schwinge <=