[Buildroot] Target rebuilding
Arnout Vandecappelle
arnout at mind.be
Sat Jan 19 16:32:15 UTC 2013
On 17/01/13 12:04, Jérôme Pouiller wrote:
> Hello all,
>
> It is handy to do tests directly in target/. But after some time, it is
> necessary to make a new fresh target/ directory. The current procedure to do
> this is:
>
> * remove build/.root (or remove target/ if you want to throw all your work)
> * remove build/*/.stamp_target_installed
> * depending of you toolchain:
> # remove stamps/ext-toolchain-installed (external)
> # remove stamps/ct-ng-toolchain-installed (ctng)
> # remove target/lib/libc.so.0 (buildroot)
> * launch make
>
> I think this process lacks of consistency. Idealy, this process should be:
> rm -r target (depending if want to throw all your work)
> rm build/*/.stamp_target_installed
> make
I agree that it lacks consistency, and I'm in favour of improving the
consistency of stamp files.
>
> I suggest following changes:
>
> 1. Move build/.root to stamps/. Since it is hidden, many user forget this
> file exist.
ACK.
>
> 2. All stamps files are in subdirectories of build/. I suggest to move
> stamps/ to build/stamps/
I'm not convinced that that improves the consistency. If build/.root
moves to stamps, than all directories in build/ are build directories.
That sounds like a good idea to me.
> 3. Buildroot toolchain should create a stamp files to be uniform with other
> toolchains. In add, target/lib/libc.so.0 never exists when PREFER_STATIC_LIB
> is enable.
ACK
Note that the buildroot toolchain is on the way out (though it will
probably take 3 more years before it's really gone), so don't put too
much effort into improving it.
> 4. To be consistent stamps/*-toolchain-installed may be renamed
> stamps/.stamp_target_installed or stamps/.stamp_toolchain_target_installed or
> toolchain/.stamp_target_installed. We may add a README file to explain what is
> purpose of this apparently empty directory.
I don't agree with this one. build/*/.stamp_* is stuff that is created
by the package infrastructure. The toolchain stuff is not in the package
infrastructure. So I wouldn't let it use the same pattern for stamp files.
> 5. stamps/ext-toolchain-installed currently copy libc in staging/ and in
> target/. It may be splited in two rules: stamps/ext-toolchain-target-installed
> and stamps/ext-toolchain-staging-installed.
It could be split, but what is the advantage of that?
> What do you think about it?
Let's see some patches! :-)
Regards,
Arnout
--
Arnout Vandecappelle arnout at mind be
Senior Embedded Software Architect +32-16-286500
Essensium/Mind http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint: 7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
More information about the buildroot
mailing list