From 493aaad4dc61224ff101425c283a36960fb6841b Mon Sep 17 00:00:00 2001 From: PulkoMandy Date: Sun, 10 Apr 2022 18:29:06 +0200 Subject: [PATCH] gcc: make -fPIE do the same as -fPIC Should fix the root cause of https://github.com/haikuports/haikuports/issues/4316 Some CPU architectures do similar things (for example because they don't support PIC at all). So it should be fine to do it here. See for example gcc/gcc/config/gcn/gcn.c Change-Id: Ie23e4ece0d09c1083ad3c3bf43756f3207bbdafe Reviewed-on: https://review.haiku-os.org/c/buildtools/+/5194 Reviewed-by: X512 Reviewed-by: Fredrik Holmqvist Reviewed-by: Adrien Destugues --- gcc/gcc/config/haiku.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/gcc/gcc/config/haiku.c b/gcc/gcc/config/haiku.c index bf62ad5f0c..af14c02f4b 100644 --- a/gcc/gcc/config/haiku.c +++ b/gcc/gcc/config/haiku.c @@ -29,4 +29,11 @@ haiku_override_options (void) dwarf_strict = 1; if (!global_options_set.x_dwarf_version) dwarf_version = 4; + + /* PIE does not work on Haiku, but PIC does the right thing for position + * independant executables. So if asked for PIE, do PIC instead. + */ + if (flag_pie && !flag_pic) + flag_pic = flag_pie; + flag_pie = 0; }