All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] [PATCH v1] Makefile: Don't generate position independent code
@ 2018-08-06 16:00 Andy Shevchenko
  2018-08-06 16:56 ` Heinrich Schuchardt
  0 siblings, 1 reply; 14+ messages in thread
From: Andy Shevchenko @ 2018-08-06 16:00 UTC (permalink / raw)
  To: u-boot

Since gcc-8 the --enabled-default-pie starts producing code which assembler
can't translate in case of U-Boot. The build fails with

  {standard input}: Assembler messages:
  {standard input}:21100: Error: junk at end of line, first unrecognized character is `@'
  {standard input}:21120: Error: junk at end of line, first unrecognized character is `@'

and so on.

This is usually the case for x86 platform because in many cases it uses host
compiler from the Linux distributions, where PIE is enabled by default.
Previously (gcc-7 and earlier) that was a potential issue due to absence of
constructions like

  .long   end.5561 at gotoff-start.5558@gotoff

which are a cause of above error messages in gcc-8.

Fix all these by disabling PIE on Makefile level.

Reported-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Suggested-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
 Makefile | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/Makefile b/Makefile
index 884b7d943c..e2310f3552 100644
--- a/Makefile
+++ b/Makefile
@@ -375,6 +375,10 @@ KBUILD_CFLAGS   := -Wall -Wstrict-prototypes \
 KBUILD_CFLAGS	+= -fshort-wchar
 KBUILD_AFLAGS   := -D__ASSEMBLY__
 
+# Don't generate position independent code
+KBUILD_CFLAGS	+= $(call cc-option,-fno-PIE)
+KBUILD_AFLAGS	+= $(call cc-option,-fno-PIE)
+
 # Read UBOOTRELEASE from include/config/uboot.release (if it exists)
 UBOOTRELEASE = $(shell cat include/config/uboot.release 2> /dev/null)
 UBOOTVERSION = $(VERSION)$(if $(PATCHLEVEL),.$(PATCHLEVEL)$(if $(SUBLEVEL),.$(SUBLEVEL)))$(EXTRAVERSION)
-- 
2.18.0

^ permalink raw reply related	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2018-09-03  7:57 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-08-06 16:00 [U-Boot] [PATCH v1] Makefile: Don't generate position independent code Andy Shevchenko
2018-08-06 16:56 ` Heinrich Schuchardt
2018-08-06 17:11   ` Andy Shevchenko
2018-08-06 17:32     ` Heinrich Schuchardt
2018-08-06 18:55       ` Andy Shevchenko
2018-08-06 19:40         ` Heinrich Schuchardt
2018-08-06 19:49           ` Andy Shevchenko
2018-08-09  9:43             ` Andy Shevchenko
2018-08-09  9:54               ` Bin Meng
2018-08-09 12:25                 ` Heinrich Schuchardt
2018-08-09 13:07                   ` Andy Shevchenko
2018-08-10  6:04                     ` Bin Meng
2018-09-02 23:50                       ` Simon Glass
2018-09-03  7:57                         ` Andy Shevchenko

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.