Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 548204 - sys-kernel/hardened-sources-3.19.5-r1 fails to build with GCC 5.1.0
Summary: sys-kernel/hardened-sources-3.19.5-r1 fails to build with GCC 5.1.0
Status: RESOLVED UPSTREAM
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Hardened (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: The Gentoo Linux Hardened Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-04-30 03:56 UTC by Aric Belsito
Modified: 2015-04-30 17:31 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Aric Belsito 2015-04-30 03:56:24 UTC
# make
  HOSTCC  scripts/basic/fixdep
  HOSTCC  scripts/kconfig/conf.o
  SHIPPED scripts/kconfig/zconf.tab.c
  SHIPPED scripts/kconfig/zconf.lex.c
  SHIPPED scripts/kconfig/zconf.hash.c
  HOSTCC  scripts/kconfig/zconf.tab.o
  HOSTLD  scripts/kconfig/conf
scripts/kconfig/conf --silentoldconfig Kconfig
  GENHASH  tools/gcc/size_overflow_plugin/size_overflow_hash.h
  GENHASH  tools/gcc/size_overflow_plugin/size_overflow_hash_aux.h
  HOSTCXX -fPIC tools/gcc/size_overflow_plugin/insert_size_overflow_asm.o
tools/gcc/size_overflow_plugin/insert_size_overflow_asm.c: In function ‘void create_so_asm_stmt(asm_data*)’:
tools/gcc/size_overflow_plugin/insert_size_overflow_asm.c:129:40: error: invalid conversion from ‘gimple {aka gimple_statement_base*}’ to ‘gasm*’ [-fpermissive]
  gimple_asm_set_volatile(asm_stmt, true);
                                        ^
In file included from tools/gcc/gcc-common.h:111:0,
                 from tools/gcc/size_overflow_plugin/size_overflow.h:26,
                 from tools/gcc/size_overflow_plugin/insert_size_overflow_asm.c:20:
/usr/lib/gcc/x86_64-pc-linux-gnu/5.1.0/plugin/include/gimple.h:3550:1: note:   initializing argument 1 of ‘void gimple_asm_set_volatile(gasm*, bool)’
 gimple_asm_set_volatile (gasm *asm_stmt, bool volatile_p)
 ^
tools/gcc/size_overflow_plugin/insert_size_overflow_asm.c: In function ‘tree_node* get_so_asm_output(asm_data*)’:
tools/gcc/size_overflow_plugin/insert_size_overflow_asm.c:161:35: error: invalid conversion from ‘gimple {aka gimple_statement_base*}’ to ‘const greturn*’ [-fpermissive]
   return gimple_return_retval(stmt);
                                   ^
In file included from tools/gcc/gcc-common.h:111:0,
                 from tools/gcc/size_overflow_plugin/size_overflow.h:26,
                 from tools/gcc/size_overflow_plugin/insert_size_overflow_asm.c:20:
/usr/lib/gcc/x86_64-pc-linux-gnu/5.1.0/plugin/include/gimple.h:5525:1: note:   initializing argument 1 of ‘tree_node* gimple_return_retval(const greturn*)’
 gimple_return_retval (const greturn *gs)
 ^
tools/gcc/size_overflow_plugin/insert_size_overflow_asm.c: In function ‘void set_so_asm_input_target_stmt(asm_data*)’:
tools/gcc/size_overflow_plugin/insert_size_overflow_asm.c:202:38: error: invalid conversion from ‘gimple {aka gimple_statement_base*}’ to ‘greturn*’ [-fpermissive]
   gimple_return_set_retval(asm_data->target_stmt, asm_data->output);
                                      ^
In file included from tools/gcc/gcc-common.h:111:0,
                 from tools/gcc/size_overflow_plugin/size_overflow.h:26,
                 from tools/gcc/size_overflow_plugin/insert_size_overflow_asm.c:20:
/usr/lib/gcc/x86_64-pc-linux-gnu/5.1.0/plugin/include/gimple.h:5534:1: note:   initializing argument 1 of ‘void gimple_return_set_retval(greturn*, tree)’
 gimple_return_set_retval (greturn *gs, tree retval)
 ^
tools/gcc/size_overflow_plugin/insert_size_overflow_asm.c: At global scope:
tools/gcc/size_overflow_plugin/insert_size_overflow_asm.c:384:1: error: ‘const pass_data’ has no non-static data member named ‘has_gate’
 };
 ^
scripts/Makefile.host:168: recipe for target 'tools/gcc/size_overflow_plugin/insert_size_overflow_asm.o' failed
make[2]: *** [tools/gcc/size_overflow_plugin/insert_size_overflow_asm.o] Error 1
scripts/Makefile.build:402: recipe for target 'tools/gcc/size_overflow_plugin' failed
make[1]: *** [tools/gcc/size_overflow_plugin] Error 2
Makefile:678: recipe for target 'gcc-plugins' failed
make: *** [gcc-plugins] Error 2


Reproducible: Always

Steps to Reproduce:
1. Install sys-kernel/hardened-sources-3.19.5-r1
2. Try to build it with GCC5
3. Errors out.


Expected Results:  
The hardened kernel builds.

I am able to build sys-kernel/gentoo-sources-4.0.1, but I'm on a hardened system, and I'd like this fixed.
Comment 1 Anthony Basile gentoo-dev 2015-04-30 11:41:11 UTC
(In reply to lluixhi from comment #0)
> 
> I am able to build sys-kernel/gentoo-sources-4.0.1, but I'm on a hardened
> system, and I'd like this fixed.

size_overflow_plugin/insert_size_overflow_asm.c needs to be looked at in light of what gcc5 is looking for.  I'll let upstream know.
Comment 2 PaX Team 2015-04-30 12:11:54 UTC
https://twitter.com/grsecurity/status/592145304717303808

it was only fixed in PaX yesterday, you'll have to wait a bit for grsec or take the interdiff from PaX in the meantime.
Comment 3 Anthony Basile gentoo-dev 2015-04-30 17:31:08 UTC
(In reply to PaX Team from comment #2)
> https://twitter.com/grsecurity/status/592145304717303808
> 
> it was only fixed in PaX yesterday, you'll have to wait a bit for grsec or
> take the interdiff from PaX in the meantime.

i'm in no rush.