vexpress compilation error in next-20121127
Hi Pawel,
There seems to be an issue compiling vexpress at this point. The problem being that vexpress' makefile references reset.o, but there's no reset.c in arch/arm/mach-vexpress.
[...]
CC arch/arm/mach-bcm/board_bcm.o LD arch/arm/mach-bcm/built-in.o CC arch/arm/mach-vexpress/v2m.o
make[1]: *** No rule to make target arch/arm/mach-vexpress/reset.o', needed by arch/arm/mach-vexpress/built-in.o'. Stop.
make: *** [arch/arm/mach-vexpress] Error 2
The commit in question seems to be this:
It adds the reference to reset.o to the makefile, but doesn't add reset.c itself. That doesn't seem right -- or did I overlook anything obvious?
As a quick fix, I tried commenting out reset.o in Makefile. While that lets the compilation proceed, I end up with unresolved symbols at link time.
[...]
CC init/version.o
LD init/built-in.oarch/arm/mach-vexpress/built-in.o: In function `v2m_dt_init':/home/mmayer/Development/upstreaming/arm-soc/arch/arm/mach-vexpress/v2m.c:487:
undefined reference to vexpress_power_off' arch/arm/mach-vexpress/built-in.o: In function v2m_init':/home/mmayer/Development/upstreaming/arm-soc/arch/arm/mach-vexpress/v2m.c:371:
undefined reference to vexpress_power_off' arch/arm/mach-vexpress/built-in.o:(.arch.info.init+0x48): undefined reference to vexpress_restart' arch/arm/mach-vexpress/built-in.o:(.arch.info.init+0x94): undefined reference to `vexpress_restart'
make: *** [vmlinux] Error 1
Regards,
-Markus
Quoted 14 lines · Markus Mayer
Hi Pawel,
There seems to be an issue compiling vexpress at this point. The problem being that vexpress' makefile references reset.o, but there's no
reset.cinarch/arm/mach-vexpress.[...]
CC arch/arm/mach-bcm/board_bcm.o LD arch/arm/mach-bcm/built-in.o CC arch/arm/mach-vexpress/v2m.omake[1]: *** No rule to make target
arch/arm/mach-vexpress/reset.o', needed byarch/arm/mach-vexpress/built-in.o'. Stop.
make: *** [arch/arm/mach-vexpress] Error 2
Quoted 7 lines
The commit in question seems to be this:
It adds the reference to reset.o to the makefile, but doesn't add
reset.citself. That doesn't seem right -- or did I overlook anything obvious?
That's strange... The reset.c comes from the vexpress/drivers branch, which seems to be merged correctly in the arm-soc:
And it's there in the linux-next head:
https://git.kernel.org/?p=linux/kernel/git/next/linux-next.git;a=tree;f=arch/arm/mach-vexpress
Also the next-20121127 looks good for me:
Are you sure you've checked out the correct tag?
Pawe?
Quoted 6 lines · Pawel Moll
Quoted 5 lines · Markus Mayer
Hi Pawel,
There seems to be an issue compiling vexpress at this point. The problem being that vexpress' makefile references reset.o, but there's no
reset.cinarch/arm/mach-vexpress.
[...]
Quoted 7 lines
That's strange... The
reset.ccomes from the vexpress/drivers branch, which seems to be merged correctly in the arm-soc:And it's there in the linux-next head:
Quoted 7 lines
https://git.kernel.org/?p=linux/kernel/git/next/linux-next.git;a=tree;f=arch/arm/mach-vexpress
Also the next-20121127 looks good for me:
Are you sure you've checked out the correct tag?
What I did was to clone next/soc. reset.c is not in that -- and that's the branch that fails to build. I do see that the commit is in for-next, however.
What I am really concerned about is an arm-soc branch that has commit 8ac49e0485 in it
(http://git.kernel.org/?p=linux/kernel/git/arm/arm-soc.git;a=commit;h=8ac49e0485bb79223a111b366a3b1f5ec9148729).
That commit seems to be in next/soc as well as for-next. Therefore, either one might serve my purpose. I am able to build for-next, but cannot build next/soc due to the above problem.
Is there a quick way to describe the difference between these two branches? I am okay to use for-next rather than next/soc, but I would like to know what the difference between the two.
Also, is it okay for one of the two branches to temporarily not build (as is currently the case with next/soc)?
Thanks,
-Markus
Quoted 10 lines · Markus Mayer
What I am really concerned about is an arm-soc branch that has commit
8ac49e0485in it
(http://git.kernel.org/?p=linux/kernel/git/arm/arm-soc.git;a=commit;h=8ac49e0485bb79223a111b366a3b1f5ec9148729).
That commit seems to be in next/soc as well as for-next. Therefore, either one might serve my purpose. I am able to build for-next, but cannot build next/soc due to the above problem.Is there a quick way to describe the difference between these two branches? I am okay to use for-next rather than next/soc, but I would like to know what the difference between the two.
Those are questions to Arnd and Olof, really, but _as far as I understand_ theirs workflow, they keep pull topic branches from developers into the respective "next" topic branches (ie. both vexpress/soc and broadcom/soc got into next/soc), then all the topic branches are merged into general for-next (so both next/soc and next/drivers - amongst others - are there).
Quoted 2 lines
Also, is it okay for one of the two branches to temporarily not build (as is currently the case with next/soc)?
This is a policy question, again for Arnd and Olof. In my case I had a long series of changes with internal dependencies and they asked me to break it into topic branches. Maybe I could have done better job with that, but other approach would have meant merge conflicts.
Pawe?
Quoted 6 lines · Pawel Moll
Quoted 4 lines
Is there a quick way to describe the difference between these two branches? I am okay to use for-next rather than next/soc, but I would like to know what the difference between the two.
Those are questions to Arnd and Olof [...]
Thanks for your help. I have started a new thread for this topic.
Regards,
-Markus
Quoted 6 lines · Markus Mayer
Hi Pawel,
There seems to be an issue compiling vexpress at this point. The problem being that vexpress' makefile references reset.o, but there's no
reset.cinarch/arm/mach-vexpress.
Quoted 7 lines
[...]
CC arch/arm/mach-bcm/board_bcm.o LD arch/arm/mach-bcm/built-in.o CC arch/arm/mach-vexpress/v2m.omake[1]: *** No rule to make target
arch/arm/mach-vexpress/reset.o', needed byarch/arm/mach-vexpress/built-in.o'. Stop.
make: *** [arch/arm/mach-vexpress] Error 2
Same issue in mainline now too: arch/arm/mach-vexpress/reset.c is missing.
Behan
Signature · 2 lines
Behan Webster behanw at websterwood.com
Quoted 7 lines · Behan Webster
Quoted 6 lines · Markus Mayer
Hi Pawel,
There seems to be an issue compiling vexpress at this point. The problem being that vexpress' makefile references reset.o, but there's no
reset.cinarch/arm/mach-vexpress.
Quoted 8 lines
Quoted 7 lines
[...]
CC arch/arm/mach-bcm/board_bcm.o LD arch/arm/mach-bcm/built-in.o CC arch/arm/mach-vexpress/v2m.omake[1]: *** No rule to make target
arch/arm/mach-vexpress/reset.o', needed byarch/arm/mach-vexpress/built-in.o'. Stop.
make: *** [arch/arm/mach-vexpress] Error 2Same issue in mainline now too:
arch/arm/mach-vexpress/reset.cis missing.
Yes, I've noticed this myself. It's just that the pull request for the arm-soc drivers branch went out in the second batch yesterday
(http://article.gmane.org/gmane.linux.kernel/1409413), while the soc one in the first one. This was a bad decision to split the reset driver from the main update series, apologies about this.
Pawe?
Quoted 15 lines · Pawel Moll
Quoted 14 lines · Behan Webster
Quoted 13 lines · Markus Mayer
Hi Pawel,
There seems to be an issue compiling vexpress at this point. The problem being that vexpress' makefile references reset.o, but there's no
reset.cinarch/arm/mach-vexpress.[...]
CC arch/arm/mach-bcm/board_bcm.o LD arch/arm/mach-bcm/built-in.o CC arch/arm/mach-vexpress/v2m.omake[1]: *** No rule to make target
arch/arm/mach-vexpress/reset.o', needed byarch/arm/mach-vexpress/built-in.o'. Stop.
make: *** [arch/arm/mach-vexpress] Error 2
Quoted 5 lines
Quoted 1 line
Same issue in mainline now too:
arch/arm/mach-vexpress/reset.cis missing.Yes, I've noticed this myself. It's just that the pull request for the arm-soc drivers branch went out in the second batch yesterday
(http://article.gmane.org/gmane.linux.kernel/1409413), while the soc one in the first one.
I see it now. Thanks!
Quoted 2 lines
This was a bad decision to split the reset driver from
the main update series, apologies about this.
No worries. Just making sure the issue didn't go unnoticed.
Thanks again,
Behan
Signature · 2 lines
Behan Webster behanw at websterwood.com