From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from ptx.hi.pengutronix.de ([2001:6f8:1178:2:5054:ff:fec0:8e10] ident=Debian-exim) by metis.ext.pengutronix.de with esmtp (Exim 4.72) (envelope-from ) id 1VIxvl-0008ID-Mi for ptxdist@pengutronix.de; Mon, 09 Sep 2013 11:38:49 +0200 Received: from mol by ptx.hi.pengutronix.de with local (Exim 4.80) (envelope-from ) id 1VIxvl-0000Eq-L5 for ptxdist@pengutronix.de; Mon, 09 Sep 2013 11:38:49 +0200 Date: Mon, 9 Sep 2013 11:38:49 +0200 From: Michael Olbrich Message-ID: <20130909093849.GE31967@pengutronix.de> References: <3c1ab5a6ffb2ef241d9666c0d473afcf@idefix.lespocky.dyndns.org> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <3c1ab5a6ffb2ef241d9666c0d473afcf@idefix.lespocky.dyndns.org> Subject: Re: [ptxdist] problem compiling gdbserver and gdb with -Wcast-align Reply-To: ptxdist@pengutronix.de List-Id: PTXdist Development Mailing List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: ptxdist-bounces@pengutronix.de Errors-To: ptxdist-bounces@pengutronix.de To: ptxdist@pengutronix.de On Wed, Sep 04, 2013 at 04:19:08PM +0200, Alexander Dahl wrote: > at the moment we are using ptxdist 2013.07.1 with OSELAS toolchain > 2012.12.1 for arm-v5te. We usually have set -Wcast-align in the extra > toolchain options (TARGET_EXTRA_CFLAGS and the two for C++) to spot > alignment problems in our code. Most software packages throw alignment > warnings. Ignoring what this actually means, this is no problem as long > as the package does not set -Werror. gdb sets -Werror. We tried most > currently available versions of gdb and the build fails, e.g. like this: > > /home/adahl/Work/bsp/XXX/platform-XXX/build-target/gdbserver-7.5/gdb/gdbserver/../common/agent.c: > In function 'agent_look_up_symbols': > /home/adahl/Work/bsp/XXX/platform-XXX/build-target/gdbserver-7.5/gdb/gdbserver/../common/agent.c:95:2: > error: cast increases required alignment of target type > [-Werror=cast-align] > cc1: all warnings being treated as errors > make[1]: *** [agent.o] Error 1 > > I guess one could dig into gdb sources, find and hopefully fix the > problem, make a patch, send it to upstream and to ptxdist, wait, do all > the usual things. > > One could also drop the additional flag globally. > > My question: is it possible to override the TARGET_EXTRA_CFLAGS per > package? Maybe in rules/gdbserver.make? Or would this be a bad idea? > > I'd like a quick solution where I don't have to dig into gdb source code > and can keep the global target warnings. O:-) An interesting problem. I think what you need is a -Wno-error=cast-align or just -Wno-error. The problem is, that right now TARGET_EXTRA_CFLAGS are added at the beginning of the command-line, so the -Werror from gdb will overwrite it. Maybe we can move the TARGET_EXTRA_CFLAGS to the end. I'm not sure if there are any compiler flags, that must be specified at the beginning like some of the linker flags? Also, I think an (optional?) -Wno-error at the end would make sense. Michael -- Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | -- ptxdist mailing list ptxdist@pengutronix.de