dash.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] Don't include config.h when building helpers using the native compiler
@ 2020-06-22  5:25 Fabrice Fontaine
  2020-06-22  7:42 ` Herbert Xu
  2020-06-22  8:53 ` Harald van Dijk
  0 siblings, 2 replies; 4+ messages in thread
From: Fabrice Fontaine @ 2020-06-22  5:25 UTC (permalink / raw)
  To: dash; +Cc: Fabrice Fontaine, Peter Korsgaard

config.h contains settings for the cross compiler (most importantly
32/64bit versions of functions), so don't include it when calling the
native compiler to build the helpers.

Otherwise we get build errors like:

/usr/bin/gcc -include ../config.h -DBSD=1 -DSHELL -DIFS_BROKEN  -g -O2 -Wall    -o mkinit mkinit.c
In file included from /usr/include/sys/stat.h:107,
                 from /usr/include/fcntl.h:38,
                 from mkinit.c:50:
/usr/include/bits/stat.h:117: error: redefinition of ‘struct stat’
In file included from /usr/include/fcntl.h:38,
                 from mkinit.c:50:
/usr/include/sys/stat.h:504: error: redefinition of ‘stat’
/usr/include/sys/stat.h:455: note: previous definition of ‘stat’ was here

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
[Retrieved from:
https://git.buildroot.net/buildroot/tree/package/dash/0001-no-config.h-for-helpers.patch]
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
 src/Makefile.am | 1 -
 1 file changed, 1 deletion(-)

diff --git a/src/Makefile.am b/src/Makefile.am
index 1732465..3b1b54e 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -7,7 +7,6 @@ COMMON_CPPFLAGS = \
 AM_CFLAGS = $(COMMON_CFLAGS)
 AM_CPPFLAGS = -include $(top_builddir)/config.h $(COMMON_CPPFLAGS)
 AM_CFLAGS_FOR_BUILD = -g -O2 $(COMMON_CFLAGS) 
-AM_CPPFLAGS_FOR_BUILD = $(COMMON_CPPFLAGS)
 
 COMPILE_FOR_BUILD = \
 	$(CC_FOR_BUILD) $(DEFAULT_INCLUDES) $(AM_CPPFLAGS_FOR_BUILD) \
-- 
2.26.2

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

* Re: [PATCH] Don't include config.h when building helpers using the native compiler
  2020-06-22  5:25 [PATCH] Don't include config.h when building helpers using the native compiler Fabrice Fontaine
@ 2020-06-22  7:42 ` Herbert Xu
  2020-06-22  8:53 ` Harald van Dijk
  1 sibling, 0 replies; 4+ messages in thread
From: Herbert Xu @ 2020-06-22  7:42 UTC (permalink / raw)
  Cc: dash, fontaine.fabrice, jacmet

Fabrice Fontaine <fontaine.fabrice@gmail.com> wrote:
> config.h contains settings for the cross compiler (most importantly
> 32/64bit versions of functions), so don't include it when calling the
> native compiler to build the helpers.
> 
> Otherwise we get build errors like:
> 
> /usr/bin/gcc -include ../config.h -DBSD=1 -DSHELL -DIFS_BROKEN  -g -O2 -Wall    -o mkinit mkinit.c
> In file included from /usr/include/sys/stat.h:107,
>                 from /usr/include/fcntl.h:38,
>                 from mkinit.c:50:
> /usr/include/bits/stat.h:117: error: redefinition of ‘struct stat’
> In file included from /usr/include/fcntl.h:38,
>                 from mkinit.c:50:
> /usr/include/sys/stat.h:504: error: redefinition of ‘stat’
> /usr/include/sys/stat.h:455: note: previous definition of ‘stat’ was here
> 
> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
> [Retrieved from:
> https://git.buildroot.net/buildroot/tree/package/dash/0001-no-config.h-for-helpers.patch]
> Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
> ---
> src/Makefile.am | 1 -
> 1 file changed, 1 deletion(-)
> 
> diff --git a/src/Makefile.am b/src/Makefile.am
> index 1732465..3b1b54e 100644
> --- a/src/Makefile.am
> +++ b/src/Makefile.am
> @@ -7,7 +7,6 @@ COMMON_CPPFLAGS = \
> AM_CFLAGS = $(COMMON_CFLAGS)
> AM_CPPFLAGS = -include $(top_builddir)/config.h $(COMMON_CPPFLAGS)
> AM_CFLAGS_FOR_BUILD = -g -O2 $(COMMON_CFLAGS) 
> -AM_CPPFLAGS_FOR_BUILD = $(COMMON_CPPFLAGS)

Hmm, why is config.h ending up in COMMON_CPPFLAGS at all?

I don't see in my build:

$ make V=1 -C build
...
gcc -I. -I../../src -I.. -DBSD=1 -DSHELL  -g -O2 -Wall    -o mkinit ../../src/mkinit.c
./mkinit ../../src/alias.c ../../src/arith_yacc.c ../../src/arith_yylex.c ../../src/cd.c ../../src/error.c ../../src/eval.c ../../src/exec.c ../../src/expand.c ../../src/histedit.c ../../src/input.c ../../src/jobs.c ../../src/mail.c ../../src/main.c ../../src/memalloc.c ../../src/miscbltin.c ../../src/mystring.c ../../src/options.c ../../src/parser.c ../../src/redir.c ../../src/show.c ../../src/trap.c ../../src/output.c ../../src/bltin/printf.c ../../src/system.c ../../src/bltin/test.c ../../src/bltin/times.c ../../src/var.c

I'm not cross-compiling though.

Cheers,
-- 
Email: Herbert Xu <herbert@gondor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt

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

* Re: [PATCH] Don't include config.h when building helpers using the native compiler
  2020-06-22  5:25 [PATCH] Don't include config.h when building helpers using the native compiler Fabrice Fontaine
  2020-06-22  7:42 ` Herbert Xu
@ 2020-06-22  8:53 ` Harald van Dijk
  2020-06-22 10:44   ` Fabrice Fontaine
  1 sibling, 1 reply; 4+ messages in thread
From: Harald van Dijk @ 2020-06-22  8:53 UTC (permalink / raw)
  To: Fabrice Fontaine, dash; +Cc: Peter Korsgaard

On 22/06/2020 06:25, Fabrice Fontaine wrote:
> config.h contains settings for the cross compiler (most importantly
> 32/64bit versions of functions), so don't include it when calling the
> native compiler to build the helpers.
> 
> Otherwise we get build errors like:
> 
> /usr/bin/gcc -include ../config.h -DBSD=1 -DSHELL -DIFS_BROKEN  -g -O2 -Wall    -o mkinit mkinit.c
> In file included from /usr/include/sys/stat.h:107,
>                   from /usr/include/fcntl.h:38,
>                   from mkinit.c:50:
> /usr/include/bits/stat.h:117: error: redefinition of ‘struct stat’
> In file included from /usr/include/fcntl.h:38,
>                   from mkinit.c:50:
> /usr/include/sys/stat.h:504: error: redefinition of ‘stat’
> /usr/include/sys/stat.h:455: note: previous definition of ‘stat’ was here
> 
> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
> [Retrieved from:
> https://git.buildroot.net/buildroot/tree/package/dash/0001-no-config.h-for-helpers.patch]
> Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>

A better version of this patch has already been submitted and accepted 
in 2018: <https://www.spinics.net/lists/dash/msg01629.html>.

Cheers,
Harald van Dijk

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

* Re: [PATCH] Don't include config.h when building helpers using the native compiler
  2020-06-22  8:53 ` Harald van Dijk
@ 2020-06-22 10:44   ` Fabrice Fontaine
  0 siblings, 0 replies; 4+ messages in thread
From: Fabrice Fontaine @ 2020-06-22 10:44 UTC (permalink / raw)
  To: Harald van Dijk; +Cc: dash, Peter Korsgaard

Dear all,

Le lun. 22 juin 2020 à 10:53, Harald van Dijk <harald@gigawatt.nl> a écrit :
>
> On 22/06/2020 06:25, Fabrice Fontaine wrote:
> > config.h contains settings for the cross compiler (most importantly
> > 32/64bit versions of functions), so don't include it when calling the
> > native compiler to build the helpers.
> >
> > Otherwise we get build errors like:
> >
> > /usr/bin/gcc -include ../config.h -DBSD=1 -DSHELL -DIFS_BROKEN  -g -O2 -Wall    -o mkinit mkinit.c
> > In file included from /usr/include/sys/stat.h:107,
> >                   from /usr/include/fcntl.h:38,
> >                   from mkinit.c:50:
> > /usr/include/bits/stat.h:117: error: redefinition of ‘struct stat’
> > In file included from /usr/include/fcntl.h:38,
> >                   from mkinit.c:50:
> > /usr/include/sys/stat.h:504: error: redefinition of ‘stat’
> > /usr/include/sys/stat.h:455: note: previous definition of ‘stat’ was here
> >
> > Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
> > [Retrieved from:
> > https://git.buildroot.net/buildroot/tree/package/dash/0001-no-config.h-for-helpers.patch]
> > Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
>
> A better version of this patch has already been submitted and accepted
> in 2018: <https://www.spinics.net/lists/dash/msg01629.html>.
Thanks and sorry for the noise, I'll then remove this patch from my
buildroot as we have just bumped to 0.5.11.
>
> Cheers,
> Harald van Dijk
Best Regards,

Fabrice

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

end of thread, other threads:[~2020-06-22 10:44 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-06-22  5:25 [PATCH] Don't include config.h when building helpers using the native compiler Fabrice Fontaine
2020-06-22  7:42 ` Herbert Xu
2020-06-22  8:53 ` Harald van Dijk
2020-06-22 10:44   ` Fabrice Fontaine

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).