Buildroot developer meeting report
Hi all,
As you will have noticed from the mailing list traffic, it's been a very busy
two days at the Buildroot developer meeting in Dublin. You can find the full report at [1]. Here are the highlights:
- We have decided to proceed with starting a not-for-profit organisation. It will be based in France. Maxime H. volunteered to get the ball rolling. The plan is to prepare the statutes in the coming months and sign them at FOSDEM.
- 110 patches were committed, the patchwork queue has been reduced from 331 to 236 patches. We also discussed a few of the difficult patches and series that are pending, though in fact there are still many more that warrant discussion.
- We decided how to proceed with the runtime testing. Nothing has been committed yet, the a Jenkins instance is already running at [2].
- When discussing the idea of making .hash files mandatory for all packages, we discovered that it looks like the tarballs generated automatically by github are nowadays stable. We'll verify this by adding a couple of hashes for github packages and check if the autobuilders survive.
Regards,
Arnout
[1] http://elinux.org/Buildroot:DeveloperDaysELCE2015#Report
[2] http://jenkins.free-electrons.com/job/buildroot-runtime-tests/
Signature · 6 lines
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: 7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF
Hello All,
On 2015-10-04 23:47 +0100, Arnout Vandecappelle spake thusly:
Quoted 3 lines
As you will have noticed from the mailing list traffic, it's been a very busy
two days at the Buildroot developer meeting in Dublin. You can find the full report at [1].
[--SNIP--]
As part of the discussions came the subject of supporting multiple br2-external trees at once.
The proposal I sent earlier was deemed to introduce too much complexity, and Peter suggested we do it with "a script that will generate a bunch of symlinks into a single directory, and use that directory as the traditional br2-external."
So, I've spent most of my spare time since then to try to implement that proposal, and made quite some progress, up to the point that I believe this is not a doable solution. Although it seems nice on paper, it is broken by design.
For example, take those two br2-external trees as a simple example (only interesting files are listed):
br2-ext-1/
external.mk
include $(BR2_EXTERNAL)/foo/foo.mk
foo/
foo.mk
blabla package stuff in here
br2-ext-2/
external.mk
include $(BR2_EXTERNAL)/*/*.mkNow, when we create the "shadow copy" full of symlinks, we inevitably have to include those two external.mk files, because they may contain more than include statements (like custom local rules, or custom macros, or whatever; we always said that users were free to provide "even custom configuration options and make logic" in there).
Now, since we're using a shadow copy, BR2_EXTERNAL at runtime will be pointing to that shadow copy, so what happens in that case is that the second external.mk will re-include foo/foo.mk
So far, this is not really a problem. Except we now want to ensure that a package is not defined multiple times, to avoid a br2-external tree redefining a package in Buildroot or in another br2-external tree.
But since foo/foo.mk is included twice, the second time will trigger the re-definition check and we would abort.
There are not many solutions to this, but the more we try to fix this, the more complex and fragile the code is getting. And worse, it would inevitably break existing br2-external trees, which we are trying hard to keep working without modification to those.
So, I'm calling the symlink (or "shadow copy") solution a dead-end out of which I can't see an easy path.
Input most welcome.
Regards,
Yann E. MORIN.
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------'