From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from mediacenter.hi.pengutronix.de ([2001:6f8:1178:2::65]) by metis.ext.pengutronix.de with esmtp (Exim 4.72) (envelope-from ) id 1S7RQe-0002GC-KD for ptxdist@pengutronix.de; Tue, 13 Mar 2012 14:06:16 +0100 Received: from mol by mediacenter.hi.pengutronix.de with local (Exim 4.72) (envelope-from ) id 1S7RQe-0002BF-J4 for ptxdist@pengutronix.de; Tue, 13 Mar 2012 14:06:16 +0100 Date: Tue, 13 Mar 2012 14:06:16 +0100 From: Michael Olbrich Message-ID: <20120313130616.GQ29221@pengutronix.de> References: <1331587504-16721-1-git-send-email-linux@bohmer.net> <1331587504-16721-3-git-send-email-linux@bohmer.net> <20120313095903.GI29221@pengutronix.de> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: Subject: Re: [ptxdist] [PATCH 3/5] [busybox] Pass extra platform CFLAGS to busybox make 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="iso-8859-1" Content-Transfer-Encoding: quoted-printable Sender: ptxdist-bounces@pengutronix.de Errors-To: ptxdist-bounces@pengutronix.de To: ptxdist@pengutronix.de On Tue, Mar 13, 2012 at 01:46:26PM +0100, Remy Bohmer wrote: > Hi, > = > 2012/3/13 Michael Olbrich : > > On Mon, Mar 12, 2012 at 10:25:02PM +0100, Remy Bohmer wrote: > >> Busybox make is not properly called in case: > >> * compiler name tuple does not match target tuple (as used in multilib > >> =A0 compilers, for example: i686-pc-linux-gnu-gcc can compile for > >> =A0 x86_64-unknown-linux-gnu targets. To solve this the 'SUBARCH' need= to be > >> =A0 set) > >> * CONFIG_EXTRA_CFLAGS need to e set to select the proper sysroot to > >> =A0 compile against in busybox > >> * LDFLAGS to link against the proper sysroot. > >> > >> Signed-off-by: Remy Bohmer > >> --- > >> =A0rules/busybox.make | =A0 =A03 +++ > >> =A01 files changed, 3 insertions(+), 0 deletions(-) > >> > >> diff --git a/rules/busybox.make b/rules/busybox.make > >> index 536aa80..42cb81c 100644 > >> --- a/rules/busybox.make > >> +++ b/rules/busybox.make > >> @@ -49,9 +49,12 @@ $(STATEDIR)/busybox.prepare: > >> > >> =A0BUSYBOX_MAKE_OPT :=3D \ > >> =A0 =A0 =A0 ARCH=3D$(PTXCONF_ARCH_STRING) \ > >> + =A0 =A0 SUBARCH=3D$(PTXCONF_ARCH_STRING) \ > >> =A0 =A0 =A0 CROSS_COMPILE=3D$(COMPILER_PREFIX) \ > >> =A0 =A0 =A0 CONFIG_EXTRA_CFLAGS=3D"$(CROSS_CFLAGS)" \ > >> =A0 =A0 =A0 HOSTCC=3D$(HOSTCC) \ > >> + =A0 =A0 CONFIG_EXTRA_CFLAGS=3D"$(PTXCONF_TARGET_EXTRA_CFLAGS)" \ > >> + =A0 =A0 LDFLAGS=3D"$(PTXCONF_TARGET_EXTRA_LDFLAGS)" \ > > > > =A0 =A0 =A0 =A0CONFIG_EXTRA_CFLAGS=3D"$(CROSS_CPPFLAGS) $(CROSS_CFLAGS)= " \ > > =A0 =A0 =A0 =A0$(CROSS_ENV_LDFLAGS) \ > = > This results in: > ----------------------- > target: busybox.prepare > ----------------------- > = > make: invalid option -- '6' > make: invalid option -- '4' > make: invalid option -- '/' > make: invalid option -- '/' > Usage: make [options] [target] ... > Options: > etc. > = > It seems I have to stick with the bare minimal options I can set > here... Or any other ideas? Don't set any flags in BUSYBOX_MAKE_OPT. From what I can tell, the current busybox Makefile uses CFLAGS, CPPFLAGS and LDFLAGS from the environment. Try something like this (untested): BUSYBOX_MAKE_OPT :=3D \ ARCH=3D$(PTXCONF_ARCH_STRING) \ SUBARCH=3D$(PTXCONF_ARCH_STRING) \ CROSS_COMPILE=3D$(COMPILER_PREFIX) \ HOSTCC=3D$(HOSTCC) BUSYBOX_MAKE_ENV :=3D \ $(CROSS_ENV) \ CFLAGS=3D"$(CROSS_CFLAGS) -I$(KERNEL_HEADERS_INCLUDE_DIR)" SKIP_STRIP=3Dy BUSYBOX_INSTAL_ENV :=3D \ $(BUSYBOX_MAKE_ENV) and remove the PTXCONF_BUSYBOX_RFKILL stuff. The extra "-I" unconditionally does not hurt. 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