]> git.baikalelectronics.ru Git - uboot.git/commit
Makefile: Don't generate position independent code
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Mon, 6 Aug 2018 16:00:22 +0000 (19:00 +0300)
committerBin Meng <bmeng.cn@gmail.com>
Mon, 20 Aug 2018 05:52:06 +0000 (13:52 +0800)
commit389e695be7f84db8cd4783dfe57c09fe46db7a43
treece7e5190adde0574c52884da50b549c34e4fa308
parent642d58ce07da7e0c99b69afbf7e047bb10c0d5f5
Makefile: Don't generate position independent code

Since gcc-8 the --enable-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@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>
Tested-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Tested-by: Bin Meng <bmeng.cn@gmail.com>
Makefile