* [Buildroot] *Tons* of BR warnings like "package/Makefile.autotools.in:179: warning: overriding commands for target `/home/bjornfor/raid/forks/buildroot/output'"
@ 2009-12-10 20:34 Bjørn Forsman
2009-12-11 10:09 ` Kieran Bingham
0 siblings, 1 reply; 14+ messages in thread
From: Bjørn Forsman @ 2009-12-10 20:34 UTC (permalink / raw)
To: buildroot
Hi all,
I'm having a strange build problem with Buildroot. It gives *tons* of warnings
like below (it seems like at least one warning per .mk file in BR):
----
$ make atngw100_defconfig
$ make
package/Makefile.autotools.in:179: warning: overriding commands for
target `/home/bjornfor/raid/forks/buildroot/output'
package/Makefile.autotools.in:168: warning: ignoring old commands for
target `/home/bjornfor/raid/forks/buildroot/output'
package/Makefile.autotools.in:189: warning: overriding commands for
target `/home/bjornfor/raid/forks/buildroot/output'
package/Makefile.autotools.in:179: warning: ignoring old commands for
target `/home/bjornfor/raid/forks/buildroot/output'
...snip tons of similar warnings...
package/mtd/mtd-utils/mtd.mk:98: warning: overriding commands for
target `/home/bjornfor/raid/forks/buildroot/output'
package/mtd/mtd-utils/mtd.mk:65: warning: ignoring old commands for
target `/home/bjornfor/raid/forks/buildroot/output'
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/raid/forks/buildroot/output' given more than once in
the same rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/raid/forks/buildroot/output' given more than once in
the same rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/raid/forks/buildroot/output' given more than once in
the same rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/raid/forks/buildroot/output' given more than once in
the same rule.
package/mtd/mtd-utils/mtd.mk:106: *** multiple target patterns. Stop.
----
And then it dies.
Using 'defconfig' it will start downloading sources, but it still generates
*lots* of warnings:
----
$ make defconfig
$ make
...snip lots of warnings...
Makefile:330: warning: overriding commands for target
`/home/bjornfor/raid/forks/buildroot/output'
target/ubifs/ubifsroot.mk:25: warning: ignoring old commands for
target `/home/bjornfor/raid/forks/buildroot/output'
Makefile:355: warning: overriding commands for target
`/home/bjornfor/raid/forks/buildroot/output'
Makefile:330: warning: ignoring old commands for target
`/home/bjornfor/raid/forks/buildroot/output'
Makefile:354: target `/home/bjornfor/raid/forks/buildroot/output'
given more than once in the same rule.
Makefile:354: target `/home/bjornfor/raid/forks/buildroot/output'
given more than once in the same rule.
Makefile:354: target `/home/bjornfor/raid/forks/buildroot/output'
given more than once in the same rule.
Makefile:354: target `/home/bjornfor/raid/forks/buildroot/output'
given more than once in the same rule.
Makefile:358: warning: overriding commands for target
`/home/bjornfor/raid/forks/buildroot/output'
Makefile:355: warning: ignoring old commands for target
`/home/bjornfor/raid/forks/buildroot/output'
Makefile:373: warning: overriding commands for target
`/home/bjornfor/raid/forks/buildroot/output'
Makefile:358: warning: ignoring old commands for target
`/home/bjornfor/raid/forks/buildroot/output'
...snip me killing BR while it downloads sources...
----
I have used git bisect and it said the first bad commit (where all the warnings
started to appear) was:
commit a07d6b9d56955bfe0165b5f4ea6d3ed7a92ecff6
Author: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Date: Fri Jul 31 10:24:32 2009 +0200
By default, put the output in an output/ directory
But I find that strange as I'm pretty sure I've successfully used Buildroot
revisions after this commit before.
I think it must be something wrong with *my* setup since nobody else has
noticed this (and the commit is from July), but I don't know what it may be.
Any suggestions?
Best regards,
Bj?rn Forsman
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Buildroot] *Tons* of BR warnings like "package/Makefile.autotools.in:179: warning: overriding commands for target `/home/bjornfor/raid/forks/buildroot/output'"
2009-12-10 20:34 [Buildroot] *Tons* of BR warnings like "package/Makefile.autotools.in:179: warning: overriding commands for target `/home/bjornfor/raid/forks/buildroot/output'" Bjørn Forsman
@ 2009-12-11 10:09 ` Kieran Bingham
2009-12-11 10:36 ` Bjørn Forsman
0 siblings, 1 reply; 14+ messages in thread
From: Kieran Bingham @ 2009-12-11 10:09 UTC (permalink / raw)
To: buildroot
> But I find that strange as I'm pretty sure I've successfully used Buildroot
> revisions after this commit before.
>
> I think it must be something wrong with *my* setup since nobody else has
> noticed this (and the commit is from July), but I don't know what it may be.
> Any suggestions?
>
Actually I pulled Buildroot yesterday and also found this.
Perhaps its our environments ... I'm on ubuntu 9.10 Karmic ...
I don't think its a bash/dashism as I have /bin/sh -> /bin/bash ...
I hadn't got as far as looking at git bisect yet though ...
> Best regards,
> Bj?rn Forsman
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Buildroot] *Tons* of BR warnings like "package/Makefile.autotools.in:179: warning: overriding commands for target `/home/bjornfor/raid/forks/buildroot/output'"
2009-12-11 10:09 ` Kieran Bingham
@ 2009-12-11 10:36 ` Bjørn Forsman
2009-12-11 11:16 ` Peter Korsgaard
2009-12-11 11:18 ` Thomas Petazzoni
0 siblings, 2 replies; 14+ messages in thread
From: Bjørn Forsman @ 2009-12-11 10:36 UTC (permalink / raw)
To: buildroot
2009/12/11 Kieran Bingham <kieranbingham@gmail.com>:
>
>> But I find that strange as I'm pretty sure I've successfully used
>> Buildroot
>> revisions after this commit before.
>>
>> I think it must be something wrong with *my* setup since nobody else has
>> noticed this (and the commit is from July), but I don't know what it may
>> be.
>> Any suggestions?
>>
>
> Actually I pulled Buildroot yesterday and also found this.
Then at least I'm not the only one.
> Perhaps its our environments ... I'm on ubuntu 9.10 Karmic ...
> I don't think its a bash/dashism as I have /bin/sh -> /bin/bash ...
I'm on Ubuntu 9.10 Karmic amd64. I just tried BR on another machine (also
Karmic amd64) and the same thing happens there. I also tried to symlink /bin/sh
to /bin/dash on one of the machines. It didn't help.
Best regards,
Bj?rn Forsman
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Buildroot] *Tons* of BR warnings like "package/Makefile.autotools.in:179: warning: overriding commands for target `/home/bjornfor/raid/forks/buildroot/output'"
2009-12-11 10:36 ` Bjørn Forsman
@ 2009-12-11 11:16 ` Peter Korsgaard
2009-12-11 13:14 ` Bjørn Forsman
2009-12-11 11:18 ` Thomas Petazzoni
1 sibling, 1 reply; 14+ messages in thread
From: Peter Korsgaard @ 2009-12-11 11:16 UTC (permalink / raw)
To: buildroot
>>>>> "Bj?rn" == Bj?rn Forsman <bjorn.forsman@gmail.com> writes:
Hi,
Bj?rn> I'm on Ubuntu 9.10 Karmic amd64. I just tried BR on another
Bj?rn> machine (also Karmic amd64) and the same thing happens there. I
Bj?rn> also tried to symlink /bin/sh to /bin/dash on one of the
Bj?rn> machines. It didn't help.
Strange. Do you only see this with avr32 builds or also a build for
E.G. i386? What does make --version give you?
--
Bye, Peter Korsgaard
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Buildroot] *Tons* of BR warnings like "package/Makefile.autotools.in:179: warning: overriding commands for target `/home/bjornfor/raid/forks/buildroot/output'"
2009-12-11 10:36 ` Bjørn Forsman
2009-12-11 11:16 ` Peter Korsgaard
@ 2009-12-11 11:18 ` Thomas Petazzoni
2009-12-11 13:23 ` Bjørn Forsman
1 sibling, 1 reply; 14+ messages in thread
From: Thomas Petazzoni @ 2009-12-11 11:18 UTC (permalink / raw)
To: buildroot
Hello,
Le Fri, 11 Dec 2009 11:36:28 +0100,
Bj?rn Forsman <bjorn.forsman@gmail.com> a ?crit :
> I'm on Ubuntu 9.10 Karmic amd64. I just tried BR on another machine
> (also Karmic amd64) and the same thing happens there. I also tried to
> symlink /bin/sh to /bin/dash on one of the machines. It didn't help.
I cannot reproduce here. My buildroot version (from git) works well on
a Karmic x86.
Which version of Buildroot are you using exactly ? Which version of
make does your system has ? Do you have any BUILDROOT_* environment
variable set ?
Thomas
--
Thomas Petazzoni, Free Electrons
Kernel, drivers and embedded Linux development,
consulting, training and support.
http://free-electrons.com
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Buildroot] *Tons* of BR warnings like "package/Makefile.autotools.in:179: warning: overriding commands for target `/home/bjornfor/raid/forks/buildroot/output'"
2009-12-11 11:16 ` Peter Korsgaard
@ 2009-12-11 13:14 ` Bjørn Forsman
2009-12-11 13:59 ` Peter Korsgaard
0 siblings, 1 reply; 14+ messages in thread
From: Bjørn Forsman @ 2009-12-11 13:14 UTC (permalink / raw)
To: buildroot
2009/12/11 Peter Korsgaard <jacmet@uclibc.org>:
>>>>>> "Bj?rn" == Bj?rn Forsman <bjorn.forsman@gmail.com> writes:
>
> Hi,
>
> ?Bj?rn> I'm on Ubuntu 9.10 Karmic amd64. I just tried BR on another
> ?Bj?rn> machine (also Karmic amd64) and the same thing happens there. I
> ?Bj?rn> also tried to symlink /bin/sh to /bin/dash on one of the
> ?Bj?rn> machines. It didn't help.
>
> Strange. Do you only see this with avr32 builds or also a build for
> E.G. i386? What does make --version give you?
'make defconfig && make' works. (By 'works' I mean it at least starts to
download sources. I haven't had the patience to see if it would succeed a
full build. But it also generates "the usual" set of warnings.) I run
x86_64.
i386 build fails:
----
$ make i386_defconfig && make
...snip lots of warnings...
package/mtd/mtd-utils/mtd.mk:98: warning: overriding commands for
target `/home/bjornfor/dev/buildroot/output'
package/mtd/mtd-utils/mtd.mk:65: warning: ignoring old commands for
target `/home/bjornfor/dev/buildroot/output'
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:106: *** multiple target patterns. Stop.
$
----
avr32 build fails just like i386:
----
$ make atngw100_defconfig && make
...snip lots of warnings...
package/mtd/mtd-utils/mtd.mk:98: warning: overriding commands for
target `/home/bjornfor/dev/buildroot/output'
package/mtd/mtd-utils/mtd.mk:65: warning: ignoring old commands for
target `/home/bjornfor/dev/buildroot/output'
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:97: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:106: *** multiple target patterns. Stop.
$
----
My Make version:
----
$ make --version
GNU Make 3.81
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
This program built for x86_64-pc-linux-gnu
----
Note: before the two BR builds above, I git pulled origin (commit
1323ecdd094f0dd387bfe9db8c00cd9982ac1156). But the same errors appear using any
version since commit a07d6b9d56955bfe0165b5f4ea6d3ed7a92ecff6 "By default, put
the output in an output/ directory"
Best regards,
Bj?rn Forsman
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Buildroot] *Tons* of BR warnings like "package/Makefile.autotools.in:179: warning: overriding commands for target `/home/bjornfor/raid/forks/buildroot/output'"
2009-12-11 11:18 ` Thomas Petazzoni
@ 2009-12-11 13:23 ` Bjørn Forsman
2009-12-11 13:35 ` Marc Egli
0 siblings, 1 reply; 14+ messages in thread
From: Bjørn Forsman @ 2009-12-11 13:23 UTC (permalink / raw)
To: buildroot
2009/12/11 Thomas Petazzoni <thomas.petazzoni@free-electrons.com>:
> Hello,
>
> Le Fri, 11 Dec 2009 11:36:28 +0100,
> Bj?rn Forsman <bjorn.forsman@gmail.com> a ?crit :
>
>> I'm on Ubuntu 9.10 Karmic amd64. I just tried BR on another machine
>> (also Karmic amd64) and the same thing happens there. I also tried to
>> symlink /bin/sh to /bin/dash on one of the machines. It didn't help.
>
> I cannot reproduce here. My buildroot version (from git) works well on
> a Karmic x86.
>
> Which version of Buildroot are you using exactly ? Which version of
> make does your system has ? Do you have any BUILDROOT_* environment
> variable set ?
BR version: HEAD as of now (1323ecdd094f0dd387bfe9db8c00cd9982ac1156)
Make version: 3.81
I don't have any BUILDROOT environment variables:
$ env | grep BUILDROOT # nothing
I really think that some update to Ubuntu 9.10 Karmic amd64 has caused this
issue, because I have two machines with the same OS that show this behaviour
and I'm pretty sure that the BR versions not working now worked before.
Best regards,
Bj?rn Forsman
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Buildroot] *Tons* of BR warnings like "package/Makefile.autotools.in:179: warning: overriding commands for target `/home/bjornfor/raid/forks/buildroot/output'"
2009-12-11 13:23 ` Bjørn Forsman
@ 2009-12-11 13:35 ` Marc Egli
0 siblings, 0 replies; 14+ messages in thread
From: Marc Egli @ 2009-12-11 13:35 UTC (permalink / raw)
To: buildroot
i am working on karamic x86_64 without any of the problems you described here, but i also changed /bin/sh to point to bash instead of dash
marc
Am 11.12.2009 um 14:23 schrieb Bj?rn Forsman:
> 2009/12/11 Thomas Petazzoni <thomas.petazzoni@free-electrons.com>:
>> Hello,
>>
>> Le Fri, 11 Dec 2009 11:36:28 +0100,
>> Bj?rn Forsman <bjorn.forsman@gmail.com> a ?crit :
>>
>>> I'm on Ubuntu 9.10 Karmic amd64. I just tried BR on another machine
>>> (also Karmic amd64) and the same thing happens there. I also tried to
>>> symlink /bin/sh to /bin/dash on one of the machines. It didn't help.
>>
>> I cannot reproduce here. My buildroot version (from git) works well on
>> a Karmic x86.
>>
>> Which version of Buildroot are you using exactly ? Which version of
>> make does your system has ? Do you have any BUILDROOT_* environment
>> variable set ?
>
> BR version: HEAD as of now (1323ecdd094f0dd387bfe9db8c00cd9982ac1156)
>
> Make version: 3.81
>
> I don't have any BUILDROOT environment variables:
> $ env | grep BUILDROOT # nothing
>
> I really think that some update to Ubuntu 9.10 Karmic amd64 has caused this
> issue, because I have two machines with the same OS that show this behaviour
> and I'm pretty sure that the BR versions not working now worked before.
>
> Best regards,
> Bj?rn Forsman
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Buildroot] *Tons* of BR warnings like "package/Makefile.autotools.in:179: warning: overriding commands for target `/home/bjornfor/raid/forks/buildroot/output'"
2009-12-11 13:14 ` Bjørn Forsman
@ 2009-12-11 13:59 ` Peter Korsgaard
2009-12-11 14:53 ` Bjørn Forsman
0 siblings, 1 reply; 14+ messages in thread
From: Peter Korsgaard @ 2009-12-11 13:59 UTC (permalink / raw)
To: buildroot
>>>>> "Bj?rn" == Bj?rn Forsman <bjorn.forsman@gmail.com> writes:
Bj?rn> i386 build fails:
Bj?rn> ----
Bj?rn> $ make i386_defconfig && make
Bj?rn> ...snip lots of warnings...
Bj?rn> package/mtd/mtd-utils/mtd.mk:98: warning: overriding commands for
Bj?rn> target `/home/bjornfor/dev/buildroot/output'
Bj?rn> package/mtd/mtd-utils/mtd.mk:65: warning: ignoring old commands for
Bj?rn> target `/home/bjornfor/dev/buildroot/output'
Bj?rn> package/mtd/mtd-utils/mtd.mk:97: target
Bj?rn> `/home/bjornfor/dev/buildroot/output' given more than once in the same
Bj?rn> rule.
To me it sounds as if somehow a space has sneaked into the definition of
BUILD_DIR - E.G. that line has a long list of BUILD_DIR/mtd_orig/<blah>.
Could you add something like this to mtd.mk and run make test:
diff --git a/package/mtd/mtd-utils/mtd.mk b/package/mtd/mtd-utils/mtd.mk
index a686661..3049f8e 100644
--- a/package/mtd/mtd-utils/mtd.mk
+++ b/package/mtd/mtd-utils/mtd.mk
@@ -20,6 +20,9 @@ MTD_NAME:=mtd-utils-$(MTD_VERSION)
MKFS_JFFS2 := $(MTD_HOST_DIR)/mkfs.jffs2
SUMTOOL := $(MTD_HOST_DIR)/sumtool
+test:
+ echo "MTD_DIR='$(MTD_DIR)'"
+
Here it gives:
echo "MTD_DIR='/home/peko/source/buildroot/output/build/mtd_orig'"
MTD_DIR='/home/peko/source/buildroot/output/build/mtd_orig'
--
Bye, Peter Korsgaard
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [Buildroot] *Tons* of BR warnings like "package/Makefile.autotools.in:179: warning: overriding commands for target `/home/bjornfor/raid/forks/buildroot/output'"
2009-12-11 13:59 ` Peter Korsgaard
@ 2009-12-11 14:53 ` Bjørn Forsman
2009-12-11 15:23 ` Peter Korsgaard
0 siblings, 1 reply; 14+ messages in thread
From: Bjørn Forsman @ 2009-12-11 14:53 UTC (permalink / raw)
To: buildroot
2009/12/11 Peter Korsgaard <jacmet@uclibc.org>:
>>>>>> "Bj?rn" == Bj?rn Forsman <bjorn.forsman@gmail.com> writes:
>
> ?Bj?rn> i386 build fails:
> ?Bj?rn> ----
> ?Bj?rn> $ make i386_defconfig && make
> ?Bj?rn> ...snip lots of warnings...
> ?Bj?rn> package/mtd/mtd-utils/mtd.mk:98: warning: overriding commands for
> ?Bj?rn> target `/home/bjornfor/dev/buildroot/output'
> ?Bj?rn> package/mtd/mtd-utils/mtd.mk:65: warning: ignoring old commands for
> ?Bj?rn> target `/home/bjornfor/dev/buildroot/output'
> ?Bj?rn> package/mtd/mtd-utils/mtd.mk:97: target
> ?Bj?rn> `/home/bjornfor/dev/buildroot/output' given more than once in the same
> ?Bj?rn> rule.
>
> To me it sounds as if somehow a space has sneaked into the definition of
> BUILD_DIR - E.G. that line has a long list of BUILD_DIR/mtd_orig/<blah>.
>
> Could you add something like this to mtd.mk and run make test:
>
> diff --git a/package/mtd/mtd-utils/mtd.mk b/package/mtd/mtd-utils/mtd.mk
> index a686661..3049f8e 100644
> --- a/package/mtd/mtd-utils/mtd.mk
> +++ b/package/mtd/mtd-utils/mtd.mk
> @@ -20,6 +20,9 @@ MTD_NAME:=mtd-utils-$(MTD_VERSION)
> ?MKFS_JFFS2 := $(MTD_HOST_DIR)/mkfs.jffs2
> ?SUMTOOL := $(MTD_HOST_DIR)/sumtool
>
> +test:
> + ? ? ? echo "MTD_DIR='$(MTD_DIR)'"
> +
>
> Here it gives:
>
> echo "MTD_DIR='/home/peko/source/buildroot/output/build/mtd_orig'"
> MTD_DIR='/home/peko/source/buildroot/output/build/mtd_orig'
I manually applied your patch (is there a better way of doing it?) and when
building a non-working configuration, there is no other output than the
warnings and then full stop. Make quits before running the 'test'
target! See the log:
----
$ make i386_defconfig
$ make test
...snip lots of warnings...
package/mtd/mtd-utils/mtd.mk:100: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:100: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:100: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:100: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:100: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:100: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:100: target
`/home/bjornfor/dev/buildroot/output' given more than once in the same
rule.
package/mtd/mtd-utils/mtd.mk:109: *** multiple target patterns. Stop.
----
If using a "working" config like 'make defconfig && make' I get this:
----
target/makedevs/makedevs.mk:16: warning: overriding commands for
target `/home/bjornfor/dev/buildroot/output'
target/makedevs/makedevs.mk:11: warning: ignoring old commands for
target `/home/bjornfor/dev/buildroot/output'
target/makedevs/makedevs.mk:19: warning: overriding commands for
target `/home/bjornfor/dev/buildroot/output'
target/makedevs/makedevs.mk:16: warning: ignoring old commands for
target `/home/bjornfor/dev/buildroot/output'
target/romfs/romfs.mk:15: warning: overriding commands for target
`/home/bjornfor/dev/buildroot/output'
target/makedevs/makedevs.mk:19: warning: ignoring old commands for
target `/home/bjornfor/dev/buildroot/output'
target/romfs/romfs.mk:18: warning: overriding commands for target
`/home/bjornfor/dev/buildroot/output'
target/romfs/romfs.mk:15: warning: ignoring old commands for target
`/home/bjornfor/dev/buildroot/output'
target/squashfs/squashfsroot.mk:16: warning: overriding commands for
target `/home/bjornfor/dev/buildroot/output'
target/romfs/romfs.mk:18: warning: ignoring old commands for target
`/home/bjornfor/dev/buildroot/output'
target/squashfs/squashfsroot.mk:21: warning: overriding commands for
target `/home/bjornfor/dev/buildroot/output'
target/squashfs/squashfsroot.mk:16: warning: ignoring old commands for
target `/home/bjornfor/dev/buildroot/output'
target/ubifs/ubifsroot.mk:19: warning: overriding commands for target
`/home/bjornfor/dev/buildroot/output'
target/squashfs/squashfsroot.mk:21: warning: ignoring old commands for
target `/home/bjornfor/dev/buildroot/output'
target/ubifs/ubifsroot.mk:25: warning: overriding commands for target
`/home/bjornfor/dev/buildroot/output'
target/ubifs/ubifsroot.mk:19: warning: ignoring old commands for
target `/home/bjornfor/dev/buildroot/output'
Makefile:330: warning: overriding commands for target
`/home/bjornfor/dev/buildroot/output'
target/ubifs/ubifsroot.mk:25: warning: ignoring old commands for
target `/home/bjornfor/dev/buildroot/output'
Makefile:355: warning: overriding commands for target
`/home/bjornfor/dev/buildroot/output'
Makefile:330: warning: ignoring old commands for target
`/home/bjornfor/dev/buildroot/output'
Makefile:354: target `/home/bjornfor/dev/buildroot/output' given more
than once in the same rule.
Makefile:354: target `/home/bjornfor/dev/buildroot/output' given more
than once in the same rule.
Makefile:354: target `/home/bjornfor/dev/buildroot/output' given more
than once in the same rule.
Makefile:354: target `/home/bjornfor/dev/buildroot/output' given more
than once in the same rule.
Makefile:358: warning: overriding commands for target
`/home/bjornfor/dev/buildroot/output'
Makefile:355: warning: ignoring old commands for target
`/home/bjornfor/dev/buildroot/output'
Makefile:373: warning: overriding commands for target
`/home/bjornfor/dev/buildroot/output'
Makefile:358: warning: ignoring old commands for target
`/home/bjornfor/dev/buildroot/output'
make: *** No rule to make target `test'. Stop.
----
Weird. If you're wondering if I applied the patch correctly, here's my
git diff output:
diff --git a/package/mtd/mtd-utils/mtd.mk b/package/mtd/mtd-utils/mtd.mk
index a686661..cddaed4 100644
--- a/package/mtd/mtd-utils/mtd.mk
+++ b/package/mtd/mtd-utils/mtd.mk
@@ -20,6 +20,9 @@ MTD_NAME:=mtd-utils-$(MTD_VERSION)
MKFS_JFFS2 := $(MTD_HOST_DIR)/mkfs.jffs2
SUMTOOL := $(MTD_HOST_DIR)/sumtool
+test:
+ echo "MTD_DIR='$(MTD_DIR)"'
+
$(DL_DIR)/$(MTD_SOURCE):
$(call DOWNLOAD,$(MTD_SITE),$(MTD_SOURCE))
As I've noted earlier in this thread, git bisect told me the first bad commit
was a07d6b9d56955bfe0165b5f4ea6d3ed7a92ecff6 "By default, put the
output in an output/ directory".
And I think the BR output shows that there is something wrong with what Make
thinks of my "output" directory:
target/ubifs/ubifsroot.mk:25: warning: overriding commands for
target `/home/bjornfor/dev/buildroot/output'
and
Makefile:354: target `/home/bjornfor/dev/buildroot/output' given
more than once in the same rule.
BTW, I'm going away (without computer access) for two days, so I won't be able
to debug/respond until Sunday.
Best regards,
Bj?rn Forsman
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [Buildroot] *Tons* of BR warnings like "package/Makefile.autotools.in:179: warning: overriding commands for target `/home/bjornfor/raid/forks/buildroot/output'"
2009-12-11 14:53 ` Bjørn Forsman
@ 2009-12-11 15:23 ` Peter Korsgaard
2009-12-13 20:51 ` Bjørn Forsman
0 siblings, 1 reply; 14+ messages in thread
From: Peter Korsgaard @ 2009-12-11 15:23 UTC (permalink / raw)
To: buildroot
>>>>> "Bj?rn" == Bj?rn Forsman <bjorn.forsman@gmail.com> writes:
Bj?rn> I manually applied your patch (is there a better way of doing
Bj?rn> it?)
git apply or patch
Bj?rn> and when building a non-working configuration, there is no other
Bj?rn> output than the warnings and then full stop. Make quits before
Bj?rn> running the 'test' target! See the log:
Ahh yes, you never get that far with those warnings.
I think your BASE_DIR and/or BUILD_DIR variables somehow gets an extra
space appended/prepended.
Could you change the BASE_DIR := line in the toplevel makefile to simply
read:
BASE_DIR:=home/bjornfor/dev/buildroot/output
and try again?
--
Bye, Peter Korsgaard
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Buildroot] *Tons* of BR warnings like "package/Makefile.autotools.in:179: warning: overriding commands for target `/home/bjornfor/raid/forks/buildroot/output'"
2009-12-11 15:23 ` Peter Korsgaard
@ 2009-12-13 20:51 ` Bjørn Forsman
2009-12-13 21:28 ` Peter Korsgaard
0 siblings, 1 reply; 14+ messages in thread
From: Bjørn Forsman @ 2009-12-13 20:51 UTC (permalink / raw)
To: buildroot
2009/12/11 Peter Korsgaard <jacmet@uclibc.org>:
>>>>>> "Bj?rn" == Bj?rn Forsman <bjorn.forsman@gmail.com> writes:
> ?Bj?rn> and when building a non-working configuration, there is no other
> ?Bj?rn> output than the warnings and then full stop. Make quits before
> ?Bj?rn> running the 'test' target! See the log:
>
> Ahh yes, you never get that far with those warnings.
>
> I think your BASE_DIR and/or BUILD_DIR variables somehow gets an extra
> space appended/prepended.
>
> Could you change the BASE_DIR := line in the toplevel makefile to simply
> read:
>
> BASE_DIR:=home/bjornfor/dev/buildroot/output
>
> and try again?
I finally found the bug. (Thanks a lot for the hint, Peter.) BASE_DIR ends
up containing the Buildroot output directory *two* times (separated by a
space). And it happends because I use the CDPATH environment variable.
Let me demonstrate:
$ mkdir dir
$ (CDPATH= cd dir/) # no output
$ (CDPATH=.:.. cd dir/) # output!
/tmp/directory/dir
This means that when the top Makefile in BR says:
BASE_DIR := $(shell mkdir -p $(O) && cd $(O) && pwd)
both 'cd' and 'pwd' will print out the same path (when CDPATH is
non-empty), BASE_DIR will be containing two identical paths. Make freaks
out and BR fails.
So to fix this issue I thought it would be easy to remove CDPATH from
the Buildroot environment. But how? I tried:
export CDPATH:=
unexport CDPATH
in the top Makefile but neither worked.
It is also possible to use absolute paths when defining BASE_DIR. But I
don't know how to do that when the output variable O can be relative or
absolute:
$ make O=/tmp/output
$ make O=output
Any suggestions?
Best regards,
Bj?rn Forsman
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Buildroot] *Tons* of BR warnings like "package/Makefile.autotools.in:179: warning: overriding commands for target `/home/bjornfor/raid/forks/buildroot/output'"
2009-12-13 20:51 ` Bjørn Forsman
@ 2009-12-13 21:28 ` Peter Korsgaard
2009-12-14 9:25 ` Bjørn Forsman
0 siblings, 1 reply; 14+ messages in thread
From: Peter Korsgaard @ 2009-12-13 21:28 UTC (permalink / raw)
To: buildroot
>>>>> "Bj?rn" == Bj?rn Forsman <bjorn.forsman@gmail.com> writes:
Hi,
Bj?rn> I finally found the bug. (Thanks a lot for the hint, Peter.)
Bj?rn> BASE_DIR ends up containing the Buildroot output directory *two*
Bj?rn> times (separated by a space). And it happends because I use the
Bj?rn> CDPATH environment variable.
Bj?rn> Let me demonstrate:
Bj?rn> $ mkdir dir
Bj?rn> $ (CDPATH= cd dir/) # no output
Bj?rn> $ (CDPATH=.:.. cd dir/) # output!
Bj?rn> /tmp/directory/dir
Ahh - I use zsh dir hashes for that kind of stuff instead.
Bj?rn> This means that when the top Makefile in BR says:
Bj?rn> BASE_DIR := $(shell mkdir -p $(O) && cd $(O) && pwd)
Bj?rn> both 'cd' and 'pwd' will print out the same path (when CDPATH is
Bj?rn> non-empty), BASE_DIR will be containing two identical paths. Make freaks
Bj?rn> out and BR fails.
Bj?rn> So to fix this issue I thought it would be easy to remove CDPATH from
Bj?rn> the Buildroot environment. But how? I tried:
Bj?rn> export CDPATH:=
Bj?rn> unexport CDPATH
Bj?rn> in the top Makefile but neither worked.
It does work, but only for stuff running inside the make rules:
cat Makefile
export CDPATH:=
all:
set|grep CDPATH
export CDPATH=.:~
make
set|grep CDPATH
BASH_EXECUTION_STRING='set|grep CDPATH'
CDPATH=
sed -i 's/export/#export/' Makefile
make
set|grep CDPATH
BASH_EXECUTION_STRING='set|grep CDPATH'
CDPATH=.:/home/peko
But if you instead have something using $(shell ) it won't work:
cat Makefile
export CDPATH:=
DUMMY:=$(shell set|grep CDPATH >&2)
all:
set|grep CDPATH
make
BASH_EXECUTION_STRING='set|grep CDPATH >&2'
CDPATH=.:/home/peko
set|grep CDPATH
BASH_EXECUTION_STRING='set|grep CDPATH'
CDPATH=
E.G. the export doesn't effect the environment of $(shell ).
So the proper fix is to do:
unset CDPATH:=
and explicitly work around if for BASE_DIR, E.G.:
BASE_DIR := $(shell mkdir -p $(O) && cd $(O) >/dev/null && pwd)
I'll fix that in git.
Bj?rn> It is also possible to use absolute paths when defining BASE_DIR. But I
Bj?rn> don't know how to do that when the output variable O can be relative or
Bj?rn> absolute:
Bj?rn> $ make O=/tmp/output
Bj?rn> $ make O=output
Well, that's the point of the 'cd $(O) >/dev/null && pwd' part (convert
to absolute path).
--
Bye, Peter Korsgaard
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Buildroot] *Tons* of BR warnings like "package/Makefile.autotools.in:179: warning: overriding commands for target `/home/bjornfor/raid/forks/buildroot/output'"
2009-12-13 21:28 ` Peter Korsgaard
@ 2009-12-14 9:25 ` Bjørn Forsman
0 siblings, 0 replies; 14+ messages in thread
From: Bjørn Forsman @ 2009-12-14 9:25 UTC (permalink / raw)
To: buildroot
2009/12/13 Peter Korsgaard <jacmet@uclibc.org>:
>>>>>> "Bj?rn" == Bj?rn Forsman <bjorn.forsman@gmail.com> writes:
>
> Hi,
>
> ?Bj?rn> I finally found the bug. (Thanks a lot for the hint, Peter.)
> ?Bj?rn> BASE_DIR ends up containing the Buildroot output directory *two*
> ?Bj?rn> times (separated by a space). And it happends because I use the
> ?Bj?rn> CDPATH environment variable.
>
> ?Bj?rn> Let me demonstrate:
>
> ?Bj?rn> $ mkdir dir
> ?Bj?rn> $ (CDPATH= cd dir/) ? ? ?# no output
> ?Bj?rn> $ (CDPATH=.:.. cd dir/) ?# output!
> ?Bj?rn> /tmp/directory/dir
>
> Ahh - I use zsh dir hashes for that kind of stuff instead.
>
> ?Bj?rn> This means that when the top Makefile in BR says:
>
> ?Bj?rn> ? BASE_DIR := $(shell mkdir -p $(O) && cd $(O) && pwd)
>
> ?Bj?rn> both 'cd' and 'pwd' will print out the same path (when CDPATH is
> ?Bj?rn> non-empty), BASE_DIR will be containing two identical paths. Make freaks
> ?Bj?rn> out and BR fails.
>
> ?Bj?rn> So to fix this issue I thought it would be easy to remove CDPATH from
> ?Bj?rn> the Buildroot environment. But how? I tried:
>
> ?Bj?rn> export CDPATH:=
> ?Bj?rn> unexport CDPATH
>
> ?Bj?rn> in the top Makefile but neither worked.
>
> It does work, but only for stuff running inside the make rules:
>
> cat Makefile
> export CDPATH:=
> all:
> ? ? ? ?set|grep CDPATH
>
> export CDPATH=.:~
> make
> set|grep CDPATH
> BASH_EXECUTION_STRING='set|grep CDPATH'
> CDPATH=
>
> sed -i 's/export/#export/' Makefile
> make
> set|grep CDPATH
> BASH_EXECUTION_STRING='set|grep CDPATH'
> CDPATH=.:/home/peko
>
> But if you instead have something using $(shell ) it won't work:
>
> cat Makefile
> export CDPATH:=
> DUMMY:=$(shell set|grep CDPATH >&2)
> all:
> ? ? ? ?set|grep CDPATH
>
> make
> BASH_EXECUTION_STRING='set|grep CDPATH >&2'
> CDPATH=.:/home/peko
> set|grep CDPATH
> BASH_EXECUTION_STRING='set|grep CDPATH'
> CDPATH=
>
> E.G. the export doesn't effect the environment of $(shell ).
>
> So the proper fix is to do:
>
> unset CDPATH:=
> and explicitly work around if for BASE_DIR, E.G.:
>
> BASE_DIR := $(shell mkdir -p $(O) && cd $(O) >/dev/null && pwd)
>
> I'll fix that in git.
I have just git pulled your fix and now it works. Thanks!
> ?Bj?rn> It is also possible to use absolute paths when defining BASE_DIR. But I
> ?Bj?rn> don't know how to do that when the output variable O can be relative or
> ?Bj?rn> absolute:
>
> ?Bj?rn> ? $ make O=/tmp/output
> ?Bj?rn> ? $ make O=output
>
> Well, that's the point of the 'cd $(O) >/dev/null && pwd' part (convert
> to absolute path).
Of course, silly me. What I should have said was that because $(O) may
be absolute,
one cannot just do something like this:
cd $(PWD)/$(O) # will not print anything even if CDPATH is set but it
# it only works for $(O) with relative paths
Best regards,
Bj?rn Forsman
^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2009-12-14 9:25 UTC | newest]
Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-12-10 20:34 [Buildroot] *Tons* of BR warnings like "package/Makefile.autotools.in:179: warning: overriding commands for target `/home/bjornfor/raid/forks/buildroot/output'" Bjørn Forsman
2009-12-11 10:09 ` Kieran Bingham
2009-12-11 10:36 ` Bjørn Forsman
2009-12-11 11:16 ` Peter Korsgaard
2009-12-11 13:14 ` Bjørn Forsman
2009-12-11 13:59 ` Peter Korsgaard
2009-12-11 14:53 ` Bjørn Forsman
2009-12-11 15:23 ` Peter Korsgaard
2009-12-13 20:51 ` Bjørn Forsman
2009-12-13 21:28 ` Peter Korsgaard
2009-12-14 9:25 ` Bjørn Forsman
2009-12-11 11:18 ` Thomas Petazzoni
2009-12-11 13:23 ` Bjørn Forsman
2009-12-11 13:35 ` Marc Egli
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox