<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://elinux.org/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://elinux.org/api.php?action=feedcontributions&amp;user=Arnout+Vandecappelle&amp;feedformat=atom</id>
		<title>eLinux.org - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="http://elinux.org/api.php?action=feedcontributions&amp;user=Arnout+Vandecappelle&amp;feedformat=atom"/>
		<link rel="alternate" type="text/html" href="http://elinux.org/Special:Contributions/Arnout_Vandecappelle"/>
		<updated>2013-05-24T09:12:39Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.21alpha</generator>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysFOSDEM2013</id>
		<title>Buildroot:DeveloperDaysFOSDEM2013</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysFOSDEM2013"/>
				<updated>2013-02-05T16:34:34Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: Make topics for the hackaton day match with reality&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 4-5 February 2013, Brussels ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Thanks to our sponsor Google ===&lt;br /&gt;
&lt;br /&gt;
[[File:google-logo.png|right]]We would like to thank [http://www.google.com Google], who will be providing the meeting location, with Internet connection, but also free lunch and refreshments for the meeting participants. Thanks Google!&lt;br /&gt;
&lt;br /&gt;
It is worth noting that Google is sponsoring due to their usage of Buildroot to build embedded Linux systems for embedded devices used in the [https://fiber.google.com/about/ Google Fiber] project. The source code of their modified Buildroot is available at [https://gfiber.googlesource.com/buildroot/+/master].&lt;br /&gt;
&lt;br /&gt;
=== Location and date ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Monday February 4th 2013 and Tuesday Feburary 5th 2013, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right after the [http://www.fosdem.org FOSDEM], in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
Note that it is not mandatory to attend both days. It is expected that the first day will be mostly dedicated to discussion, while the second day will be mostly dedicated to hacking.&lt;br /&gt;
&lt;br /&gt;
The meeting will take place in Google Brussels offices, located Chaussée d'Etterbeek 180, 1040 Brussels. See http://goo.gl/maps/ZVAGJ for a map of the area.&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on February, 1st at 19:45 at BRU airport, leaving on February, 5th at 21:10 from BRU airport.&lt;br /&gt;
# [[User:Ymorin|Yann E. MORIN]], confirmed. Arriving 2013-02-01 17:23 at Bruxelles Midi, leaving on 2013-02-05 17:13 from Bruxelles Midi.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed. Lives close by.&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed. Lives even closer by.&lt;br /&gt;
# [[User:SamuelMartin|Samuel Martin]], confirmed. Arriving on February, 2nd at 08:47 at Bruxelles Midi, leaving on February, 5th at 19:13 from Bruxelles Midi.&lt;br /&gt;
# Dimitrios Siganos, attending on Monday only.&lt;br /&gt;
# [[User:ThomasDeSchampheleire|Thomas De Schampheleire]], confirmed. Lives close by.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
Note that the event is mainly intended for Buildroot developers and contributors, or advanced users willing to contribute more or to share about their use case for Buildroot.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
Good starting points are:&lt;br /&gt;
* [[Buildroot:DeveloperDaysELCE2012#Report_of_the_meeting|Report of the ELCE 2012 Buildroot meeting]]&lt;br /&gt;
* [[Buildroot:DeveloperDaysELCE2012#List_of_topics_to_discuss|ELCE 2012 List of topics]]&lt;br /&gt;
&lt;br /&gt;
==== Topics for the discussion day (Monday 2013-02-04) ====&lt;br /&gt;
&lt;br /&gt;
* Topics related to changes to the infrastructures&lt;br /&gt;
** current state of the infrastructure, and how to enhance it&lt;br /&gt;
*** copy target/ before creating images&lt;br /&gt;
*** handling of linux-menuconfig, busybox-menuconfig, uclibc-menuconfig, etc.&lt;br /&gt;
*** Refactoring package menus (Arnout)&lt;br /&gt;
*** Support for out-of-tree packages (Arnout)&lt;br /&gt;
*** Switch to ct-ng as the default backend for toolchain building&lt;br /&gt;
** pending series enhancing the infrastructure&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/065603.html post-image-script]&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/065174.html &amp;lt;pkg&amp;gt;_CONFIG_FIXUP]&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/065879.html build out-of-package-dir]&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/065410.html package-create-user]&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2012-December/063482.html pkg-infra: limit -reconfigure and -rebuild actions]&lt;br /&gt;
* Topics related to the packages included in Buildroot&lt;br /&gt;
** finally remove the 'devel-on-target' packages ?&lt;br /&gt;
** host-pkgconf and &amp;quot;host-autotools&amp;quot; as visible host packages (Eclipse/app dev)?&lt;br /&gt;
** new packages pending&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/064945.html tzdata et al.]&lt;br /&gt;
*** What to do with systemd/udev/eudev&lt;br /&gt;
* How are we doing? (Arnout)&lt;br /&gt;
** Is the project sufficiently stable?&lt;br /&gt;
** Do we have enough users, contributors?&lt;br /&gt;
** Are there threats we should care about?&lt;br /&gt;
** Is there a new important direction for which we lack support?&lt;br /&gt;
* [http://lists.busybox.net/pipermail/buildroot/2013-January/064646.html Building a fully configured project]&lt;br /&gt;
* Wild idea: [http://maemo.gitorious.org/scratchbox2/pages/Home scratchbox2]&lt;br /&gt;
* Giving a status on autobuilder improvements / website improvements (Thomas)&lt;br /&gt;
* Wild idea: for VCS site methods where version is HEAD or a branch, BR checks every time if the upstream has changed. This is to track the development made by team mates: your own work is in a OVERRIDE_SRCDIR, other libraries/dependencies are in a VCS method and are automatically updated. Question: how to expose this feature to the user? Addition kconfig option per package? Additional variable in local.mk? Something else?&lt;br /&gt;
* Wild idea: make it possible to configure some things per package, like optimisation/debug flags, static library, ... - this would require serious modification to Kconfig or a meta-kconfig.&lt;br /&gt;
* Provide a (nightly|weekly)-built manual from master. (Yann)&lt;br /&gt;
* Use kconfig-frontends ? (Yann)&lt;br /&gt;
* Remove the wget et al config options (Arnout)&lt;br /&gt;
* Google Summer of Code 2013 (Thomas)&lt;br /&gt;
* Patchwork maintenance, how to deal with pending patches (Arnout)&lt;br /&gt;
&lt;br /&gt;
==== Discussion ====&lt;br /&gt;
* Copy target before creating images: the idea is to avoid the need for creating idempotent scripts in e.g. post-build script. It does make sense, because for the user it's a bit more difficult to make scripts idempotent. Also it can be a step for hiding the &amp;quot;target&amp;quot; directory. And it makes complete sense if we remove the &amp;quot;target&amp;quot; directory completely and copy from staging instead.&lt;br /&gt;
** The compelling reason to make target a subset of staging is that it is much easier to do debugging: just &amp;quot;gdb staging/usr/bin/foo&amp;quot; and it will have debug symbols and the paths to the source files.&lt;br /&gt;
** Single install commands: FOO_INSTALL_CMDS. They get executed twice, with DESTDIR set to the correct place (target or staging or host). The POST_XXX_INSTALL_HOOKS would still be executed separately. But this doesn't yet give us the situation that target and staging are the same, but target just has some stuff removed.&lt;br /&gt;
** Take it one step at the time: start with FOO_INSTALL_CMDS, we can see how far we get.&lt;br /&gt;
** Document that post-build script has to be idempotent (with an example).&lt;br /&gt;
* There was a lot of discussion about using buildroot in practice in different contexts. Add to documentation a section of how to use buildroot in practice. Maybe in the form of one or more use case - but not too many because it would just confuse users. For instance, assume that proprietary patches are in-tree in package/companyname, not out-of-tree. The chapter would be called &amp;quot;Integration into a development workflow&amp;quot;.&lt;br /&gt;
* There is a consensus that buildroot should not be just an integration platform, but also usable in development. However, we should never sacrifice the simplicity, and integration has to remain the main focus. The out-of-tree package build is a good example, as well as the automatic fetching of VCS HEAD.&lt;br /&gt;
* Add chapter to manual to explain the internals of buildroot. Not so much the existing implementation, but rather the design choices.&lt;br /&gt;
* post-image script: good thing is that it can be included in a defconfig, so accept it. Post-image script (just like post-build script) will not run in fakeroot.&lt;br /&gt;
* Stable releases: the consensus is that it is a lot of effort and nobody would use it.&lt;br /&gt;
* Users and contributors: contributors are still increasing, number of users we don't really know but probably pretty high.&lt;br /&gt;
* Threats:&lt;br /&gt;
** The number of forks of buildroot. We're missing out on contributors, and if it doesn't work well we loose credibility. For instance, armadeus doesn't upstream anything (no kernel, u-boot, buildroot) - for them there is no hope. But for instance also RPi has a buildroot fork on github. Maybe it would help if we would have an official repository on github (github can be setup to automatically pull form the official repository). If we really want, we could pull patches from the repositories that we know about. A fork that just adds a defconfig and a few feature patches is not a big deal, on condition that they are kept up to date.&lt;br /&gt;
** Flash sizes are increasing, so the size advantage of buildroot is not much of an advantage anymore. Compared to e.g. emdebian, there are two more advantages:&lt;br /&gt;
*** much more understandable what happens at boot time and what exactly is installed, there's no predefined policy;&lt;br /&gt;
*** you have a top-level integration of the entire rootfs+kernel+bootloader from the start;&lt;br /&gt;
*** easy to learn for someone not familiar with Debian or Linux distros or system administration.&lt;br /&gt;
* Thomas would like to add testimonials and a list of users of buildroot to the website.&lt;br /&gt;
* Next big directions for buildroot&lt;br /&gt;
** SoC-specific libraries (OpenGL) are a pain: packages that use them need to somehow find them. We can use a virtual package mechanism like for jpeg (but then a bit different) and e.g. Qt5 depends on that virtual package.&lt;br /&gt;
** Switching to ct-ng as the default toolchain backend has been in the plans for several years. But since it's not the default backend it isn't getting a lot of attention (example: for several months it was broken, libraries were not copied to the target, and it took a lot of time for somebody to notice).&lt;br /&gt;
*** Issue #1: passing subarch variants to crosstool-ng. Shouldn't be a big problem to solve, just a matter of work.&lt;br /&gt;
*** Issue #2: download integration. Crosstool-NG cannot tell Buildroot what it needs, so Buildroot can't download it, which breaks things like &amp;quot;make source&amp;quot; and &amp;quot;make external-deps&amp;quot;. This requires a number of changes in Crosstool-NG: Crosstool-NG doesn't know the exact URL for each component, doesn't yet have a capability to list which tarballs are needed (similar to &amp;quot;external-deps&amp;quot;). It has the capability of doing the download only, but it requires configure and installing crosstool-NG. Which means that &amp;quot;make source&amp;quot; in Buildroot would need to build Crosstool-NG and all its dependencies (host-gawk, host-libtool, host-autoconf, host-automake). This problem requires more work at the Crosstool-NG level.&lt;br /&gt;
*** Issue #3: legal info integration.&lt;br /&gt;
*** Option 1: keep only external toolchain backend. Consensus is that this is not acceptable, Buildroot should still have a way of building toolchains on its own.&lt;br /&gt;
*** Option 2: work on the Crosstool-NG backend to fix all the integration issues, and use it as the default backend.&lt;br /&gt;
*** Option 3: improve the internal backend, and assume that we don't really need an integration with Crosstool-NG.&lt;br /&gt;
*** Conclusion: Yann gets time till 2013.05 to work on issue #2. If that is successful or is making good progress, we go for Option 2. If it is going nowhere, we go for Option 3 or option 1.&lt;br /&gt;
* Handling of make xxx-menuconfig&lt;br /&gt;
** The last proposal on the list was to store the xxx-config files in the output directory, and don't remove them with make clean. However, if you delete the output directory that will still be gone.&lt;br /&gt;
** Instead, it can directly be saved to the configured place (e.g. boards/mycompany/myboard/xxx-config) instead of requiring an explicit 'make xxx-saveconfig' step. Potential problem: do we save a defconfig or a full config? Linux defconfig only exists since 2.6.26 or so and is sometimes buggy...&lt;br /&gt;
** We can disallow linux-menuconfig in case the BR2_LINUX_USE_CUSTOM_CONFIG is not set, and issue a warning. Combine that with automatically saving and we have a pretty complete solution.&lt;br /&gt;
** Conclusion: copy it back to the configured place, disallow xxx-menuconfig unless something is configured. We always save full config because defconfig is not always reliable.&lt;br /&gt;
* Splitting package/Config.in into separate files for each menu is a good idea for several reasons:&lt;br /&gt;
** In patches adding a package, it's obvious in which menu it is added&lt;br /&gt;
** Scripts can automatically find out in which menu a package is, e.g. to generate the package list in the manual&lt;br /&gt;
* Out of tree package build&lt;br /&gt;
** It's mainly needed for the kernel&lt;br /&gt;
** But it's also nice for the 600 other packages that support it out of the box.&lt;br /&gt;
** Risk of breakage, but can easily be solved by setting SUPPORTS_OUT_OF_TREE to NO&lt;br /&gt;
** Makes it slower for some large packages that don't support out-of-tree build, but also saves time for some others.&lt;br /&gt;
** Conclusion: the series still needs some work, but we do like out-of-tree package builds.&lt;br /&gt;
* Some .la files in the staging directory contain wrong information: paths to the build directory instead of the staging directory. Samuel proposes to remove the .la files. This needs some testing first, though.&lt;br /&gt;
* Devel-on-target packages are not removed quite yet. But more packages can be marked as deprecated.&lt;br /&gt;
* What to do with systemd/udev/eudev: we try to use the udev from systemd without systemd. Exactly how we don't know yet... There's a risk that udev becomes unusable without systemd, but Leonard Poettering promised this would not happen. After a quick look, it turns out that you always end up building systemd, which requires dbus, even if you need only udev. So it makes the systemd source tarball a bit unpractical to build a system that uses udev only, and doesn't need systemd. Probably an indication that we should have a look at eudev? How would this interact with the systemd selection? What about incompatibilities between udev and eudev?&lt;br /&gt;
* Building a fully configured project: the question is: what is the workflow for creating a buildroot-based distribution which has a lot more than just the defconfig, and you don't want to fork the buildroot repository. Answer: fork the buildroot tree, but merge regularly.&lt;br /&gt;
* Autobuilder status: Thomas will move the info to a database, and has some very basic webpages for accessing the database. He also dreams about running some tests in qemu - but we already have enough failures with the autobuilders as they are :-)&lt;br /&gt;
* Remove the wget et al config options (Arnout): these options are indeed useless, especially because dependencies.sh looks for &amp;quot;git&amp;quot;, not BR2_GIT. But in fact, the whole &amp;quot;Build options&amp;quot; menu could use some refactoring.&lt;br /&gt;
* scratchbox2: may make life simpler to support cross-compiling. scratchbox2 does LD_PRELOAD magic to make sure that /usr/include and /usr/lib point into the sysroot instead of the host. It also runs foreign executables in qemu. However, Thomas (who used scratchbox before) was not impressed by it. It will probably also run into the kernel headers problems we had with cpanminus/qemu. Bottom line: it can be used if some package requires it, but in the end we will still have to solve cross-compilation issues.&lt;br /&gt;
* Use kconfig-frontends: we would clone it into buildroot, just like we currently do. Advantage of current kconfig-frontends is that it has some possibilities for tweaking the config executable, so that we need less or no patches. Still it's a bit of work to integrate. One problem is that it now has a configure script, which checks for flex, bison, gperf, and we want to bypass this in buildroot. We will create our own Makefile (just like we do now) and we'll check in the files generated by flex, bison, gperf. Yann doesn't have a lot of time to work on this.&lt;br /&gt;
* GSoC: student works 3 months full-time on a project. Google has to accept it, so it has to be somehow innovative and end up with a product. Core infrastructure work is probably not a good idea, because it's too difficult. Cleaning up and merging the blackfin fork or solving the autobuilder failures may not be a sufficiently well-defined project. Also there is some work for us: interviewing the students, mentoring, ... Thomas will write one or two topics. E.g.: incorporate blackfin support; improvements to test infrastructure.&lt;br /&gt;
* We iterated on the AVAILABLE problem once more, and concluded once more that none of the solutions is fully satisfying. The extra AVAILABLE options don't solve the comments - and we really want the comments. Replacing the comments with some generic statement that the required toolchain options are not available is not enough, because it's almost impossible to see which toolchain options you need. The best compromise is to have a script that checks if the dependencies and the comments are inconsistent, but it's not clear how easy it would be to create such a script - perhaps with the [[[https://github.com/ulfalizer/Kconfiglib]] python-kconfig] it's doable. The script could even automatically modify the Config.in in a later stage.&lt;br /&gt;
* Patchwork: at FOSDEM, Wolfram Sang mentioned some scripts that he uses to integrate patchwork into his git workflow. Peter is already using that to automate getting patches from patchwork and updating the patch status when it is pushed.&lt;br /&gt;
* Flags in external toolchain wrapper. The source of this discussion is the Cavium toolchain which requires an additional linker option to link correctly. Note that this is only about compile/link flags that are strictly needed for compiling for the right target, so typically things like -mfpu. The conclusion is that we want:&lt;br /&gt;
** For toolchains built by buildroot (internal, ct-ng), the toolchain configuration itself should already have the right options.&lt;br /&gt;
** For external toolchains downloaded by buildroot, buildroot should add the correct flags in the toolchain wrapper to do the right thing.&lt;br /&gt;
** For custom external toolchains, there should be a free-text config option that is coded into the toolchain wrapper.&lt;br /&gt;
** The BR2_TARGET_OPTIMIZATION option should be renamed to something more sensible, and only be used in TARGET_CFLAGS (not in the wrapper).&lt;br /&gt;
&lt;br /&gt;
==== Action point list ====&lt;br /&gt;
* post-build script documentation (Yann E. MORIN)&lt;br /&gt;
* merge the staging and target install steps, and have all packages installed to both the staging and target directories&lt;br /&gt;
* add in the manual references to previous Buildroot related talks (slides and videos, Thomas)&lt;br /&gt;
* Add documentation for &amp;quot;Integration into a development workflow&amp;quot; (Arnout, hopefully others too)&lt;br /&gt;
* Documentation: make it clear that buildroot is not a distro (no policy), make it clear what buildroot's niche is compared to e.g. emdebian&lt;br /&gt;
* Implement automatic fetching of package's VCS HEAD&lt;br /&gt;
* Resend post-image patch set with just the minor comments fixed (Thomas, to be done for 2013.02)&lt;br /&gt;
* Write a bit of documentation that documents how to add a minimal board support (Thomas)&lt;br /&gt;
* Identify buildroot forks and put them on the website or wiki&lt;br /&gt;
* Handling of make xxx-menuconfig&lt;br /&gt;
* Split package/Config.in into 35 separate files, e.g. Config.in.lib.crypto (Arnout ?)&lt;br /&gt;
* Set up a daily or weekly build of the Git version of the manual (Peter. Really this time.)&lt;br /&gt;
* Patches: don't look at the version number anymore, just apply &amp;lt;pkgname&amp;gt;-*.patch (Peter)&lt;br /&gt;
* Apply &amp;lt;pkg&amp;gt;_CONFIG_FIXUP patch (Peter)&lt;br /&gt;
* Test if removing .la files works (Samuel)&lt;br /&gt;
* Refresh the package-create-user patchset (Yann) and commit (Peter)&lt;br /&gt;
* Commit pkg-infra: limit -reconfigure and -rebuild actions patch (Peter)&lt;br /&gt;
* In the next release announcement, mention the Eclipse plugin (Peter)&lt;br /&gt;
* Further improve the tzdata series: fix the duplicate POSIX zones, add a more fine-grained zone selection, add an option to set the local timezone (Yann) (partially done)&lt;br /&gt;
* Thomas asks Maxime R. if he can have a look at updating systemd/udev, preferably using the udev that is part of systemd.&lt;br /&gt;
* Fix passing random flags to external toolchain wrapper, and rename BR2_TARGET_OPTIMIZATION.&lt;br /&gt;
* Change of the patch logic&lt;br /&gt;
** For the patches stored in the package directory, if package/&amp;lt;pkg&amp;gt;/&amp;lt;version&amp;gt;/ does exist, apply package/&amp;lt;pkg&amp;gt;/&amp;lt;version&amp;gt;/*.patch, otherwise, apply package/&amp;lt;pkg&amp;gt;/*.patch&lt;br /&gt;
** For the patches stored in the global patches directory, if $(GLOBAL_PATCH_DIR)/&amp;lt;pkg&amp;gt;/&amp;lt;version&amp;gt;/ does exist, apply $(GLOBAL_PATCH_DIR)/&amp;lt;pkg&amp;gt;/&amp;lt;version&amp;gt;/*.patch, otherwise, apply $(GLOBAL_PATCH_DIR)/&amp;lt;pkg&amp;gt;/*.patch&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Topics for the hackaton day (Tuesday 2013-02-05) ====&lt;br /&gt;
&lt;br /&gt;
* help triage the pending patches&lt;br /&gt;
** Create scripts to help the triaging process&lt;br /&gt;
** More people with patchwork write access?&lt;br /&gt;
&lt;br /&gt;
That was all that was actually done (we still had a lot of discussion). The following topics are still interesting for future reference:&lt;br /&gt;
&lt;br /&gt;
* design (and implement) changes discused the previous day (eg. infrastructure enhancements)&lt;br /&gt;
* test and upstream changes discused the previous day (pending infrastructure changes and packages)&lt;br /&gt;
* update the crosstool-NG backend&lt;br /&gt;
* Fix iso9660 fs&lt;br /&gt;
* Document the Buildroot policy decisions (about out-of-tre packages, about package manager support, about cleaning, ...) (Arnout)&lt;br /&gt;
* Document use cases (as discussed yesterday)&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysFOSDEM2013</id>
		<title>Buildroot:DeveloperDaysFOSDEM2013</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysFOSDEM2013"/>
				<updated>2013-02-05T16:22:22Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: Add report&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 4-5 February 2013, Brussels ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Thanks to our sponsor Google ===&lt;br /&gt;
&lt;br /&gt;
[[File:google-logo.png|right]]We would like to thank [http://www.google.com Google], who will be providing the meeting location, with Internet connection, but also free lunch and refreshments for the meeting participants. Thanks Google!&lt;br /&gt;
&lt;br /&gt;
It is worth noting that Google is sponsoring due to their usage of Buildroot to build embedded Linux systems for embedded devices used in the [https://fiber.google.com/about/ Google Fiber] project. The source code of their modified Buildroot is available at [https://gfiber.googlesource.com/buildroot/+/master].&lt;br /&gt;
&lt;br /&gt;
=== Location and date ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Monday February 4th 2013 and Tuesday Feburary 5th 2013, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right after the [http://www.fosdem.org FOSDEM], in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
Note that it is not mandatory to attend both days. It is expected that the first day will be mostly dedicated to discussion, while the second day will be mostly dedicated to hacking.&lt;br /&gt;
&lt;br /&gt;
The meeting will take place in Google Brussels offices, located Chaussée d'Etterbeek 180, 1040 Brussels. See http://goo.gl/maps/ZVAGJ for a map of the area.&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on February, 1st at 19:45 at BRU airport, leaving on February, 5th at 21:10 from BRU airport.&lt;br /&gt;
# [[User:Ymorin|Yann E. MORIN]], confirmed. Arriving 2013-02-01 17:23 at Bruxelles Midi, leaving on 2013-02-05 17:13 from Bruxelles Midi.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed. Lives close by.&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed. Lives even closer by.&lt;br /&gt;
# [[User:SamuelMartin|Samuel Martin]], confirmed. Arriving on February, 2nd at 08:47 at Bruxelles Midi, leaving on February, 5th at 19:13 from Bruxelles Midi.&lt;br /&gt;
# Dimitrios Siganos, attending on Monday only.&lt;br /&gt;
# [[User:ThomasDeSchampheleire|Thomas De Schampheleire]], confirmed. Lives close by.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
Note that the event is mainly intended for Buildroot developers and contributors, or advanced users willing to contribute more or to share about their use case for Buildroot.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
Good starting points are:&lt;br /&gt;
* [[Buildroot:DeveloperDaysELCE2012#Report_of_the_meeting|Report of the ELCE 2012 Buildroot meeting]]&lt;br /&gt;
* [[Buildroot:DeveloperDaysELCE2012#List_of_topics_to_discuss|ELCE 2012 List of topics]]&lt;br /&gt;
&lt;br /&gt;
==== Topics for the discussion day (Monday 2013-02-04) ====&lt;br /&gt;
&lt;br /&gt;
* Topics related to changes to the infrastructures&lt;br /&gt;
** current state of the infrastructure, and how to enhance it&lt;br /&gt;
*** copy target/ before creating images&lt;br /&gt;
*** handling of linux-menuconfig, busybox-menuconfig, uclibc-menuconfig, etc.&lt;br /&gt;
*** Refactoring package menus (Arnout)&lt;br /&gt;
*** Support for out-of-tree packages (Arnout)&lt;br /&gt;
*** Switch to ct-ng as the default backend for toolchain building&lt;br /&gt;
** pending series enhancing the infrastructure&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/065603.html post-image-script]&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/065174.html &amp;lt;pkg&amp;gt;_CONFIG_FIXUP]&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/065879.html build out-of-package-dir]&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/065410.html package-create-user]&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2012-December/063482.html pkg-infra: limit -reconfigure and -rebuild actions]&lt;br /&gt;
* Topics related to the packages included in Buildroot&lt;br /&gt;
** finally remove the 'devel-on-target' packages ?&lt;br /&gt;
** host-pkgconf and &amp;quot;host-autotools&amp;quot; as visible host packages (Eclipse/app dev)?&lt;br /&gt;
** new packages pending&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/064945.html tzdata et al.]&lt;br /&gt;
*** What to do with systemd/udev/eudev&lt;br /&gt;
* How are we doing? (Arnout)&lt;br /&gt;
** Is the project sufficiently stable?&lt;br /&gt;
** Do we have enough users, contributors?&lt;br /&gt;
** Are there threats we should care about?&lt;br /&gt;
** Is there a new important direction for which we lack support?&lt;br /&gt;
* [http://lists.busybox.net/pipermail/buildroot/2013-January/064646.html Building a fully configured project]&lt;br /&gt;
* Wild idea: [http://maemo.gitorious.org/scratchbox2/pages/Home scratchbox2]&lt;br /&gt;
* Giving a status on autobuilder improvements / website improvements (Thomas)&lt;br /&gt;
* Wild idea: for VCS site methods where version is HEAD or a branch, BR checks every time if the upstream has changed. This is to track the development made by team mates: your own work is in a OVERRIDE_SRCDIR, other libraries/dependencies are in a VCS method and are automatically updated. Question: how to expose this feature to the user? Addition kconfig option per package? Additional variable in local.mk? Something else?&lt;br /&gt;
* Wild idea: make it possible to configure some things per package, like optimisation/debug flags, static library, ... - this would require serious modification to Kconfig or a meta-kconfig.&lt;br /&gt;
* Provide a (nightly|weekly)-built manual from master. (Yann)&lt;br /&gt;
* Use kconfig-frontends ? (Yann)&lt;br /&gt;
* Remove the wget et al config options (Arnout)&lt;br /&gt;
* Google Summer of Code 2013 (Thomas)&lt;br /&gt;
* Patchwork maintenance, how to deal with pending patches (Arnout)&lt;br /&gt;
&lt;br /&gt;
==== Discussion ====&lt;br /&gt;
* Copy target before creating images: the idea is to avoid the need for creating idempotent scripts in e.g. post-build script. It does make sense, because for the user it's a bit more difficult to make scripts idempotent. Also it can be a step for hiding the &amp;quot;target&amp;quot; directory. And it makes complete sense if we remove the &amp;quot;target&amp;quot; directory completely and copy from staging instead.&lt;br /&gt;
** The compelling reason to make target a subset of staging is that it is much easier to do debugging: just &amp;quot;gdb staging/usr/bin/foo&amp;quot; and it will have debug symbols and the paths to the source files.&lt;br /&gt;
** Single install commands: FOO_INSTALL_CMDS. They get executed twice, with DESTDIR set to the correct place (target or staging or host). The POST_XXX_INSTALL_HOOKS would still be executed separately. But this doesn't yet give us the situation that target and staging are the same, but target just has some stuff removed.&lt;br /&gt;
** Take it one step at the time: start with FOO_INSTALL_CMDS, we can see how far we get.&lt;br /&gt;
** Document that post-build script has to be idempotent (with an example).&lt;br /&gt;
* There was a lot of discussion about using buildroot in practice in different contexts. Add to documentation a section of how to use buildroot in practice. Maybe in the form of one or more use case - but not too many because it would just confuse users. For instance, assume that proprietary patches are in-tree in package/companyname, not out-of-tree. The chapter would be called &amp;quot;Integration into a development workflow&amp;quot;.&lt;br /&gt;
* There is a consensus that buildroot should not be just an integration platform, but also usable in development. However, we should never sacrifice the simplicity, and integration has to remain the main focus. The out-of-tree package build is a good example, as well as the automatic fetching of VCS HEAD.&lt;br /&gt;
* Add chapter to manual to explain the internals of buildroot. Not so much the existing implementation, but rather the design choices.&lt;br /&gt;
* post-image script: good thing is that it can be included in a defconfig, so accept it. Post-image script (just like post-build script) will not run in fakeroot.&lt;br /&gt;
* Stable releases: the consensus is that it is a lot of effort and nobody would use it.&lt;br /&gt;
* Users and contributors: contributors are still increasing, number of users we don't really know but probably pretty high.&lt;br /&gt;
* Threats:&lt;br /&gt;
** The number of forks of buildroot. We're missing out on contributors, and if it doesn't work well we loose credibility. For instance, armadeus doesn't upstream anything (no kernel, u-boot, buildroot) - for them there is no hope. But for instance also RPi has a buildroot fork on github. Maybe it would help if we would have an official repository on github (github can be setup to automatically pull form the official repository). If we really want, we could pull patches from the repositories that we know about. A fork that just adds a defconfig and a few feature patches is not a big deal, on condition that they are kept up to date.&lt;br /&gt;
** Flash sizes are increasing, so the size advantage of buildroot is not much of an advantage anymore. Compared to e.g. emdebian, there are two more advantages:&lt;br /&gt;
*** much more understandable what happens at boot time and what exactly is installed, there's no predefined policy;&lt;br /&gt;
*** you have a top-level integration of the entire rootfs+kernel+bootloader from the start;&lt;br /&gt;
*** easy to learn for someone not familiar with Debian or Linux distros or system administration.&lt;br /&gt;
* Thomas would like to add testimonials and a list of users of buildroot to the website.&lt;br /&gt;
* Next big directions for buildroot&lt;br /&gt;
** SoC-specific libraries (OpenGL) are a pain: packages that use them need to somehow find them. We can use a virtual package mechanism like for jpeg (but then a bit different) and e.g. Qt5 depends on that virtual package.&lt;br /&gt;
** Switching to ct-ng as the default toolchain backend has been in the plans for several years. But since it's not the default backend it isn't getting a lot of attention (example: for several months it was broken, libraries were not copied to the target, and it took a lot of time for somebody to notice).&lt;br /&gt;
*** Issue #1: passing subarch variants to crosstool-ng. Shouldn't be a big problem to solve, just a matter of work.&lt;br /&gt;
*** Issue #2: download integration. Crosstool-NG cannot tell Buildroot what it needs, so Buildroot can't download it, which breaks things like &amp;quot;make source&amp;quot; and &amp;quot;make external-deps&amp;quot;. This requires a number of changes in Crosstool-NG: Crosstool-NG doesn't know the exact URL for each component, doesn't yet have a capability to list which tarballs are needed (similar to &amp;quot;external-deps&amp;quot;). It has the capability of doing the download only, but it requires configure and installing crosstool-NG. Which means that &amp;quot;make source&amp;quot; in Buildroot would need to build Crosstool-NG and all its dependencies (host-gawk, host-libtool, host-autoconf, host-automake). This problem requires more work at the Crosstool-NG level.&lt;br /&gt;
*** Issue #3: legal info integration.&lt;br /&gt;
*** Option 1: keep only external toolchain backend. Consensus is that this is not acceptable, Buildroot should still have a way of building toolchains on its own.&lt;br /&gt;
*** Option 2: work on the Crosstool-NG backend to fix all the integration issues, and use it as the default backend.&lt;br /&gt;
*** Option 3: improve the internal backend, and assume that we don't really need an integration with Crosstool-NG.&lt;br /&gt;
*** Conclusion: Yann gets time till 2013.05 to work on issue #2. If that is successful or is making good progress, we go for Option 2. If it is going nowhere, we go for Option 3 or option 1.&lt;br /&gt;
* Handling of make xxx-menuconfig&lt;br /&gt;
** The last proposal on the list was to store the xxx-config files in the output directory, and don't remove them with make clean. However, if you delete the output directory that will still be gone.&lt;br /&gt;
** Instead, it can directly be saved to the configured place (e.g. boards/mycompany/myboard/xxx-config) instead of requiring an explicit 'make xxx-saveconfig' step. Potential problem: do we save a defconfig or a full config? Linux defconfig only exists since 2.6.26 or so and is sometimes buggy...&lt;br /&gt;
** We can disallow linux-menuconfig in case the BR2_LINUX_USE_CUSTOM_CONFIG is not set, and issue a warning. Combine that with automatically saving and we have a pretty complete solution.&lt;br /&gt;
** Conclusion: copy it back to the configured place, disallow xxx-menuconfig unless something is configured. We always save full config because defconfig is not always reliable.&lt;br /&gt;
* Splitting package/Config.in into separate files for each menu is a good idea for several reasons:&lt;br /&gt;
** In patches adding a package, it's obvious in which menu it is added&lt;br /&gt;
** Scripts can automatically find out in which menu a package is, e.g. to generate the package list in the manual&lt;br /&gt;
* Out of tree package build&lt;br /&gt;
** It's mainly needed for the kernel&lt;br /&gt;
** But it's also nice for the 600 other packages that support it out of the box.&lt;br /&gt;
** Risk of breakage, but can easily be solved by setting SUPPORTS_OUT_OF_TREE to NO&lt;br /&gt;
** Makes it slower for some large packages that don't support out-of-tree build, but also saves time for some others.&lt;br /&gt;
** Conclusion: the series still needs some work, but we do like out-of-tree package builds.&lt;br /&gt;
* Some .la files in the staging directory contain wrong information: paths to the build directory instead of the staging directory. Samuel proposes to remove the .la files. This needs some testing first, though.&lt;br /&gt;
* Devel-on-target packages are not removed quite yet. But more packages can be marked as deprecated.&lt;br /&gt;
* What to do with systemd/udev/eudev: we try to use the udev from systemd without systemd. Exactly how we don't know yet... There's a risk that udev becomes unusable without systemd, but Leonard Poettering promised this would not happen. After a quick look, it turns out that you always end up building systemd, which requires dbus, even if you need only udev. So it makes the systemd source tarball a bit unpractical to build a system that uses udev only, and doesn't need systemd. Probably an indication that we should have a look at eudev? How would this interact with the systemd selection? What about incompatibilities between udev and eudev?&lt;br /&gt;
* Building a fully configured project: the question is: what is the workflow for creating a buildroot-based distribution which has a lot more than just the defconfig, and you don't want to fork the buildroot repository. Answer: fork the buildroot tree, but merge regularly.&lt;br /&gt;
* Autobuilder status: Thomas will move the info to a database, and has some very basic webpages for accessing the database. He also dreams about running some tests in qemu - but we already have enough failures with the autobuilders as they are :-)&lt;br /&gt;
* Remove the wget et al config options (Arnout): these options are indeed useless, especially because dependencies.sh looks for &amp;quot;git&amp;quot;, not BR2_GIT. But in fact, the whole &amp;quot;Build options&amp;quot; menu could use some refactoring.&lt;br /&gt;
* scratchbox2: may make life simpler to support cross-compiling. scratchbox2 does LD_PRELOAD magic to make sure that /usr/include and /usr/lib point into the sysroot instead of the host. It also runs foreign executables in qemu. However, Thomas (who used scratchbox before) was not impressed by it. It will probably also run into the kernel headers problems we had with cpanminus/qemu. Bottom line: it can be used if some package requires it, but in the end we will still have to solve cross-compilation issues.&lt;br /&gt;
* Use kconfig-frontends: we would clone it into buildroot, just like we currently do. Advantage of current kconfig-frontends is that it has some possibilities for tweaking the config executable, so that we need less or no patches. Still it's a bit of work to integrate. One problem is that it now has a configure script, which checks for flex, bison, gperf, and we want to bypass this in buildroot. We will create our own Makefile (just like we do now) and we'll check in the files generated by flex, bison, gperf. Yann doesn't have a lot of time to work on this.&lt;br /&gt;
* GSoC: student works 3 months full-time on a project. Google has to accept it, so it has to be somehow innovative and end up with a product. Core infrastructure work is probably not a good idea, because it's too difficult. Cleaning up and merging the blackfin fork or solving the autobuilder failures may not be a sufficiently well-defined project. Also there is some work for us: interviewing the students, mentoring, ... Thomas will write one or two topics. E.g.: incorporate blackfin support; improvements to test infrastructure.&lt;br /&gt;
* We iterated on the AVAILABLE problem once more, and concluded once more that none of the solutions is fully satisfying. The extra AVAILABLE options don't solve the comments - and we really want the comments. Replacing the comments with some generic statement that the required toolchain options are not available is not enough, because it's almost impossible to see which toolchain options you need. The best compromise is to have a script that checks if the dependencies and the comments are inconsistent, but it's not clear how easy it would be to create such a script - perhaps with the [[[https://github.com/ulfalizer/Kconfiglib]] python-kconfig] it's doable. The script could even automatically modify the Config.in in a later stage.&lt;br /&gt;
* Patchwork: at FOSDEM, Wolfram Sang mentioned some scripts that he uses to integrate patchwork into his git workflow. Peter is already using that to automate getting patches from patchwork and updating the patch status when it is pushed.&lt;br /&gt;
* Flags in external toolchain wrapper. The source of this discussion is the Cavium toolchain which requires an additional linker option to link correctly. Note that this is only about compile/link flags that are strictly needed for compiling for the right target, so typically things like -mfpu. The conclusion is that we want:&lt;br /&gt;
** For toolchains built by buildroot (internal, ct-ng), the toolchain configuration itself should already have the right options.&lt;br /&gt;
** For external toolchains downloaded by buildroot, buildroot should add the correct flags in the toolchain wrapper to do the right thing.&lt;br /&gt;
** For custom external toolchains, there should be a free-text config option that is coded into the toolchain wrapper.&lt;br /&gt;
** The BR2_TARGET_OPTIMIZATION option should be renamed to something more sensible, and only be used in TARGET_CFLAGS (not in the wrapper).&lt;br /&gt;
&lt;br /&gt;
==== Action point list ====&lt;br /&gt;
* post-build script documentation (Yann E. MORIN)&lt;br /&gt;
* merge the staging and target install steps, and have all packages installed to both the staging and target directories&lt;br /&gt;
* add in the manual references to previous Buildroot related talks (slides and videos, Thomas)&lt;br /&gt;
* Add documentation for &amp;quot;Integration into a development workflow&amp;quot; (Arnout, hopefully others too)&lt;br /&gt;
* Documentation: make it clear that buildroot is not a distro (no policy), make it clear what buildroot's niche is compared to e.g. emdebian&lt;br /&gt;
* Implement automatic fetching of package's VCS HEAD&lt;br /&gt;
* Resend post-image patch set with just the minor comments fixed (Thomas, to be done for 2013.02)&lt;br /&gt;
* Write a bit of documentation that documents how to add a minimal board support (Thomas)&lt;br /&gt;
* Identify buildroot forks and put them on the website or wiki&lt;br /&gt;
* Handling of make xxx-menuconfig&lt;br /&gt;
* Split package/Config.in into 35 separate files, e.g. Config.in.lib.crypto (Arnout ?)&lt;br /&gt;
* Set up a daily or weekly build of the Git version of the manual (Peter. Really this time.)&lt;br /&gt;
* Patches: don't look at the version number anymore, just apply &amp;lt;pkgname&amp;gt;-*.patch (Peter)&lt;br /&gt;
* Apply &amp;lt;pkg&amp;gt;_CONFIG_FIXUP patch (Peter)&lt;br /&gt;
* Test if removing .la files works (Samuel)&lt;br /&gt;
* Refresh the package-create-user patchset (Yann) and commit (Peter)&lt;br /&gt;
* Commit pkg-infra: limit -reconfigure and -rebuild actions patch (Peter)&lt;br /&gt;
* In the next release announcement, mention the Eclipse plugin (Peter)&lt;br /&gt;
* Further improve the tzdata series: fix the duplicate POSIX zones, add a more fine-grained zone selection, add an option to set the local timezone (Yann) (partially done)&lt;br /&gt;
* Thomas asks Maxime R. if he can have a look at updating systemd/udev, preferably using the udev that is part of systemd.&lt;br /&gt;
* Fix passing random flags to external toolchain wrapper, and rename BR2_TARGET_OPTIMIZATION.&lt;br /&gt;
* Change of the patch logic&lt;br /&gt;
** For the patches stored in the package directory, if package/&amp;lt;pkg&amp;gt;/&amp;lt;version&amp;gt;/ does exist, apply package/&amp;lt;pkg&amp;gt;/&amp;lt;version&amp;gt;/*.patch, otherwise, apply package/&amp;lt;pkg&amp;gt;/*.patch&lt;br /&gt;
** For the patches stored in the global patches directory, if $(GLOBAL_PATCH_DIR)/&amp;lt;pkg&amp;gt;/&amp;lt;version&amp;gt;/ does exist, apply $(GLOBAL_PATCH_DIR)/&amp;lt;pkg&amp;gt;/&amp;lt;version&amp;gt;/*.patch, otherwise, apply $(GLOBAL_PATCH_DIR)/&amp;lt;pkg&amp;gt;/*.patch&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Topics for the hackaton day (Tuesday 2013-02-05) ====&lt;br /&gt;
&lt;br /&gt;
* help triage the pending patches&lt;br /&gt;
** Create scripts to help the triaging process&lt;br /&gt;
** More people with patchwork write access?&lt;br /&gt;
* design (and implement) changes discused the previous day (eg. infrastructure enhancements)&lt;br /&gt;
* test and upstream changes discused the previous day (pending infrastructure changes and packages)&lt;br /&gt;
* update the crosstool-NG backend&lt;br /&gt;
* Fix iso9660 fs&lt;br /&gt;
* Document the Buildroot policy decisions (about out-of-tre packages, about package manager support, about cleaning, ...) (Arnout)&lt;br /&gt;
* Document use cases (as discussed yesterday)&lt;br /&gt;
* ...&lt;br /&gt;
&lt;br /&gt;
=== Report ===&lt;br /&gt;
http://lite.framapad.org/p/buildrootdeveloperday2013&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysFOSDEM2013</id>
		<title>Buildroot:DeveloperDaysFOSDEM2013</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysFOSDEM2013"/>
				<updated>2013-02-04T09:56:35Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 4-5 February 2013, Brussels ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Thanks to our sponsor Google ===&lt;br /&gt;
&lt;br /&gt;
[[File:google-logo.png|right]]We would like to thank [http://www.google.com Google], who will be providing the meeting location, with Internet connection, but also free lunch and refreshments for the meeting participants. Thanks Google!&lt;br /&gt;
&lt;br /&gt;
It is worth noting that Google is sponsoring due to their usage of Buildroot to build embedded Linux systems for embedded devices used in the [https://fiber.google.com/about/ Google Fiber] project. The source code of their modified Buildroot is available at [https://gfiber.googlesource.com/buildroot/+/master].&lt;br /&gt;
&lt;br /&gt;
=== Location and date ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Monday February 4th 2013 and Tuesday Feburary 5th 2013, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right after the [http://www.fosdem.org FOSDEM], in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
Note that it is not mandatory to attend both days. It is expected that the first day will be mostly dedicated to discussion, while the second day will be mostly dedicated to hacking.&lt;br /&gt;
&lt;br /&gt;
The meeting will take place in Google Brussels offices, located Chaussée d'Etterbeek 180, 1040 Brussels. See http://goo.gl/maps/ZVAGJ for a map of the area.&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on February, 1st at 19:45 at BRU airport, leaving on February, 5th at 21:10 from BRU airport.&lt;br /&gt;
# [[User:Ymorin|Yann E. MORIN]], confirmed. Arriving 2013-02-01 17:23 at Bruxelles Midi, leaving on 2013-02-05 17:13 from Bruxelles Midi.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed. Lives close by.&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed. Lives even closer by.&lt;br /&gt;
# [[User:SamuelMartin|Samuel Martin]], confirmed. Arriving on February, 2nd at 08:47 at Bruxelles Midi, leaving on February, 5th at 19:13 from Bruxelles Midi.&lt;br /&gt;
# Dimitrios Siganos, attending on Monday only.&lt;br /&gt;
# [[User:ThomasDeSchampheleire|Thomas De Schampheleire]], confirmed. Lives close by.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
Note that the event is mainly intended for Buildroot developers and contributors, or advanced users willing to contribute more or to share about their use case for Buildroot.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
Good starting points are:&lt;br /&gt;
* [[Buildroot:DeveloperDaysELCE2012#Report_of_the_meeting|Report of the ELCE 2012 Buildroot meeting]]&lt;br /&gt;
* [[Buildroot:DeveloperDaysELCE2012#List_of_topics_to_discuss|ELCE 2012 List of topics]]&lt;br /&gt;
&lt;br /&gt;
==== Topics for the discussion day (Monday 2013-02-04) ====&lt;br /&gt;
&lt;br /&gt;
* Topics related to changes to the infrastructures&lt;br /&gt;
** current state of the infrastructure, and how to enhance it&lt;br /&gt;
*** copy target/ before creating images&lt;br /&gt;
*** handling of linux-menuconfig, busybox-menuconfig, uclibc-menuconfig, etc.&lt;br /&gt;
*** Refactoring package menus (Arnout)&lt;br /&gt;
*** Support for out-of-tree packages (Arnout)&lt;br /&gt;
** pending series enhancing the infrastructure&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/065603.html post-image-script]&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/065174.html &amp;lt;pkg&amp;gt;_CONFIG_FIXUP]&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/065879.html build out-of-package-dir]&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/065410.html package-create-user]&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2012-December/063482.html pkg-infra: limit -reconfigure and -rebuild actions]&lt;br /&gt;
*** ...&lt;br /&gt;
* Topics related to the packages included in Buildroot&lt;br /&gt;
** finally remove the 'devel-on-target' packages ?&lt;br /&gt;
** new packages pending&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/064945.html tzdata et al.]&lt;br /&gt;
*** What to do with systemd/udev/eudev&lt;br /&gt;
** ...&lt;br /&gt;
* How are we doing? (Arnout)&lt;br /&gt;
** Is the project sufficiently stable?&lt;br /&gt;
** Do we have enough users, contributors?&lt;br /&gt;
** Are there threats we should care about?&lt;br /&gt;
* [http://lists.busybox.net/pipermail/buildroot/2013-January/064646.html Building a fully configured project]&lt;br /&gt;
* Wild idea: [http://maemo.gitorious.org/scratchbox2/pages/Home scratchbox2]&lt;br /&gt;
&lt;br /&gt;
==== Topics for the hackaton day (Tuesday 2013-02-05) ====&lt;br /&gt;
&lt;br /&gt;
* help triage the pending patches&lt;br /&gt;
** Create scripts to help the triaging process&lt;br /&gt;
** More people with patchwork write access?&lt;br /&gt;
* design (and implement) changes discused the previous day (eg. infrastructure enhancements)&lt;br /&gt;
* test and upstream changes discused the previous day (pending infrastructure changes and packages)&lt;br /&gt;
* update the crosstool-NG backend&lt;br /&gt;
* Fix iso9660 fs&lt;br /&gt;
* Document the Buildroot policy decisions (about out-of-tre packages, about package manager support, about cleaning, ...) (Arnout)&lt;br /&gt;
* Document use cases (as discussed yesterday)&lt;br /&gt;
* ...&lt;br /&gt;
&lt;br /&gt;
=== Report ===&lt;br /&gt;
http://lite.framapad.org/p/buildrootdeveloperday2013&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysFOSDEM2013</id>
		<title>Buildroot:DeveloperDaysFOSDEM2013</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysFOSDEM2013"/>
				<updated>2013-02-04T09:50:21Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: /* Topics for the hackaton day (Tuesday 2013-02-05) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 4-5 February 2013, Brussels ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Thanks to our sponsor Google ===&lt;br /&gt;
&lt;br /&gt;
[[File:google-logo.png|right]]We would like to thank [http://www.google.com Google], who will be providing the meeting location, with Internet connection, but also free lunch and refreshments for the meeting participants. Thanks Google!&lt;br /&gt;
&lt;br /&gt;
It is worth noting that Google is sponsoring due to their usage of Buildroot to build embedded Linux systems for embedded devices used in the [https://fiber.google.com/about/ Google Fiber] project. The source code of their modified Buildroot is available at [https://gfiber.googlesource.com/buildroot/+/master].&lt;br /&gt;
&lt;br /&gt;
=== Location and date ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Monday February 4th 2013 and Tuesday Feburary 5th 2013, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right after the [http://www.fosdem.org FOSDEM], in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
Note that it is not mandatory to attend both days. It is expected that the first day will be mostly dedicated to discussion, while the second day will be mostly dedicated to hacking.&lt;br /&gt;
&lt;br /&gt;
The meeting will take place in Google Brussels offices, located Chaussée d'Etterbeek 180, 1040 Brussels. See http://goo.gl/maps/ZVAGJ for a map of the area.&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on February, 1st at 19:45 at BRU airport, leaving on February, 5th at 21:10 from BRU airport.&lt;br /&gt;
# [[User:Ymorin|Yann E. MORIN]], confirmed. Arriving 2013-02-01 17:23 at Bruxelles Midi, leaving on 2013-02-05 17:13 from Bruxelles Midi.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed. Lives close by.&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed. Lives even closer by.&lt;br /&gt;
# [[User:SamuelMartin|Samuel Martin]], confirmed. Arriving on February, 2nd at 08:47 at Bruxelles Midi, leaving on February, 5th at 19:13 from Bruxelles Midi.&lt;br /&gt;
# Dimitrios Siganos, attending on Monday only.&lt;br /&gt;
# [[User:ThomasDeSchampheleire|Thomas De Schampheleire]], confirmed. Lives close by.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
Note that the event is mainly intended for Buildroot developers and contributors, or advanced users willing to contribute more or to share about their use case for Buildroot.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
Good starting points are:&lt;br /&gt;
* [[Buildroot:DeveloperDaysELCE2012#Report_of_the_meeting|Report of the ELCE 2012 Buildroot meeting]]&lt;br /&gt;
* [[Buildroot:DeveloperDaysELCE2012#List_of_topics_to_discuss|ELCE 2012 List of topics]]&lt;br /&gt;
&lt;br /&gt;
==== Topics for the discussion day (Monday 2013-02-04) ====&lt;br /&gt;
&lt;br /&gt;
* Topics related to changes to the infrastructures&lt;br /&gt;
** current state of the infrastructure, and how to enhance it&lt;br /&gt;
*** copy target/ before creating images&lt;br /&gt;
*** handling of linux-menuconfig, busybox-menuconfig, uclibc-menuconfig, etc.&lt;br /&gt;
*** Refactoring package menus (Arnout)&lt;br /&gt;
*** Support for out-of-tree packages (Arnout)&lt;br /&gt;
** pending series enhancing the infrastructure&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/065603.html post-image-script]&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/065174.html &amp;lt;pkg&amp;gt;_CONFIG_FIXUP]&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/065879.html build out-of-package-dir]&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/065410.html package-create-user]&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2012-December/063482.html pkg-infra: limit -reconfigure and -rebuild actions]&lt;br /&gt;
*** ...&lt;br /&gt;
* Topics related to the packages included in Buildroot&lt;br /&gt;
** finally remove the 'devel-on-target' packages ?&lt;br /&gt;
** new packages pending&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/064945.html tzdata et al.]&lt;br /&gt;
*** What to do with systemd/udev/eudev&lt;br /&gt;
** ...&lt;br /&gt;
* How are we doing? (Arnout)&lt;br /&gt;
** Is the project sufficiently stable?&lt;br /&gt;
** Do we have enough users, contributors?&lt;br /&gt;
** Are there threats we should care about?&lt;br /&gt;
* [http://lists.busybox.net/pipermail/buildroot/2013-January/064646.html Building a fully configured project]&lt;br /&gt;
* Wild idea: [http://maemo.gitorious.org/scratchbox2/pages/Home scratchbox2]&lt;br /&gt;
&lt;br /&gt;
==== Topics for the hackaton day (Tuesday 2013-02-05) ====&lt;br /&gt;
&lt;br /&gt;
* help triage the pending patches&lt;br /&gt;
** Create scripts to help the triaging process&lt;br /&gt;
** More people with patchwork write access?&lt;br /&gt;
* design (and implement) changes discused the previous day (eg. infrastructure enhancements)&lt;br /&gt;
* test and upstream changes discused the previous day (pending infrastructure changes and packages)&lt;br /&gt;
* update the crosstool-NG backend&lt;br /&gt;
* Fix iso9660 fs&lt;br /&gt;
* Document the Buildroot policy decisions (about out-of-tre packages, about package manager support, about cleaning, ...) (Arnout)&lt;br /&gt;
* Document use cases (as discussed yesterday)&lt;br /&gt;
* ...&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysFOSDEM2013</id>
		<title>Buildroot:DeveloperDaysFOSDEM2013</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysFOSDEM2013"/>
				<updated>2013-02-03T22:58:50Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 4-5 February 2013, Brussels ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Thanks to our sponsor Google ===&lt;br /&gt;
&lt;br /&gt;
[[File:google-logo.png|right]]We would like to thank [http://www.google.com Google], who will be providing the meeting location, with Internet connection, but also free lunch and refreshments for the meeting participants. Thanks Google!&lt;br /&gt;
&lt;br /&gt;
It is worth noting that Google is sponsoring due to their usage of Buildroot to build embedded Linux systems for embedded devices used in the [https://fiber.google.com/about/ Google Fiber] project. The source code of their modified Buildroot is available at [https://gfiber.googlesource.com/buildroot/+/master].&lt;br /&gt;
&lt;br /&gt;
=== Location and date ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Monday February 4th 2013 and Tuesday Feburary 5th 2013, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right after the [http://www.fosdem.org FOSDEM], in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
Note that it is not mandatory to attend both days. It is expected that the first day will be mostly dedicated to discussion, while the second day will be mostly dedicated to hacking.&lt;br /&gt;
&lt;br /&gt;
The meeting will take place in Google Brussels offices, located Chaussée d'Etterbeek 180, 1040 Brussels. See http://goo.gl/maps/ZVAGJ for a map of the area.&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on February, 1st at 19:45 at BRU airport, leaving on February, 5th at 21:10 from BRU airport.&lt;br /&gt;
# [[User:Ymorin|Yann E. MORIN]], confirmed. Arriving 2013-02-01 17:23 at Bruxelles Midi, leaving on 2013-02-05 17:13 from Bruxelles Midi.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed. Lives close by.&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed. Lives even closer by.&lt;br /&gt;
# [[User:SamuelMartin|Samuel Martin]], confirmed. Arriving on February, 2nd at 08:47 at Bruxelles Midi, leaving on February, 5th at 19:13 from Bruxelles Midi.&lt;br /&gt;
# Dimitrios Siganos, attending on Monday only.&lt;br /&gt;
# [[User:ThomasDeSchampheleire|Thomas De Schampheleire]], confirmed. Lives close by.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
Note that the event is mainly intended for Buildroot developers and contributors, or advanced users willing to contribute more or to share about their use case for Buildroot.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
Good starting points are:&lt;br /&gt;
* [[Buildroot:DeveloperDaysELCE2012#Report_of_the_meeting|Report of the ELCE 2012 Buildroot meeting]]&lt;br /&gt;
* [[Buildroot:DeveloperDaysELCE2012#List_of_topics_to_discuss|ELCE 2012 List of topics]]&lt;br /&gt;
&lt;br /&gt;
==== Topics for the discussion day (Monday 2013-02-04) ====&lt;br /&gt;
&lt;br /&gt;
* Topics related to changes to the infrastructures&lt;br /&gt;
** current state of the infrastructure, and how to enhance it&lt;br /&gt;
*** copy target/ before creating images&lt;br /&gt;
*** handling of linux-menuconfig, busybox-menuconfig, uclibc-menuconfig, etc.&lt;br /&gt;
*** Refactoring package menus (Arnout)&lt;br /&gt;
*** Support for out-of-tree packages (Arnout)&lt;br /&gt;
** pending series enhancing the infrastructure&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/065603.html post-image-script]&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/065174.html &amp;lt;pkg&amp;gt;_CONFIG_FIXUP]&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/065879.html build out-of-package-dir]&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/065410.html package-create-user]&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2012-December/063482.html pkg-infra: limit -reconfigure and -rebuild actions]&lt;br /&gt;
*** ...&lt;br /&gt;
* Topics related to the packages included in Buildroot&lt;br /&gt;
** finally remove the 'devel-on-target' packages ?&lt;br /&gt;
** new packages pending&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/064945.html tzdata et al.]&lt;br /&gt;
*** What to do with systemd/udev/eudev&lt;br /&gt;
** ...&lt;br /&gt;
* How are we doing? (Arnout)&lt;br /&gt;
** Is the project sufficiently stable?&lt;br /&gt;
** Do we have enough users, contributors?&lt;br /&gt;
** Are there threats we should care about?&lt;br /&gt;
* [http://lists.busybox.net/pipermail/buildroot/2013-January/064646.html Building a fully configured project]&lt;br /&gt;
* Wild idea: [http://maemo.gitorious.org/scratchbox2/pages/Home scratchbox2]&lt;br /&gt;
&lt;br /&gt;
==== Topics for the hackaton day (Tuesday 2013-02-05) ====&lt;br /&gt;
&lt;br /&gt;
* help triage the pending patches&lt;br /&gt;
** Create scripts to help the triaging process&lt;br /&gt;
** More people with patchwork write access?&lt;br /&gt;
* design (and implement) changes discused the previous day (eg. infrastructure enhancements)&lt;br /&gt;
* test and upstream changes discused the previous day (pending infrastructure changes and packages)&lt;br /&gt;
* update the crosstool-NG backend&lt;br /&gt;
* Fix iso9660 fs&lt;br /&gt;
* Document the Buildroot policy decisions (about out-of-tre packages, about package manager support, about cleaning, ...) (Arnout)&lt;br /&gt;
* ...&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysFOSDEM2013</id>
		<title>Buildroot:DeveloperDaysFOSDEM2013</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysFOSDEM2013"/>
				<updated>2013-02-03T15:08:26Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: More topics for discussion and hacking&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 4-5 February 2013, Brussels ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Thanks to our sponsor Google ===&lt;br /&gt;
&lt;br /&gt;
[[File:google-logo.png|right]]We would like to thank [http://www.google.com Google], who will be providing the meeting location, with Internet connection, but also free lunch and refreshments for the meeting participants. Thanks Google!&lt;br /&gt;
&lt;br /&gt;
It is worth noting that Google is sponsoring due to their usage of Buildroot to build embedded Linux systems for embedded devices used in the [https://fiber.google.com/about/ Google Fiber] project. The source code of their modified Buildroot is available at [https://gfiber.googlesource.com/buildroot/+/master].&lt;br /&gt;
&lt;br /&gt;
=== Location and date ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Monday February 4th 2013 and Tuesday Feburary 5th 2013, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right after the [http://www.fosdem.org FOSDEM], in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
Note that it is not mandatory to attend both days. It is expected that the first day will be mostly dedicated to discussion, while the second day will be mostly dedicated to hacking.&lt;br /&gt;
&lt;br /&gt;
The meeting will take place in Google Brussels offices, located Chaussée d'Etterbeek 180, 1040 Brussels. See http://goo.gl/maps/ZVAGJ for a map of the area.&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on February, 1st at 19:45 at BRU airport, leaving on February, 5th at 21:10 from BRU airport.&lt;br /&gt;
# [[User:Ymorin|Yann E. MORIN]], confirmed. Arriving 2013-02-01 17:23 at Bruxelles Midi, leaving on 2013-02-05 17:13 from Bruxelles Midi.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed. Lives close by.&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed. Lives even closer by.&lt;br /&gt;
# [[User:SamuelMartin|Samuel Martin]], confirmed. Arriving on February, 2nd at 08:47 at Bruxelles Midi, leaving on February, 5th at 19:13 from Bruxelles Midi.&lt;br /&gt;
# Dimitrios Siganos, attending on Monday only.&lt;br /&gt;
# [[User:ThomasDeSchampheleire|Thomas De Schampheleire]], confirmed. Lives close by.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
Note that the event is mainly intended for Buildroot developers and contributors, or advanced users willing to contribute more or to share about their use case for Buildroot.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
Good starting points are:&lt;br /&gt;
* [[Buildroot:DeveloperDaysELCE2012#Report_of_the_meeting|Report of the ELCE 2012 Buildroot meeting]]&lt;br /&gt;
* [[Buildroot:DeveloperDaysELCE2012#List_of_topics_to_discuss|ELCE 2012 List of topics]]&lt;br /&gt;
&lt;br /&gt;
==== Topics for the discussion day (Monday 2013-02-04) ====&lt;br /&gt;
&lt;br /&gt;
* Topics related to changes to the infrastructures&lt;br /&gt;
** current state of the infrastructure, and how to enhance it&lt;br /&gt;
*** copy target/ before creating images&lt;br /&gt;
*** handling of linux-menuconfig, busybox-menuconfig, uclibc-menuconfig, etc.&lt;br /&gt;
*** Refactoring package menus (Arnout)&lt;br /&gt;
*** Support for out-of-tree packages (Arnout)&lt;br /&gt;
** pending series enhancing the infrastructure&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/065603.html post-image-script]&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/065174.html &amp;lt;pkg&amp;gt;_CONFIG_FIXUP]&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/065879.html build out-of-package-dir]&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/065410.html package-create-user]&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2012-December/063482.html pkg-infra: limit -reconfigure and -rebuild actions]&lt;br /&gt;
*** ...&lt;br /&gt;
* Topics related to the packages included in Buildroot&lt;br /&gt;
** finally remove the 'devel-on-target' packages ?&lt;br /&gt;
** new packages pending&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/064945.html tzdata et al.]&lt;br /&gt;
*** What to do with systemd/udev/eudev&lt;br /&gt;
** ...&lt;br /&gt;
* How are we doing? (Arnout)&lt;br /&gt;
** Is the project sufficiently stable?&lt;br /&gt;
** Do we have enough users, contributors?&lt;br /&gt;
** Are there threats we should care about?&lt;br /&gt;
* [http://lists.busybox.net/pipermail/buildroot/2013-January/064646.html Building a fully configured project]&lt;br /&gt;
&lt;br /&gt;
==== Topics for the hackaton day (Tuesday 2013-02-05) ====&lt;br /&gt;
&lt;br /&gt;
* help triage the pending patches&lt;br /&gt;
** Create scripts to help the triaging process&lt;br /&gt;
** More people with patchwork write access?&lt;br /&gt;
* design (and implement) changes discused the previous day (eg. infrastructure enhancements)&lt;br /&gt;
* test and upstream changes discused the previous day (pending infrastructure changes and packages)&lt;br /&gt;
* update the crosstool-NG backend&lt;br /&gt;
* Fix iso9660 fs&lt;br /&gt;
* Document the Buildroot policy decisions (about out-of-tre packages, about package manager support, about cleaning, ...) (Arnout)&lt;br /&gt;
* ...&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysFOSDEM2013</id>
		<title>Buildroot:DeveloperDaysFOSDEM2013</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysFOSDEM2013"/>
				<updated>2013-02-03T12:01:33Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: More topics for discussion and hacking&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 4-5 February 2013, Brussels ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Thanks to our sponsor Google ===&lt;br /&gt;
&lt;br /&gt;
[[File:google-logo.png|right]]We would like to thank [http://www.google.com Google], who will be providing the meeting location, with Internet connection, but also free lunch and refreshments for the meeting participants. Thanks Google!&lt;br /&gt;
&lt;br /&gt;
It is worth noting that Google is sponsoring due to their usage of Buildroot to build embedded Linux systems for embedded devices used in the [https://fiber.google.com/about/ Google Fiber] project. The source code of their modified Buildroot is available at [https://gfiber.googlesource.com/buildroot/+/master].&lt;br /&gt;
&lt;br /&gt;
=== Location and date ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Monday February 4th 2013 and Tuesday Feburary 5th 2013, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right after the [http://www.fosdem.org FOSDEM], in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
Note that it is not mandatory to attend both days. It is expected that the first day will be mostly dedicated to discussion, while the second day will be mostly dedicated to hacking.&lt;br /&gt;
&lt;br /&gt;
The meeting will take place in Google Brussels offices, located Chaussée d'Etterbeek 180, 1040 Brussels. See http://goo.gl/maps/ZVAGJ for a map of the area.&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on February, 1st at 19:45 at BRU airport, leaving on February, 5th at 21:10 from BRU airport.&lt;br /&gt;
# [[User:Ymorin|Yann E. MORIN]], confirmed. Arriving 2013-02-01 17:23 at Bruxelles Midi, leaving on 2013-02-05 17:13 from Bruxelles Midi.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed. Lives close by.&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed. Lives even closer by.&lt;br /&gt;
# [[User:SamuelMartin|Samuel Martin]], confirmed. Arriving on February, 2nd at 08:47 at Bruxelles Midi, leaving on February, 5th at 19:13 from Bruxelles Midi.&lt;br /&gt;
# Dimitrios Siganos, attending on Monday only.&lt;br /&gt;
# [[User:ThomasDeSchampheleire|Thomas De Schampheleire]], confirmed. Lives close by.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
Note that the event is mainly intended for Buildroot developers and contributors, or advanced users willing to contribute more or to share about their use case for Buildroot.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
Good starting points are:&lt;br /&gt;
* [[Buildroot:DeveloperDaysELCE2012#Report_of_the_meeting|Report of the ELCE 2012 Buildroot meeting]]&lt;br /&gt;
* [[Buildroot:DeveloperDaysELCE2012#List_of_topics_to_discuss|ELCE 2012 List of topics]]&lt;br /&gt;
&lt;br /&gt;
==== Topics for the discussion day (Monday 2013-02-04) ====&lt;br /&gt;
&lt;br /&gt;
* Topics related to changes to the infrastructures&lt;br /&gt;
** current state of the infrastructure, and how to enhance it&lt;br /&gt;
*** copy target/ before creating images&lt;br /&gt;
*** handling of linux-menuconfig, busybox-menuconfig, uclibc-menuconfig, etc.&lt;br /&gt;
*** Refactoring package menus (Arnout)&lt;br /&gt;
*** Support for out-of-tree packages (Arnout)&lt;br /&gt;
** pending series enhancing the infrastructure&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/065603.html post-image-script]&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/065174.html &amp;lt;pkg&amp;gt;_CONFIG_FIXUP]&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/065879.html build out-of-package-dir]&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/065410.html package-create-user]&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2012-December/063482.html pkg-infra: limit -reconfigure and -rebuild actions]&lt;br /&gt;
*** ...&lt;br /&gt;
* Topics related to the packages included in Buildroot&lt;br /&gt;
** finally remove the 'devel-on-target' packages ?&lt;br /&gt;
** new packages pending&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/064945.html tzdata et al.]&lt;br /&gt;
** ...&lt;br /&gt;
* How are we doing? (Arnout)&lt;br /&gt;
&lt;br /&gt;
==== Topics for the hackaton day (Tuesday 2013-02-05) ====&lt;br /&gt;
&lt;br /&gt;
* help triage the pending patches&lt;br /&gt;
** Create scripts to help the triaging process&lt;br /&gt;
** More people with patchwork write access?&lt;br /&gt;
* design (and implement) changes discused the previous day (eg. infrastructure enhancements)&lt;br /&gt;
* test and upstream changes discused the previous day (pending infrastructure changes and packages)&lt;br /&gt;
* update the crosstool-NG backend&lt;br /&gt;
* Fix iso9660 fs&lt;br /&gt;
* Document the Buildroot policy decisions (about out-of-tre packages, about package manager support, about cleaning, ...) (Arnout)&lt;br /&gt;
* ...&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysFOSDEM2013</id>
		<title>Buildroot:DeveloperDaysFOSDEM2013</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysFOSDEM2013"/>
				<updated>2013-02-03T11:54:09Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: /* Topics for the discussion day (Monday 2013-02-04) */  Added a few topics&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 4-5 February 2013, Brussels ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Thanks to our sponsor Google ===&lt;br /&gt;
&lt;br /&gt;
[[File:google-logo.png|right]]We would like to thank [http://www.google.com Google], who will be providing the meeting location, with Internet connection, but also free lunch and refreshments for the meeting participants. Thanks Google!&lt;br /&gt;
&lt;br /&gt;
It is worth noting that Google is sponsoring due to their usage of Buildroot to build embedded Linux systems for embedded devices used in the [https://fiber.google.com/about/ Google Fiber] project. The source code of their modified Buildroot is available at [https://gfiber.googlesource.com/buildroot/+/master].&lt;br /&gt;
&lt;br /&gt;
=== Location and date ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Monday February 4th 2013 and Tuesday Feburary 5th 2013, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right after the [http://www.fosdem.org FOSDEM], in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
Note that it is not mandatory to attend both days. It is expected that the first day will be mostly dedicated to discussion, while the second day will be mostly dedicated to hacking.&lt;br /&gt;
&lt;br /&gt;
The meeting will take place in Google Brussels offices, located Chaussée d'Etterbeek 180, 1040 Brussels. See http://goo.gl/maps/ZVAGJ for a map of the area.&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on February, 1st at 19:45 at BRU airport, leaving on February, 5th at 21:10 from BRU airport.&lt;br /&gt;
# [[User:Ymorin|Yann E. MORIN]], confirmed. Arriving 2013-02-01 17:23 at Bruxelles Midi, leaving on 2013-02-05 17:13 from Bruxelles Midi.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed. Lives close by.&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed. Lives even closer by.&lt;br /&gt;
# [[User:SamuelMartin|Samuel Martin]], confirmed. Arriving on February, 2nd at 08:47 at Bruxelles Midi, leaving on February, 5th at 19:13 from Bruxelles Midi.&lt;br /&gt;
# Dimitrios Siganos, attending on Monday only.&lt;br /&gt;
# [[User:ThomasDeSchampheleire|Thomas De Schampheleire]], confirmed. Lives close by.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
Note that the event is mainly intended for Buildroot developers and contributors, or advanced users willing to contribute more or to share about their use case for Buildroot.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
Good starting points are:&lt;br /&gt;
* [[Buildroot:DeveloperDaysELCE2012#Report_of_the_meeting|Report of the ELCE 2012 Buildroot meeting]]&lt;br /&gt;
* [[Buildroot:DeveloperDaysELCE2012#List_of_topics_to_discuss|ELCE 2012 List of topics]]&lt;br /&gt;
&lt;br /&gt;
==== Topics for the discussion day (Monday 2013-02-04) ====&lt;br /&gt;
&lt;br /&gt;
* Topics related to changes to the infrastructures&lt;br /&gt;
** current state of the infrastructure, and how to enhance it&lt;br /&gt;
*** copy target/ before creating images&lt;br /&gt;
*** handling of linux-menuconfig, busybox-menuconfig, uclibc-menuconfig, etc.&lt;br /&gt;
*** Refactoring package menus (Arnout)&lt;br /&gt;
*** Support for out-of-tree packages (Arnout)&lt;br /&gt;
** pending series enhancing the infrastructure&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/065603.html post-image-script]&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/065174.html &amp;lt;pkg&amp;gt;_CONFIG_FIXUP]&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/065879.html build out-of-package-dir]&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/065410.html package-create-user]&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2012-December/063482.html pkg-infra: limit -reconfigure and -rebuild actions]&lt;br /&gt;
*** ...&lt;br /&gt;
* Topics related to the packages included in Buildroot&lt;br /&gt;
** finally remove the 'devel-on-target' packages ?&lt;br /&gt;
** new packages pending&lt;br /&gt;
*** [http://lists.busybox.net/pipermail/buildroot/2013-January/064945.html tzdata et al.]&lt;br /&gt;
** ...&lt;br /&gt;
&lt;br /&gt;
==== Topics for the hackaton day (Tuesday 2013-02-05) ====&lt;br /&gt;
&lt;br /&gt;
* help triage the pending patches&lt;br /&gt;
* design (and implement) changes discused the previous day (eg. infrastructure enhancements)&lt;br /&gt;
* test and upstream changes discused the previous day (pending infrastructure changes and packages)&lt;br /&gt;
* update the crosstool-NG backend&lt;br /&gt;
* ...&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysFOSDEM2013</id>
		<title>Buildroot:DeveloperDaysFOSDEM2013</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysFOSDEM2013"/>
				<updated>2013-01-07T20:54:08Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: /* Participants */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 4-5 February 2013, Brussels ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Location and date ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Monday February 4th 2013 and Tuesday Feburary 5th 2013, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right after the [http://www.fosdem.org FOSDEM], in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
Note that it is not mandatory to attend both days. It is expected that the first day will be mostly dedicated to discussion, while the second day will be mostly dedicated to hacking.&lt;br /&gt;
&lt;br /&gt;
The meeting takes place in a private appartement, located Rue Stévin in Brussels. This is very close to the Schuman metro station. See http://goo.gl/maps/LSTtC for a map of the area. The exact location will be communicated to the registered participants.&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on February, 1st at 19:45 at BRU airport, leaving on February, 5th at 21:10 from BRU airport.&lt;br /&gt;
# [[User:Ymorin|Yann E. MORIN]], confirmed. Arriving 2013-02-01 17:23 at Bruxelles Midi, leaving on 2013-02-05 17:13 from Bruxelles Midi.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed. Lives close by.&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed. Lives even closer by.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
Note that the event is mainly intended for Buildroot developers and contributors, or advanced users willing to contribute more or to share about their use case for Buildroot.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
Good starting points are:&lt;br /&gt;
* [[Buildroot:DeveloperDaysELCE2012#Report_of_the_meeting|Report of the ELCE 2012 Buildroot meeting]]&lt;br /&gt;
* [[Buildroot:DeveloperDaysELCE2012#List_of_topics_to_discuss|ELCE 2012 List of topics]]&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysFOSDEM2013</id>
		<title>Buildroot:DeveloperDaysFOSDEM2013</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysFOSDEM2013"/>
				<updated>2013-01-03T08:55:48Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: /* Participants */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 4-5 February 2013, Brussels ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Location and date ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Monday February 4th 2013 and Tuesday Feburary 5th 2013, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right after the [http://www.fosdem.org FOSDEM], in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
Note that it is not mandatory to attend both days. It is expected that the first day will be mostly dedicated to discussion, while the second day will be mostly dedicated to hacking.&lt;br /&gt;
&lt;br /&gt;
The meeting takes place in a private appartement, located Rue Stévin in Brussels. This is very close to the Schuman metro station. See http://goo.gl/maps/LSTtC for a map of the area. The exact location will be communicated to the registered participants.&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on February, 1st at 19:45 at BRU airport, leaving on February, 5th at 21:10 from BRU airport.&lt;br /&gt;
# [[User:Ymorin|Yann E. MORIN]], confirmed. Arriving 2013-02-01 17:23 at Bruxelles Midi, leaving on 2013-02-05 17:13 from Bruxelles Midi.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed. Lives close by.&lt;br /&gt;
# [[User:Arnout_Vandecappelle]], confirmed. Lives even closer by.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
Note that the event is mainly intended for Buildroot developers and contributors, or advanced users willing to contribute more or to share about their use case for Buildroot.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
Good starting points are:&lt;br /&gt;
* [[Buildroot:DeveloperDaysELCE2012#Report_of_the_meeting|Report of the ELCE 2012 Buildroot meeting]]&lt;br /&gt;
* [[Buildroot:DeveloperDaysELCE2012#List_of_topics_to_discuss|ELCE 2012 List of topics]]&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/ELC_2012_Presentations</id>
		<title>ELC 2012 Presentations</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/ELC_2012_Presentations"/>
				<updated>2012-11-06T18:17:40Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: /* Presenters */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Presenters, Demo-ers, Participants:&lt;br /&gt;
Thanks very much for your participation in Linux Foundation's [https://events.linuxfoundation.org/events/embedded-linux-conference Embedded Linux Conference 2012].&lt;br /&gt;
&lt;br /&gt;
This page is for collecting the presentations that were made at the conference. During and&lt;br /&gt;
after the conference we will collect materials from the presenters and place them here.&lt;br /&gt;
Please watch this page if you are interested in a particular presentation - and if it&lt;br /&gt;
doesn't show up, please [[Special:EmailUser/Wmat | send me and email]] and we'll try to track it down.&lt;br /&gt;
&lt;br /&gt;
== Videos ==&lt;br /&gt;
&lt;br /&gt;
Videos for ELC2012 from the Linux Foundation can be found at [http://video.linux.com/categories/2012-embedded-linux-conference ELC2012 Videos].&lt;br /&gt;
&lt;br /&gt;
In addition, Free Electrons has also provided video of Andoid builders Summit talks, and ELC talks:&lt;br /&gt;
&lt;br /&gt;
[http://free-electrons.com/blog/abs-2012-videos/ Android Builders Summit]&amp;lt;br/&amp;gt;&lt;br /&gt;
[http://free-electrons.com/blog/elc-2012-videos/ ELC]&lt;br /&gt;
&lt;br /&gt;
== Instructions ==&lt;br /&gt;
'''Presenters:''' Please post your technical conference presentations on this page.&lt;br /&gt;
(See Instructions below the tables)&lt;br /&gt;
&lt;br /&gt;
= Table of Presentations =&lt;br /&gt;
&lt;br /&gt;
NOTE:  If you add a wikilink to your presentation and attempt to upload it via the link, it may fail.  If it does, use the [[Special:Upload]] page to upload your file.&lt;br /&gt;
&lt;br /&gt;
== Keynotes ==&lt;br /&gt;
{|  border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;4&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;#c0e0e0&amp;quot;&lt;br /&gt;
|+ '''Keynotes'''&lt;br /&gt;
|- bgcolor=&amp;quot;#c0e0e0&amp;quot;&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | '''Presenter(s)'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | '''Session Description'''                                  &lt;br /&gt;
| align=&amp;quot;center&amp;quot; | '''Presentation'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | '''Transcript Status'''&lt;br /&gt;
|-&lt;br /&gt;
| Jon Corbett, Editor at LWN.net&lt;br /&gt;
| The Kernel Report&lt;br /&gt;
| [[Media:lf_elc12_corbet.pdf | The Kernel Report ELC2012]]&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| Mike Anderson, CTO at The PTR Group&lt;br /&gt;
| [[Session:The Internet of Things|The Internet of Things]]&lt;br /&gt;
| [[Media:anderson.pdf | The Internet of Things]]&lt;br /&gt;
| in progress&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Presenters ==&lt;br /&gt;
{|  border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;4&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;#c0e0e0&amp;quot;&lt;br /&gt;
|+ '''Presentations'''&lt;br /&gt;
|- bgcolor=&amp;quot;#c0e0e0&amp;quot;&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | '''Presenter(s)'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | '''Session Description'''                                  &lt;br /&gt;
| align=&amp;quot;center&amp;quot; | '''Presentation'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | '''Transcript Status'''&lt;br /&gt;
|-&lt;br /&gt;
|- bgcolor=&amp;quot;#a0c0c0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; | Day 1, 9:30am&lt;br /&gt;
|-&lt;br /&gt;
| Loïc Pallardy&lt;br /&gt;
| Saving the Power Consumption of the Unused Memory&lt;br /&gt;
| [[Media:lf_elc12_pallardy.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Bernhard Rosenkränzer, Linaro&lt;br /&gt;
| What Android and Embedded Linux Can Learn From Each Other&lt;br /&gt;
| [[Media:lf_elc12_rosenkranzer.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Ricardo Salveti de Araujo, Linaro&lt;br /&gt;
| Ubuntu on ARM: Improvements and Optimizations Done By Linaro&lt;br /&gt;
| [[Media:Ubuntu_on_ARM-_Improvements_and_Optimizations_Done_By_Linaro.pdf|PDF]]&lt;br /&gt;
|- bgcolor=&amp;quot;#a0c0c0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | Day 1, 11:30am&lt;br /&gt;
|-&lt;br /&gt;
| Zach Pfeffer, Linaro&lt;br /&gt;
| Binary Blobs Attack&lt;br /&gt;
| [[Media:lf_elc12_pfeffer.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Hisao Munakata, Renesas Electronics&lt;br /&gt;
| Close Encounters of the Upstream Resource&lt;br /&gt;
| [[Media:lf_elc12_munakata.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Daniel Hursh, IBM&lt;br /&gt;
| Open Source Automated Test Framework&lt;br /&gt;
| [[Media:lf_elc12_hursh.pdf|PDF]]&lt;br /&gt;
|- bgcolor=&amp;quot;#a0c0c0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | Day 1, 2:00pm&lt;br /&gt;
|-&lt;br /&gt;
| Saul Wold, Intel&lt;br /&gt;
| The Yocto Project Overview and Update&lt;br /&gt;
| [[Media:The Yocto Project Overview and Update.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Sean Hudson, Mentor Graphics, Inc.&lt;br /&gt;
| Embedded Linux Pitfalls&lt;br /&gt;
| [[Media:Embedded Linux Pitfalls.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Vincent Guittot, Linaro&lt;br /&gt;
| Comparing Power Saving Techniques For Multicore ARM Platforms&lt;br /&gt;
| [[Media:Comparing Power Saving Techniques For Multicore ARM Platforms.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
|- bgcolor=&amp;quot;#a0c0c0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | Day 1, 3:00pm&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Tim Bird, Sony Network Entertainment&lt;br /&gt;
| Status of Embedded Linux&lt;br /&gt;
| [[Media:Status-of-embedded-Linux-2012-02-ELC-v2.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Bruce Ashfield, Wind River&lt;br /&gt;
| A View From the Trenches: Embedded Functionality and How It Impacts Multi-Arch Kernel Maintenance&lt;br /&gt;
| [[Media:A_View_From_the_Trenches-_Embedded_Functionality_and_How_It_Impacts_Multi-Arch_Kernel_Maintenance.pdf‎|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| R Durgadoss, Intel&lt;br /&gt;
| PeakCurrent Management in x86-Based Smartphones&lt;br /&gt;
| [[Media:PeakCurrent Management in x86-Based Smartphones.pdf|PDF]]&lt;br /&gt;
|- bgcolor=&amp;quot;#a0c0c0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | Day 1, 4:15pm&lt;br /&gt;
|-&lt;br /&gt;
| Matt Porter, Texas Instruments&lt;br /&gt;
| Passing Time With SPI Framebuffer Driver&lt;br /&gt;
| [[Media:Passing Time With SPI Framebuffer Driver.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Wookey, Linaro&lt;br /&gt;
| Multiarch and Why You Should Care: Running, Installing and Crossbuilding With Multiple Architectures&lt;br /&gt;
| [[Media:Multiarch_and_Why_You_Should_Care-_Running,_Installing_and_Crossbuilding_With_Multiple_Architectures.pdf|PDF]]  [[Media:SourceCode.tgz|SOURCE]]&lt;br /&gt;
|-&lt;br /&gt;
| Amit Daniel Kachhap, Linaro/Samsung&lt;br /&gt;
| A New Simplified Thermal Framework For ARM Platforms&lt;br /&gt;
| [[Media:A New Simplified Thermal Framework For ARM Platforms.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
|- bgcolor=&amp;quot;#a0c0c0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | Day 1, 5:15pm&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Tsugikazu Shibata, NEC&lt;br /&gt;
| On The Road: To Provide the Long-Term Stable Linux For The Industry&lt;br /&gt;
| [[media:On_The_Road-_To_Provide_the_Long-Term_Stable_Linux_For_The_Industry.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Thomas P. Abraham, Samsung Electronics&lt;br /&gt;
| Experiences With Device Tree Support Development For ARM-Based SOC's&lt;br /&gt;
| [[Media:Experiences With Device Tree Support Development For ARM-Based SOC's.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Paul E. McKenney, IBM&lt;br /&gt;
| [[Session:Making RCU Safe For Battery-Powered Devices ELC2012|Making RCU Safe For Battery-Powered Devices]]&lt;br /&gt;
| [[media:Making RCU Safe For Battery-Powered Devices.pdf|PDF]]&lt;br /&gt;
| in progress (0:00 - 6:59)&lt;br /&gt;
|- bgcolor=&amp;quot;#a0c0c0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | Day 2, 10:30am&lt;br /&gt;
|-&lt;br /&gt;
| Thomas Petazzoni, Free Electrons&lt;br /&gt;
| Buildroot: A Nice, Simple, and Efficient Embedded Linux Build System&lt;br /&gt;
| [[Media:Buildroot2.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Steven Rostedt, Red Hat&lt;br /&gt;
|  Automated Testing with ktest.pl (Embedded Edition)&lt;br /&gt;
| [[Media: Automated Testing with ktest.pl (Embedded Edition).pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| David VomLehn, Cisco&lt;br /&gt;
| Intricacies of a MIPS Stack Backtrace Implementation&lt;br /&gt;
| [[Media:Intricacies of a MIPS Stack Backtrace Implementation.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
|- bgcolor=&amp;quot;#a0c0c0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | Day 2, 11:30am&lt;br /&gt;
|-&lt;br /&gt;
| Edward Hervey, Collabora&lt;br /&gt;
| GStreamer 1.0: No Longer Compromise Flexibility For Performance&lt;br /&gt;
| [[Media:GStreamer_1.0-_No_Longer_Compromise_Flexibility_For_Performance.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Steven Rostedt, Red Hat&lt;br /&gt;
|  Automated Testing with ktest.pl (Embedded Edition) (Cont.)&lt;br /&gt;
| [[Media: Automated Testing with ktest.pl (Embedded Edition).pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Tim Bird, Sony Network Entertainment&lt;br /&gt;
| Embedded-Appropriate Crash Handling in Linux&lt;br /&gt;
| [[Media:Embedded-Appropriate Crash Handling in Linux.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
|- bgcolor=&amp;quot;#a0c0c0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | Day 2, 2:00pm&lt;br /&gt;
|-&lt;br /&gt;
| Arnd Bergmann, Linaro&lt;br /&gt;
| ARM Subarchitecture Status&lt;br /&gt;
| [[Media:ARM Subarchitecture Status.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Mark Gisi, Wind River Systems&lt;br /&gt;
| The Power of SPDX - Sharing Critical Licensing Information Within a Linux Device Supply Chain&lt;br /&gt;
| [[Media:The Power of SPDX - Sharing Critical Licensing Information Within a Linux Device Supply Chain.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Yoshitake Kobayashi, Toshiba&lt;br /&gt;
| Ineffective and Effective Ways To Find Out Latency Bottlenecks With Ftrace&lt;br /&gt;
| [[Media:Ineffective and Effective Ways To Find Out Latency Bottlenecks With Ftrace.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
|- bgcolor=&amp;quot;#a0c0c0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | Day 2, 3:00pm&lt;br /&gt;
|-&lt;br /&gt;
| Ohad Ben-Cohen, Wizery / Texas Instruments&lt;br /&gt;
| Using virtio to Talk With Remote Processors&lt;br /&gt;
| [[Media:Using virtio to Talk With Remote Processors.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Elizabeth Flanagan, Intel&lt;br /&gt;
| Embedded License Compliance Patterns and Antipatterns&lt;br /&gt;
| [[Media:Embedded License Compliance Patterns and Antipatterns.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| David Anders, Texas Instruments&lt;br /&gt;
| Board Bringup: LCD and Display Interfaces&lt;br /&gt;
| [[elc-lcd|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
|- bgcolor=&amp;quot;#a0c0c0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | Day 2, 4:15pm&lt;br /&gt;
|-&lt;br /&gt;
| Rob Clark, Texas Instruments&lt;br /&gt;
| DMA Buffer Sharing: An Introduction&lt;br /&gt;
| [[Media:DMA_Buffer_Sharing-_An_Introduction.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Ken Tough, Intrinsyc&lt;br /&gt;
| Linux on eMMC: Optimizing For Performance&lt;br /&gt;
| [[Media:Linux_on_eMMC-_Optimizing_For_Performance.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Paul Larson, Linaro&lt;br /&gt;
| LAVA Project Update&lt;br /&gt;
| [[Media:LAVA Project Update.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
|- bgcolor=&amp;quot;#a0c0c0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | Day 2, 5:15pm&lt;br /&gt;
|-&lt;br /&gt;
| Jeff Osier-Mixon, Intel&lt;br /&gt;
| Yocto Project Community (BoFs)&lt;br /&gt;
| No Slides&lt;br /&gt;
|-&lt;br /&gt;
| Frank Rowand, Sony Network Entertainment&lt;br /&gt;
| Real Time (BoFs)&lt;br /&gt;
| [[Media:Real Time (BoFs).pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Mike Turquette, Texas Instruments&lt;br /&gt;
| Common Clock Framework (BoFs)&lt;br /&gt;
| [[Media:Common Clock Framework (BoFs).pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
|- bgcolor=&amp;quot;#a0c0c0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | Day 3, 9:00am&lt;br /&gt;
|-&lt;br /&gt;
| Hunyue Yau, HY Research LLC&lt;br /&gt;
| Userland Tools and Techniques For Linux Board Bring-Up and Systems Integration&lt;br /&gt;
| [[Media:Userland Tools and Techniques For Linux Board Bring-Up and Systems Integration.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Matt Weber, Rockwell Collins Inc.&lt;br /&gt;
| Optimizing the Embedded Platform Using OpenCV&lt;br /&gt;
| [[Media:Optimizing the Embedded Platform Using OpenCV.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Greg Ungerer, McAfee&lt;br /&gt;
| M68K: Life in the Old Architecture&lt;br /&gt;
| [[Media:M68K-_Life_in_the_Old_Architecture.pdf|PDF]]&lt;br /&gt;
|- bgcolor=&amp;quot;#a0c0c0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | Day 3, 10:00am&lt;br /&gt;
|-&lt;br /&gt;
| Gary Bisson, Adeneo Embedded&lt;br /&gt;
| Useful USB Gadgets on Linux&lt;br /&gt;
| [[Media:Useful USB Gadgets on Linux.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Jason Kridner, Texas Instruments&lt;br /&gt;
| GUIs: Coming To Uncommon Goods Near You&lt;br /&gt;
| [[Media:Guis_coming_to_uncommon_goods.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Mike Anderson, The PTR Group&lt;br /&gt;
| Adapting Your Network Code For IPv6 Support&lt;br /&gt;
| [[Media:Adapting Your Network Code For IPv6 Support.pdf|PDF]]&lt;br /&gt;
|- bgcolor=&amp;quot;#a0c0c0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | Day 3,11:30pm&lt;br /&gt;
|-&lt;br /&gt;
| Koen Kooi, The Angstrom Distribution&lt;br /&gt;
| Producing the Beaglebone and Supporting It&lt;br /&gt;
| No Paper - see video&lt;br /&gt;
|-&lt;br /&gt;
| Danny Bennett, basysKom GmbH&lt;br /&gt;
| HTML5 in a Plasma-Active World&lt;br /&gt;
| [[Media:HTML5 in a Plasma-Active World.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Marcin Mielczarczyk, Tieto&lt;br /&gt;
| Getting the First Open Source GSM Stack in Linux&lt;br /&gt;
| [[Media:Getting the First Open Source GSM Stack in Linux.pdf|PDF]]&lt;br /&gt;
|- bgcolor=&amp;quot;#a0c0c0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; | Day 3, 2:00pm&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Pierre Tardy, Intel&lt;br /&gt;
| PyTimechart Practical&lt;br /&gt;
|[[Media:PyTimechart Practical.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Linus Walleij, ST-Ericsson&lt;br /&gt;
| Pin Control Subsystem Overview&lt;br /&gt;
| [[Media:Pin Control Subsystem Overview.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Khem Raj, OpenEmbedded Project&lt;br /&gt;
| OpenEmbedded - A Layered Approach&lt;br /&gt;
| [[Media:OpenEmbedded - A Layered Approach.pdf|PDF]]&lt;br /&gt;
|- bgcolor=&amp;quot;#a0c0c0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | Day 3, 3:00pm&lt;br /&gt;
|-&lt;br /&gt;
| Lucas De Marchi, ProFUSION Embedded Systems&lt;br /&gt;
| Managing Kernel Modules With kmod&lt;br /&gt;
| [[Media:Managing Kernel Modules With kmod.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Jean Pihet, NewOldBits&lt;br /&gt;
| A New Model for the System and Devices Latency&lt;br /&gt;
| [[Media:A New Model for the System and Devices Latency.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Pintu Kumar, Samsung&lt;br /&gt;
| Controlling Linux Memory Fragmentation and Higher Order Allocation Failure: Analysis, Observations and Results&lt;br /&gt;
| [[Media:Controlling_Linux_Memory_Fragmentation_and_Higher_Order_Allocation_Failure-_Analysis,_Observations_and_Results.pdf|PDF]]&lt;br /&gt;
| in-progress&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Workshops ==&lt;br /&gt;
{|  border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;4&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;#c0e0e0&amp;quot;&lt;br /&gt;
|+ '''Workshops'''&lt;br /&gt;
|- bgcolor=&amp;quot;#c0e0e0&amp;quot;&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | '''Presenter(s)'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | '''Session Description'''                                  &lt;br /&gt;
| align=&amp;quot;center&amp;quot; | '''Presentation'''&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Karim J. Yaghmour&lt;br /&gt;
| Embedded Android Workshop&lt;br /&gt;
| [[Media:Android Workshop.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Instructions for Presenters ==&lt;br /&gt;
Please create a link in the table for your presentation, copying the style of other links.&lt;br /&gt;
(You may need to create an account in order to edit the wiki or upload files.)&lt;br /&gt;
&lt;br /&gt;
When you have created the link, click on it to upload the file containing your slides.&lt;br /&gt;
[[Category:ELC]]&lt;br /&gt;
[[Category:2012]]&lt;br /&gt;
[[Category:Events]]&lt;br /&gt;
[[Category:Presentations]]&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Session:Making_RCU_Safe_For_Battery-Powered_Devices_ELC2012</id>
		<title>Session:Making RCU Safe For Battery-Powered Devices ELC2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Session:Making_RCU_Safe_For_Battery-Powered_Devices_ELC2012"/>
				<updated>2012-11-06T18:16:52Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: /* Transcript */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Session Details ==&lt;br /&gt;
; Event : Embedded Linux Conference 2012&lt;br /&gt;
; Date : February 16, 2012&lt;br /&gt;
; Presenter :  Paul E. McKenney&lt;br /&gt;
; Organization: IBM&lt;br /&gt;
; Slides : http://elinux.org/images/0/06/Making_RCU_Safe_For_Battery-Powered_Devices.pdf&lt;br /&gt;
; Video : [http://free-electrons.com/pub/video/2012/elc/elc-2012-mckenney-rcu-safe-battery-powered-devices-450p.webm Free Electrons (450x800)] or [http://free-electrons.com/pub/video/2012/elc/elc-2012-mckenney-rcu-safe-battery-powered-devices.webm Free Electrons (Full HD)] or [http://video.linux.com/videos/making-rcu-safe-for-battery-powered-devices Linux Foundation]&lt;br /&gt;
; Duration : 52:29&lt;br /&gt;
&lt;br /&gt;
=== Abstract ===&lt;br /&gt;
&lt;br /&gt;
Back in the 1990s, energy efficiency was not even on the list of RCU-related concerns. Systems using RCU at that time dealt with either large quantities of heavy equipment or large financial flows, so that the energy consumption of the entire server (let alone RCU's contribution) was way down in the noise. This situation changed dramatically with the 2002 introduction of RCU into the Linux kernel. Since then, RCU's energy-efficiency code has been rewritten more than five times. The most recent rewrite was motivated by workloads where RCU was leaving tens of percent of potential energy savings on the table. This talk will give a brief overview of how energy efficiency came to RCU, the current situation, future prospects, and generally applicable lessons learned.&lt;br /&gt;
&lt;br /&gt;
=== Biography ===&lt;br /&gt;
&lt;br /&gt;
Paul E. McKenney is a Distinguished Engineer with the IBM Linux Technology Center, where he maintains the RCU implementation within the Linux kernel. He has been coding for almost four decades, and more than half of that on parallel hardware. His prior lives include working on the DYNIX/ptx kernel at Sequent, work on packet radio, Internet protocols, and system administration at SRI International, and work on soft-realtime systems as a self-employed contract programmer. His hobbies include what passes for running at his age along with the usual house-wife-and-kids habit.&lt;br /&gt;
&lt;br /&gt;
=== Notes ===&lt;br /&gt;
&lt;br /&gt;
== Transcript ==&lt;br /&gt;
; Transcribed by: Arnout Vandecappelle (0:00 - 6:59)&lt;br /&gt;
; Verified by: 1 - &lt;br /&gt;
&lt;br /&gt;
0:00 - 1:00: [slide 1 - title] [some pre-presentation chatting] &amp;gt;&amp;gt; PAUL MCKENNEY: [slide 2 - Overview] I'm going to go through a little obligatory what-is-RCU. At my age, you ''have'' to have at least some slide about &amp;quot;The Good Old Days&amp;quot;, as a log [?] or something, and something about that. We'll take a look at RCU's many energy-efficiency variants over the years, the current state of its energy-efficiency, and of course future directions.&lt;br /&gt;
&lt;br /&gt;
[slide 3 - What is RCU?] Now how many people here have actually written code that uses RCU? Good, we got some, great! Now how many people have ever viewed code that has calls to RCU in it?&lt;br /&gt;
&lt;br /&gt;
1:00 - 2:00: Okay, a few more, good. How many people have heard of RCU before today? All right, that's good. Not so long ago [?] I wouldn't have seen any hands for that last one either. [remark from the audience] Yes, there was a time when I could have said yes to the first one and no to the last one, but that was long ago. Anyway. &lt;br /&gt;
&lt;br /&gt;
[slide 4 - A very brief introduction to RCU] OK, let's go through it quickly. This is just a taste of it. I'll just take a few minutes to go through it. I have a slide at the end of this section that has a list of places to go to get more information. These slides are posted somewhere, they will be on my website as well.&lt;br /&gt;
&lt;br /&gt;
If you only want to hear the number one sentence about RCU, the thing to remember is that first bullet there: RCU is a synchronization technique that is sometimes used in place of reader-writer locking. The reason that it's used in place of reader-writer locking is that it has extremely low read-side overhead. When I say extremely low, I mean that if you have a real linux kernel that's built with CONFIG_PREEMPT=n - without preemption - it will be zero.&lt;br /&gt;
&lt;br /&gt;
2:00 - 3:00: And I mean ''zero'': &amp;lt;tt&amp;gt;#define rcu_read_lock()&amp;lt;/tt&amp;gt; newline. So, the C preprocessor sees it, the compiler doesn't. Of course, &amp;quot;free&amp;quot; is a very good price, it gives you great performance scalability, real-time response. &lt;br /&gt;
&lt;br /&gt;
The other nice thing about it, is something called hazard pointers. A guy named Maged Michael worked on this. You can have RCU readers making progress, and at the same time RCU writers making progress. So you can have a reader reading an item, while an updater is updating that same data item, and have something sensible happen. This makes for some very nice non-lockup and non-blockage techniques and properties.&lt;br /&gt;
&lt;br /&gt;
The main place you want to use it is read-mostly data. I'll have a slide near the end that gives a &amp;quot;Go&amp;quot;, &amp;quot;Wait&amp;quot;, &amp;quot;Stop&amp;quot; kind of thing about where to use it. This is increasingly important. &lt;br /&gt;
&lt;br /&gt;
3:00 - 4:00: There was a time, when I was the average age in this room, where, if you have a machine, and you wanted to plug a disk in it, you had to change lines in the source code of the kernel. Then you could bring down your system and plug your disk, and make sure you boot the kernel that has the change because otherwise it will panic coming up with the extra disk. And even worse if you take one out. Well, our machines are a bit more civilized these days, I can slide a memory stick in this thing any time I want, and it will pop it up and say &amp;quot;Hey, here's your disk, what do you want to do with it.&amp;quot; What that means, is that a bunch of stuff that used to be stuck in the source code of the kernel is now data structures. Things like routing tables, security policies, storage configuration. These things almost never change. But they might change at any time. That's the sort of thing that RCU works really well for.&lt;br /&gt;
&lt;br /&gt;
4:00 - 5:00: I will have a couple of slides showing specific operations for it. One thing is - I said up there that the readers can make progress even while you're changing data items, so, clearly you have to be able to take the thing and insert new data while the reader is going through the thing and have it all work out correctly. We'll look at that. Even more exciting is when you want to remove some data while a reader is charging [?] through your list or your data structure, and have that work out right. We'll take a look at how that works. Given that the readers aren't telling us anything - remember that you can have zero code for the reader - we need a way for the writers to figure out whether the readers are there or not, so they can do things without upsetting readers. We'll have a slide on that as well.&lt;br /&gt;
&lt;br /&gt;
[slide 5 - Publication of And Subscription To New Data] This slide is talking about when you want to add new data to your data structure and present it to the readers. On this slide and the next slide, if you have something that's red, it means it's dangerous for updaters. Readers could be looking at it, new readers can show up at any time, we can't stop them, we don't even know they're there. So we have to be very careful for the things that are marked red.&lt;br /&gt;
&lt;br /&gt;
Yellow (not on this slide but it will be on the next slide) is dangerous. There can't be any new readers getting to that piece of data, but there might be old ones still there. &lt;br /&gt;
&lt;br /&gt;
5:00 - 6:00: And finally green is where the updater has full control over it, it can do what it wants.&lt;br /&gt;
&lt;br /&gt;
We have time moving from left to right on this diagram. We're just showing the state of the system, with these arrows meaning a change. We have the global pointer red: any reader at any time can just go to this variable and grab it and does something. We don't know they're there, we don't know when they're showing up or when they're leaving, we can't stop them. What we want to do, is to get to this final state, where the global pointer is pointing to this data structure that's initialized in the way we want to. We want the readers to actually see the data structure in this state.&lt;br /&gt;
&lt;br /&gt;
We take three steps. The first thing we do is we allocate the new data. We get this block of memory, we get a pointer to it, but readers can't get to it - there's no path to it. This is uninitialized, it's just garbage memory that kmalloc or whatever gave us. The next thing we do is, we initialize it.&lt;br /&gt;
&lt;br /&gt;
6:00 - 7:00: Now it has some sensible data in it. Readers still can't reach to it, there's no way to get there. Once we're there, we use this primitive, &amp;lt;tt&amp;gt;rcu_assign_pointer()&amp;lt;/tt&amp;gt;, which is essentially a glorified assignment statement. It's an assignment statement that does the change, including some architecture-specific instructions, needed to make sure that the readers see this [the new data structure] and not this [the old data]. If you don't use this special function but just use an equal sign - &amp;lt;tt&amp;gt;gptr = tmp&amp;lt;/tt&amp;gt;, what can happen is that both the compiler and the CPU can change the order of things, which means these readers coming in might see garbage instead of the nice initialized stuff you want. &lt;br /&gt;
&lt;br /&gt;
The readers have their own special sauce for their assignment statement. Instead of just saying &amp;quot;give me a copy&amp;quot;, like &amp;lt;tt&amp;gt;localvar = gptr&amp;lt;/tt&amp;gt;, they have to use &amp;lt;tt&amp;gt;rcu_dereference()&amp;lt;/tt&amp;gt;, again, to prevent the compiler and in some cases the CPU from changing the code around and causing things to show up out of order.&lt;br /&gt;
&lt;br /&gt;
7:00 - 8:00:&lt;br /&gt;
&lt;br /&gt;
8:00 - 9:00:&lt;br /&gt;
&lt;br /&gt;
9:00 - 10:00:&lt;br /&gt;
&lt;br /&gt;
10:00 - 11:00:&lt;br /&gt;
&lt;br /&gt;
11:00 - 12:00:&lt;br /&gt;
&lt;br /&gt;
12:00 - 13:00:&lt;br /&gt;
&lt;br /&gt;
13:00 - 14:00:&lt;br /&gt;
&lt;br /&gt;
14:00 - 15:00:&lt;br /&gt;
&lt;br /&gt;
15:00 - 16:00:&lt;br /&gt;
&lt;br /&gt;
16:00 - 17:00:&lt;br /&gt;
&lt;br /&gt;
17:00 - 18:00:&lt;br /&gt;
&lt;br /&gt;
18:00 - 19:00:&lt;br /&gt;
&lt;br /&gt;
19:00 - 20:00:&lt;br /&gt;
&lt;br /&gt;
20:00 - 21:00:&lt;br /&gt;
&lt;br /&gt;
21:00 - 22:00:&lt;br /&gt;
&lt;br /&gt;
22:00 - 23:00:&lt;br /&gt;
&lt;br /&gt;
23:00 - 24:00:&lt;br /&gt;
&lt;br /&gt;
24:00 - 25:00:&lt;br /&gt;
&lt;br /&gt;
25:00 - 26:00:&lt;br /&gt;
&lt;br /&gt;
26:00 - 27:00:&lt;br /&gt;
&lt;br /&gt;
27:00 - 28:00:&lt;br /&gt;
&lt;br /&gt;
28:00 - 29:00:&lt;br /&gt;
&lt;br /&gt;
29:00 - 30:00:&lt;br /&gt;
&lt;br /&gt;
30:00 - 31:00:&lt;br /&gt;
&lt;br /&gt;
31:00 - 32:00:&lt;br /&gt;
&lt;br /&gt;
32:00 - 33:00:&lt;br /&gt;
&lt;br /&gt;
33:00 - 34:00:&lt;br /&gt;
&lt;br /&gt;
34:00 - 35:00:&lt;br /&gt;
&lt;br /&gt;
35:00 - 36:00:&lt;br /&gt;
&lt;br /&gt;
36:00 - 37:00:&lt;br /&gt;
&lt;br /&gt;
37:00 - 38:00:&lt;br /&gt;
&lt;br /&gt;
38:00 - 39:00:&lt;br /&gt;
&lt;br /&gt;
39:00 - 40:00:&lt;br /&gt;
&lt;br /&gt;
40:00 - 41:00:&lt;br /&gt;
&lt;br /&gt;
41:00 - 42:00:&lt;br /&gt;
&lt;br /&gt;
42:00 - 43:00:&lt;br /&gt;
&lt;br /&gt;
43:00 - 44:00:&lt;br /&gt;
&lt;br /&gt;
44:00 - 45:00:&lt;br /&gt;
&lt;br /&gt;
45:00 - 46:00:&lt;br /&gt;
&lt;br /&gt;
46:00 - 47:00:&lt;br /&gt;
&lt;br /&gt;
47:00 - 48:00:&lt;br /&gt;
&lt;br /&gt;
48:00 - 49:00:&lt;br /&gt;
&lt;br /&gt;
49:00 - 50:00:&lt;br /&gt;
&lt;br /&gt;
50:00 - 51:00:&lt;br /&gt;
&lt;br /&gt;
51:00 - 52:00:&lt;br /&gt;
&lt;br /&gt;
52:00 - 53:00:&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Session:Making_RCU_Safe_For_Battery-Powered_Devices_ELC2012</id>
		<title>Session:Making RCU Safe For Battery-Powered Devices ELC2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Session:Making_RCU_Safe_For_Battery-Powered_Devices_ELC2012"/>
				<updated>2012-11-06T18:04:01Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: /* Transcript */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Session Details ==&lt;br /&gt;
; Event : Embedded Linux Conference 2012&lt;br /&gt;
; Date : February 16, 2012&lt;br /&gt;
; Presenter :  Paul E. McKenney&lt;br /&gt;
; Organization: IBM&lt;br /&gt;
; Slides : http://elinux.org/images/0/06/Making_RCU_Safe_For_Battery-Powered_Devices.pdf&lt;br /&gt;
; Video : [http://free-electrons.com/pub/video/2012/elc/elc-2012-mckenney-rcu-safe-battery-powered-devices-450p.webm Free Electrons (450x800)] or [http://free-electrons.com/pub/video/2012/elc/elc-2012-mckenney-rcu-safe-battery-powered-devices.webm Free Electrons (Full HD)] or [http://video.linux.com/videos/making-rcu-safe-for-battery-powered-devices Linux Foundation]&lt;br /&gt;
; Duration : 52:29&lt;br /&gt;
&lt;br /&gt;
=== Abstract ===&lt;br /&gt;
&lt;br /&gt;
Back in the 1990s, energy efficiency was not even on the list of RCU-related concerns. Systems using RCU at that time dealt with either large quantities of heavy equipment or large financial flows, so that the energy consumption of the entire server (let alone RCU's contribution) was way down in the noise. This situation changed dramatically with the 2002 introduction of RCU into the Linux kernel. Since then, RCU's energy-efficiency code has been rewritten more than five times. The most recent rewrite was motivated by workloads where RCU was leaving tens of percent of potential energy savings on the table. This talk will give a brief overview of how energy efficiency came to RCU, the current situation, future prospects, and generally applicable lessons learned.&lt;br /&gt;
&lt;br /&gt;
=== Biography ===&lt;br /&gt;
&lt;br /&gt;
Paul E. McKenney is a Distinguished Engineer with the IBM Linux Technology Center, where he maintains the RCU implementation within the Linux kernel. He has been coding for almost four decades, and more than half of that on parallel hardware. His prior lives include working on the DYNIX/ptx kernel at Sequent, work on packet radio, Internet protocols, and system administration at SRI International, and work on soft-realtime systems as a self-employed contract programmer. His hobbies include what passes for running at his age along with the usual house-wife-and-kids habit.&lt;br /&gt;
&lt;br /&gt;
=== Notes ===&lt;br /&gt;
&lt;br /&gt;
== Transcript ==&lt;br /&gt;
; Transcribed by: Arnout Vandecappelle&lt;br /&gt;
; Verified by: 1 - &lt;br /&gt;
&lt;br /&gt;
0:00 - 1:00: [slide 1 - title] [some pre-presentation chatting] &amp;gt;&amp;gt; PAUL MCKENNEY: [slide 2 - Overview] I'm going to go through a little obligatory what-is-RCU. At my age, you ''have'' to have at least some slide about &amp;quot;The Good Old Days&amp;quot;, as a log [?] or something, and something about that. We'll take a look at RCU's many energy-efficiency variants over the years, the current state of its energy-efficiency, and of course future directions.&lt;br /&gt;
&lt;br /&gt;
[slide 3 - What is RCU?] Now how many people here have actually written code that uses RCU? Good, we got some, great! Now how many people have ever viewed code that has calls to RCU in it?&lt;br /&gt;
&lt;br /&gt;
1:00 - 2:00: Okay, a few more, good. How many people have heard of RCU before today? All right, that's good. Not so long ago [?] I wouldn't have seen any hands for that last one either. [remark from the audience] Yes, there was a time when I could have said yes to the first one and no to the last one, but that was long ago. Anyway. &lt;br /&gt;
&lt;br /&gt;
[slide 4 - A very brief introduction to RCU] OK, let's go through it quickly. This is just a taste of it. I'll just take a few minutes to go through it. I have a slide at the end of this section that has a list of places to go to get more information. These slides are posted somewhere, they will be on my website as well.&lt;br /&gt;
&lt;br /&gt;
If you only want to hear the number one sentence about RCU, the thing to remember is that first bullet there: RCU is a synchronization technique that is sometimes used in place of reader-writer locking. The reason that it's used in place of reader-writer locking is that it has extremely low read-side overhead. When I say extremely low, I mean that if you have a real linux kernel that's built with CONFIG_PREEMPT=n - without preemption - it will be zero.&lt;br /&gt;
&lt;br /&gt;
2:00 - 3:00: And I mean ''zero'': &amp;lt;tt&amp;gt;#define rcu_read_lock()&amp;lt;/tt&amp;gt; newline. So, the C preprocessor sees it, the compiler doesn't. Of course, &amp;quot;free&amp;quot; is a very good price, it gives you great performance scalability, real-time response. &lt;br /&gt;
&lt;br /&gt;
The other nice thing about it, is something called hazard pointers. A guy named Maged Michael worked on this. You can have RCU readers making progress, and at the same time RCU writers making progress. So you can have a reader reading an item, while an updater is updating that same data item, and have something sensible happen. This makes for some very nice non-lockup and non-blockage techniques and properties.&lt;br /&gt;
&lt;br /&gt;
The main place you want to use it is read-mostly data. I'll have a slide near the end that gives a &amp;quot;Go&amp;quot;, &amp;quot;Wait&amp;quot;, &amp;quot;Stop&amp;quot; kind of thing about where to use it. This is increasingly important. &lt;br /&gt;
&lt;br /&gt;
3:00 - 4:00: There was a time, when I was the average age in this room, where, if you have a machine, and you wanted to plug a disk in it, you had to change lines in the source code of the kernel. Then you could bring down your system and plug your disk, and make sure you boot the kernel that has the change because otherwise it will panic coming up with the extra disk. And even worse if you take one out. Well, our machines are a bit more civilized these days, I can slide a memory stick in this thing any time I want, and it will pop it up and say &amp;quot;Hey, here's your disk, what do you want to do with it.&amp;quot; What that means, is that a bunch of stuff that used to be stuck in the source code of the kernel is now data structures. Things like routing tables, security policies, storage configuration. These things almost never change. But they might change at any time. That's the sort of thing that RCU works really well for.&lt;br /&gt;
&lt;br /&gt;
4:00 - 5:00: I will have a couple of slides showing specific operations for it. One thing is - I said up there that the readers can make progress even while you're changing data items, so, clearly you have to be able to take the thing and insert new data while the reader is going through the thing and have it all work out correctly. We'll look at that. Even more exciting is when you want to remove some data while a reader is charging [?] through your list or your data structure, and have that work out right. We'll take a look at how that works. Given that the readers aren't telling us anything - remember that you can have zero code for the reader - we need a way for the writers to figure out whether the readers are there or not, so they can do things without upsetting readers. We'll have a slide on that as well.&lt;br /&gt;
&lt;br /&gt;
[slide 5 - Publication of And Subscription To New Data] This slide is talking about when you want to add new data to your data structure and present it to the readers. On this slide and the next slide, if you have something that's red, it means it's dangerous for updaters. Readers could be looking at it, new readers can show up at any time, we can't stop them, we don't even know they're there. So we have to be very careful for the things that are marked red.&lt;br /&gt;
&lt;br /&gt;
Yellow (not on this slide but it will be on the next slide) is dangerous. There can't be any new readers getting to that piece of data, but there might be old ones still there. &lt;br /&gt;
&lt;br /&gt;
5:00 - 6:00: And finally green is where the updater has full control over it, it can do what it wants.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6:00 - 7:00:&lt;br /&gt;
&lt;br /&gt;
7:00 - 8:00:&lt;br /&gt;
&lt;br /&gt;
8:00 - 9:00:&lt;br /&gt;
&lt;br /&gt;
9:00 - 10:00:&lt;br /&gt;
&lt;br /&gt;
10:00 - 11:00:&lt;br /&gt;
&lt;br /&gt;
11:00 - 12:00:&lt;br /&gt;
&lt;br /&gt;
12:00 - 13:00:&lt;br /&gt;
&lt;br /&gt;
13:00 - 14:00:&lt;br /&gt;
&lt;br /&gt;
14:00 - 15:00:&lt;br /&gt;
&lt;br /&gt;
15:00 - 16:00:&lt;br /&gt;
&lt;br /&gt;
16:00 - 17:00:&lt;br /&gt;
&lt;br /&gt;
17:00 - 18:00:&lt;br /&gt;
&lt;br /&gt;
18:00 - 19:00:&lt;br /&gt;
&lt;br /&gt;
19:00 - 20:00:&lt;br /&gt;
&lt;br /&gt;
20:00 - 21:00:&lt;br /&gt;
&lt;br /&gt;
21:00 - 22:00:&lt;br /&gt;
&lt;br /&gt;
22:00 - 23:00:&lt;br /&gt;
&lt;br /&gt;
23:00 - 24:00:&lt;br /&gt;
&lt;br /&gt;
24:00 - 25:00:&lt;br /&gt;
&lt;br /&gt;
25:00 - 26:00:&lt;br /&gt;
&lt;br /&gt;
26:00 - 27:00:&lt;br /&gt;
&lt;br /&gt;
27:00 - 28:00:&lt;br /&gt;
&lt;br /&gt;
28:00 - 29:00:&lt;br /&gt;
&lt;br /&gt;
29:00 - 30:00:&lt;br /&gt;
&lt;br /&gt;
30:00 - 31:00:&lt;br /&gt;
&lt;br /&gt;
31:00 - 32:00:&lt;br /&gt;
&lt;br /&gt;
32:00 - 33:00:&lt;br /&gt;
&lt;br /&gt;
33:00 - 34:00:&lt;br /&gt;
&lt;br /&gt;
34:00 - 35:00:&lt;br /&gt;
&lt;br /&gt;
35:00 - 36:00:&lt;br /&gt;
&lt;br /&gt;
36:00 - 37:00:&lt;br /&gt;
&lt;br /&gt;
37:00 - 38:00:&lt;br /&gt;
&lt;br /&gt;
38:00 - 39:00:&lt;br /&gt;
&lt;br /&gt;
39:00 - 40:00:&lt;br /&gt;
&lt;br /&gt;
40:00 - 41:00:&lt;br /&gt;
&lt;br /&gt;
41:00 - 42:00:&lt;br /&gt;
&lt;br /&gt;
42:00 - 43:00:&lt;br /&gt;
&lt;br /&gt;
43:00 - 44:00:&lt;br /&gt;
&lt;br /&gt;
44:00 - 45:00:&lt;br /&gt;
&lt;br /&gt;
45:00 - 46:00:&lt;br /&gt;
&lt;br /&gt;
46:00 - 47:00:&lt;br /&gt;
&lt;br /&gt;
47:00 - 48:00:&lt;br /&gt;
&lt;br /&gt;
48:00 - 49:00:&lt;br /&gt;
&lt;br /&gt;
49:00 - 50:00:&lt;br /&gt;
&lt;br /&gt;
50:00 - 51:00:&lt;br /&gt;
&lt;br /&gt;
51:00 - 52:00:&lt;br /&gt;
&lt;br /&gt;
52:00 - 53:00:&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Session:Making_RCU_Safe_For_Battery-Powered_Devices_ELC2012</id>
		<title>Session:Making RCU Safe For Battery-Powered Devices ELC2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Session:Making_RCU_Safe_For_Battery-Powered_Devices_ELC2012"/>
				<updated>2012-11-06T17:28:00Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Session Details ==&lt;br /&gt;
; Event : Embedded Linux Conference 2012&lt;br /&gt;
; Date : February 16, 2012&lt;br /&gt;
; Presenter :  Paul E. McKenney&lt;br /&gt;
; Organization: IBM&lt;br /&gt;
; Slides : http://elinux.org/images/0/06/Making_RCU_Safe_For_Battery-Powered_Devices.pdf&lt;br /&gt;
; Video : [http://free-electrons.com/pub/video/2012/elc/elc-2012-mckenney-rcu-safe-battery-powered-devices-450p.webm Free Electrons (450x800)] or [http://free-electrons.com/pub/video/2012/elc/elc-2012-mckenney-rcu-safe-battery-powered-devices.webm Free Electrons (Full HD)] or [http://video.linux.com/videos/making-rcu-safe-for-battery-powered-devices Linux Foundation]&lt;br /&gt;
; Duration : 52:29&lt;br /&gt;
&lt;br /&gt;
=== Abstract ===&lt;br /&gt;
&lt;br /&gt;
Back in the 1990s, energy efficiency was not even on the list of RCU-related concerns. Systems using RCU at that time dealt with either large quantities of heavy equipment or large financial flows, so that the energy consumption of the entire server (let alone RCU's contribution) was way down in the noise. This situation changed dramatically with the 2002 introduction of RCU into the Linux kernel. Since then, RCU's energy-efficiency code has been rewritten more than five times. The most recent rewrite was motivated by workloads where RCU was leaving tens of percent of potential energy savings on the table. This talk will give a brief overview of how energy efficiency came to RCU, the current situation, future prospects, and generally applicable lessons learned.&lt;br /&gt;
&lt;br /&gt;
=== Biography ===&lt;br /&gt;
&lt;br /&gt;
Paul E. McKenney is a Distinguished Engineer with the IBM Linux Technology Center, where he maintains the RCU implementation within the Linux kernel. He has been coding for almost four decades, and more than half of that on parallel hardware. His prior lives include working on the DYNIX/ptx kernel at Sequent, work on packet radio, Internet protocols, and system administration at SRI International, and work on soft-realtime systems as a self-employed contract programmer. His hobbies include what passes for running at his age along with the usual house-wife-and-kids habit.&lt;br /&gt;
&lt;br /&gt;
=== Notes ===&lt;br /&gt;
&lt;br /&gt;
== Transcript ==&lt;br /&gt;
; Transcribed by: Arnout Vandecappelle&lt;br /&gt;
; Verified by: 1 - &lt;br /&gt;
&lt;br /&gt;
0:00 - 1:00: [some pre-presentation chatting] &amp;gt;&amp;gt; PAUL MCKENNEY: [slide 1 - title] I'm going to go through a little obligatory what-is-RCU. At my age, you ''have'' to have at least some slide about &amp;quot;The Good Old Days&amp;quot;, as a log [?] or something, and something about that. We'll take a look at RCU's many energy-efficiency variants over the years, the current state of its energy-efficiency, and of course future directions.&lt;br /&gt;
&lt;br /&gt;
[slide 2 - What is RCU?] Now how many people here have actually written code that uses RCU? Good, we got some, great! Now how many people have ever viewed code that has calls to RCU in it?&lt;br /&gt;
&lt;br /&gt;
1:00 - 2:00: Okay, a few more, good. How many people have heard of RCU before today? All right, that's good. Not so long ago [?] I wouldn't have seen any hands for that last one either. [remark from the audience] Yes, there was a time when I could have said yes to the first one and no to the last one, but that was long ago. Anyway. OK, let's go through it quickly. This is just a taste of it. I'll just take a few minutes to go through it. I have a slide at the end of this section that has a list of places to go to get more information.&lt;br /&gt;
&lt;br /&gt;
2:00 - 3:00:&lt;br /&gt;
&lt;br /&gt;
3:00 - 4:00:&lt;br /&gt;
&lt;br /&gt;
4:00 - 5:00:&lt;br /&gt;
&lt;br /&gt;
5:00 - 6:00:&lt;br /&gt;
&lt;br /&gt;
6:00 - 7:00:&lt;br /&gt;
&lt;br /&gt;
7:00 - 8:00:&lt;br /&gt;
&lt;br /&gt;
8:00 - 9:00:&lt;br /&gt;
&lt;br /&gt;
9:00 - 10:00:&lt;br /&gt;
&lt;br /&gt;
10:00 - 11:00:&lt;br /&gt;
&lt;br /&gt;
11:00 - 12:00:&lt;br /&gt;
&lt;br /&gt;
12:00 - 13:00:&lt;br /&gt;
&lt;br /&gt;
13:00 - 14:00:&lt;br /&gt;
&lt;br /&gt;
14:00 - 15:00:&lt;br /&gt;
&lt;br /&gt;
15:00 - 16:00:&lt;br /&gt;
&lt;br /&gt;
16:00 - 17:00:&lt;br /&gt;
&lt;br /&gt;
17:00 - 18:00:&lt;br /&gt;
&lt;br /&gt;
18:00 - 19:00:&lt;br /&gt;
&lt;br /&gt;
19:00 - 20:00:&lt;br /&gt;
&lt;br /&gt;
20:00 - 21:00:&lt;br /&gt;
&lt;br /&gt;
21:00 - 22:00:&lt;br /&gt;
&lt;br /&gt;
22:00 - 23:00:&lt;br /&gt;
&lt;br /&gt;
23:00 - 24:00:&lt;br /&gt;
&lt;br /&gt;
24:00 - 25:00:&lt;br /&gt;
&lt;br /&gt;
25:00 - 26:00:&lt;br /&gt;
&lt;br /&gt;
26:00 - 27:00:&lt;br /&gt;
&lt;br /&gt;
27:00 - 28:00:&lt;br /&gt;
&lt;br /&gt;
28:00 - 29:00:&lt;br /&gt;
&lt;br /&gt;
29:00 - 30:00:&lt;br /&gt;
&lt;br /&gt;
30:00 - 31:00:&lt;br /&gt;
&lt;br /&gt;
31:00 - 32:00:&lt;br /&gt;
&lt;br /&gt;
32:00 - 33:00:&lt;br /&gt;
&lt;br /&gt;
33:00 - 34:00:&lt;br /&gt;
&lt;br /&gt;
34:00 - 35:00:&lt;br /&gt;
&lt;br /&gt;
35:00 - 36:00:&lt;br /&gt;
&lt;br /&gt;
36:00 - 37:00:&lt;br /&gt;
&lt;br /&gt;
37:00 - 38:00:&lt;br /&gt;
&lt;br /&gt;
38:00 - 39:00:&lt;br /&gt;
&lt;br /&gt;
39:00 - 40:00:&lt;br /&gt;
&lt;br /&gt;
40:00 - 41:00:&lt;br /&gt;
&lt;br /&gt;
41:00 - 42:00:&lt;br /&gt;
&lt;br /&gt;
42:00 - 43:00:&lt;br /&gt;
&lt;br /&gt;
43:00 - 44:00:&lt;br /&gt;
&lt;br /&gt;
44:00 - 45:00:&lt;br /&gt;
&lt;br /&gt;
45:00 - 46:00:&lt;br /&gt;
&lt;br /&gt;
46:00 - 47:00:&lt;br /&gt;
&lt;br /&gt;
47:00 - 48:00:&lt;br /&gt;
&lt;br /&gt;
48:00 - 49:00:&lt;br /&gt;
&lt;br /&gt;
49:00 - 50:00:&lt;br /&gt;
&lt;br /&gt;
50:00 - 51:00:&lt;br /&gt;
&lt;br /&gt;
51:00 - 52:00:&lt;br /&gt;
&lt;br /&gt;
52:00 - 53:00:&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Session:Making_RCU_Safe_For_Battery-Powered_Devices_ELC2012</id>
		<title>Session:Making RCU Safe For Battery-Powered Devices ELC2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Session:Making_RCU_Safe_For_Battery-Powered_Devices_ELC2012"/>
				<updated>2012-11-06T17:07:10Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: Created page with &amp;quot;== Session Details == ; Event : Embedded Linux Conference 2012 ; Date : February 16, 2012 ; Presenter :  Paul E. McKenney ; Organization: IBM ; Slides : http://elinux.org/imag...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Session Details ==&lt;br /&gt;
; Event : Embedded Linux Conference 2012&lt;br /&gt;
; Date : February 16, 2012&lt;br /&gt;
; Presenter :  Paul E. McKenney&lt;br /&gt;
; Organization: IBM&lt;br /&gt;
; Slides : http://elinux.org/images/0/06/Making_RCU_Safe_For_Battery-Powered_Devices.pdf&lt;br /&gt;
; Video : [http://free-electrons.com/pub/video/2012/elc/elc-2012-mckenney-rcu-safe-battery-powered-devices-450p.webm Free Electrons (450x800)] or [http://free-electrons.com/pub/video/2012/elc/elc-2012-mckenney-rcu-safe-battery-powered-devices.webm Free Electrons (Full HD)] or [http://video.linux.com/videos/making-rcu-safe-for-battery-powered-devices Linux Foundation]&lt;br /&gt;
; Duration : 52:29&lt;br /&gt;
&lt;br /&gt;
=== Abstract ===&lt;br /&gt;
 &lt;br /&gt;
=== Biography ===&lt;br /&gt;
&lt;br /&gt;
=== Notes ===&lt;br /&gt;
&lt;br /&gt;
== Transcript ==&lt;br /&gt;
; Transcribed by: &lt;br /&gt;
; Verified by: 1 - &lt;br /&gt;
&lt;br /&gt;
0:00 - 1:00:&lt;br /&gt;
&lt;br /&gt;
1:00 - 2:00:&lt;br /&gt;
&lt;br /&gt;
2:00 - 3:00:&lt;br /&gt;
&lt;br /&gt;
3:00 - 4:00:&lt;br /&gt;
&lt;br /&gt;
4:00 - 5:00:&lt;br /&gt;
&lt;br /&gt;
5:00 - 6:00:&lt;br /&gt;
&lt;br /&gt;
6:00 - 7:00:&lt;br /&gt;
&lt;br /&gt;
7:00 - 8:00:&lt;br /&gt;
&lt;br /&gt;
8:00 - 9:00:&lt;br /&gt;
&lt;br /&gt;
9:00 - 10:00:&lt;br /&gt;
&lt;br /&gt;
10:00 - 11:00:&lt;br /&gt;
&lt;br /&gt;
11:00 - 12:00:&lt;br /&gt;
&lt;br /&gt;
12:00 - 13:00:&lt;br /&gt;
&lt;br /&gt;
13:00 - 14:00:&lt;br /&gt;
&lt;br /&gt;
14:00 - 15:00:&lt;br /&gt;
&lt;br /&gt;
15:00 - 16:00:&lt;br /&gt;
&lt;br /&gt;
16:00 - 17:00:&lt;br /&gt;
&lt;br /&gt;
17:00 - 18:00:&lt;br /&gt;
&lt;br /&gt;
18:00 - 19:00:&lt;br /&gt;
&lt;br /&gt;
19:00 - 20:00:&lt;br /&gt;
&lt;br /&gt;
20:00 - 21:00:&lt;br /&gt;
&lt;br /&gt;
21:00 - 22:00:&lt;br /&gt;
&lt;br /&gt;
22:00 - 23:00:&lt;br /&gt;
&lt;br /&gt;
23:00 - 24:00:&lt;br /&gt;
&lt;br /&gt;
24:00 - 25:00:&lt;br /&gt;
&lt;br /&gt;
25:00 - 26:00:&lt;br /&gt;
&lt;br /&gt;
26:00 - 27:00:&lt;br /&gt;
&lt;br /&gt;
27:00 - 28:00:&lt;br /&gt;
&lt;br /&gt;
28:00 - 29:00:&lt;br /&gt;
&lt;br /&gt;
29:00 - 30:00:&lt;br /&gt;
&lt;br /&gt;
30:00 - 31:00:&lt;br /&gt;
&lt;br /&gt;
31:00 - 32:00:&lt;br /&gt;
&lt;br /&gt;
32:00 - 33:00:&lt;br /&gt;
&lt;br /&gt;
33:00 - 34:00:&lt;br /&gt;
&lt;br /&gt;
34:00 - 35:00:&lt;br /&gt;
&lt;br /&gt;
35:00 - 36:00:&lt;br /&gt;
&lt;br /&gt;
36:00 - 37:00:&lt;br /&gt;
&lt;br /&gt;
37:00 - 38:00:&lt;br /&gt;
&lt;br /&gt;
38:00 - 39:00:&lt;br /&gt;
&lt;br /&gt;
39:00 - 40:00:&lt;br /&gt;
&lt;br /&gt;
40:00 - 41:00:&lt;br /&gt;
&lt;br /&gt;
41:00 - 42:00:&lt;br /&gt;
&lt;br /&gt;
42:00 - 43:00:&lt;br /&gt;
&lt;br /&gt;
43:00 - 44:00:&lt;br /&gt;
&lt;br /&gt;
44:00 - 45:00:&lt;br /&gt;
&lt;br /&gt;
45:00 - 46:00:&lt;br /&gt;
&lt;br /&gt;
46:00 - 47:00:&lt;br /&gt;
&lt;br /&gt;
47:00 - 48:00:&lt;br /&gt;
&lt;br /&gt;
48:00 - 49:00:&lt;br /&gt;
&lt;br /&gt;
49:00 - 50:00:&lt;br /&gt;
&lt;br /&gt;
50:00 - 51:00:&lt;br /&gt;
&lt;br /&gt;
51:00 - 52:00:&lt;br /&gt;
&lt;br /&gt;
52:00 - 53:00:&lt;br /&gt;
&lt;br /&gt;
53:00 - 54:00:&lt;br /&gt;
&lt;br /&gt;
54:00 - 55:00:&lt;br /&gt;
&lt;br /&gt;
55:00 - 56:00:&lt;br /&gt;
&lt;br /&gt;
56:00 - 57:00:&lt;br /&gt;
&lt;br /&gt;
57:00 - 58:00:&lt;br /&gt;
&lt;br /&gt;
58:00 - 59:00:&lt;br /&gt;
&lt;br /&gt;
59:00 - 60:00:&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/ELC_2012_Presentations</id>
		<title>ELC 2012 Presentations</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/ELC_2012_Presentations"/>
				<updated>2012-11-06T16:59:41Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: /* Presenters */  Link to session page for Paul McKenney&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Presenters, Demo-ers, Participants:&lt;br /&gt;
Thanks very much for your participation in Linux Foundation's [https://events.linuxfoundation.org/events/embedded-linux-conference Embedded Linux Conference 2012].&lt;br /&gt;
&lt;br /&gt;
This page is for collecting the presentations that were made at the conference. During and&lt;br /&gt;
after the conference we will collect materials from the presenters and place them here.&lt;br /&gt;
Please watch this page if you are interested in a particular presentation - and if it&lt;br /&gt;
doesn't show up, please [[Special:EmailUser/Wmat | send me and email]] and we'll try to track it down.&lt;br /&gt;
&lt;br /&gt;
== Videos ==&lt;br /&gt;
&lt;br /&gt;
Videos for ELC2012 from the Linux Foundation can be found at [http://video.linux.com/categories/2012-embedded-linux-conference ELC2012 Videos].&lt;br /&gt;
&lt;br /&gt;
In addition, Free Electrons has also provided video of Andoid builders Summit talks, and ELC talks:&lt;br /&gt;
&lt;br /&gt;
[http://free-electrons.com/blog/abs-2012-videos/ Android Builders Summit]&amp;lt;br/&amp;gt;&lt;br /&gt;
[http://free-electrons.com/blog/elc-2012-videos/ ELC]&lt;br /&gt;
&lt;br /&gt;
== Instructions ==&lt;br /&gt;
'''Presenters:''' Please post your technical conference presentations on this page.&lt;br /&gt;
(See Instructions below the tables)&lt;br /&gt;
&lt;br /&gt;
= Table of Presentations =&lt;br /&gt;
&lt;br /&gt;
NOTE:  If you add a wikilink to your presentation and attempt to upload it via the link, it may fail.  If it does, use the [[Special:Upload]] page to upload your file.&lt;br /&gt;
&lt;br /&gt;
== Keynotes ==&lt;br /&gt;
{|  border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;4&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;#c0e0e0&amp;quot;&lt;br /&gt;
|+ '''Keynotes'''&lt;br /&gt;
|- bgcolor=&amp;quot;#c0e0e0&amp;quot;&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | '''Presenter(s)'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | '''Session Description'''                                  &lt;br /&gt;
| align=&amp;quot;center&amp;quot; | '''Presentation'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | '''Transcript Status'''&lt;br /&gt;
|-&lt;br /&gt;
| Jon Corbett, Editor at LWN.net&lt;br /&gt;
| The Kernel Report&lt;br /&gt;
| [[Media:lf_elc12_corbet.pdf | The Kernel Report ELC2012]]&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| Mike Anderson, CTO at The PTR Group&lt;br /&gt;
| [[Session:The Internet of Things|The Internet of Things]]&lt;br /&gt;
| [[Media:anderson.pdf | The Internet of Things]]&lt;br /&gt;
| in progress&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Presenters ==&lt;br /&gt;
{|  border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;4&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;#c0e0e0&amp;quot;&lt;br /&gt;
|+ '''Presentations'''&lt;br /&gt;
|- bgcolor=&amp;quot;#c0e0e0&amp;quot;&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | '''Presenter(s)'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | '''Session Description'''                                  &lt;br /&gt;
| align=&amp;quot;center&amp;quot; | '''Presentation'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | '''Transcript Status'''&lt;br /&gt;
|-&lt;br /&gt;
|- bgcolor=&amp;quot;#a0c0c0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; | Day 1, 9:30am&lt;br /&gt;
|-&lt;br /&gt;
| Loïc Pallardy&lt;br /&gt;
| Saving the Power Consumption of the Unused Memory&lt;br /&gt;
| [[Media:lf_elc12_pallardy.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Bernhard Rosenkränzer, Linaro&lt;br /&gt;
| What Android and Embedded Linux Can Learn From Each Other&lt;br /&gt;
| [[Media:lf_elc12_rosenkranzer.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Ricardo Salveti de Araujo, Linaro&lt;br /&gt;
| Ubuntu on ARM: Improvements and Optimizations Done By Linaro&lt;br /&gt;
| [[Media:Ubuntu_on_ARM-_Improvements_and_Optimizations_Done_By_Linaro.pdf|PDF]]&lt;br /&gt;
|- bgcolor=&amp;quot;#a0c0c0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | Day 1, 11:30am&lt;br /&gt;
|-&lt;br /&gt;
| Zach Pfeffer, Linaro&lt;br /&gt;
| Binary Blobs Attack&lt;br /&gt;
| [[Media:lf_elc12_pfeffer.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Hisao Munakata, Renesas Electronics&lt;br /&gt;
| Close Encounters of the Upstream Resource&lt;br /&gt;
| [[Media:lf_elc12_munakata.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Daniel Hursh, IBM&lt;br /&gt;
| Open Source Automated Test Framework&lt;br /&gt;
| [[Media:lf_elc12_hursh.pdf|PDF]]&lt;br /&gt;
|- bgcolor=&amp;quot;#a0c0c0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | Day 1, 2:00pm&lt;br /&gt;
|-&lt;br /&gt;
| Saul Wold, Intel&lt;br /&gt;
| The Yocto Project Overview and Update&lt;br /&gt;
| [[Media:The Yocto Project Overview and Update.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Sean Hudson, Mentor Graphics, Inc.&lt;br /&gt;
| Embedded Linux Pitfalls&lt;br /&gt;
| [[Media:Embedded Linux Pitfalls.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Vincent Guittot, Linaro&lt;br /&gt;
| Comparing Power Saving Techniques For Multicore ARM Platforms&lt;br /&gt;
| [[Media:Comparing Power Saving Techniques For Multicore ARM Platforms.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
|- bgcolor=&amp;quot;#a0c0c0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | Day 1, 3:00pm&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Tim Bird, Sony Network Entertainment&lt;br /&gt;
| Status of Embedded Linux&lt;br /&gt;
| [[Media:Status-of-embedded-Linux-2012-02-ELC-v2.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Bruce Ashfield, Wind River&lt;br /&gt;
| A View From the Trenches: Embedded Functionality and How It Impacts Multi-Arch Kernel Maintenance&lt;br /&gt;
| [[Media:A_View_From_the_Trenches-_Embedded_Functionality_and_How_It_Impacts_Multi-Arch_Kernel_Maintenance.pdf‎|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| R Durgadoss, Intel&lt;br /&gt;
| PeakCurrent Management in x86-Based Smartphones&lt;br /&gt;
| [[Media:PeakCurrent Management in x86-Based Smartphones.pdf|PDF]]&lt;br /&gt;
|- bgcolor=&amp;quot;#a0c0c0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | Day 1, 4:15pm&lt;br /&gt;
|-&lt;br /&gt;
| Matt Porter, Texas Instruments&lt;br /&gt;
| Passing Time With SPI Framebuffer Driver&lt;br /&gt;
| [[Media:Passing Time With SPI Framebuffer Driver.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Wookey, Linaro&lt;br /&gt;
| Multiarch and Why You Should Care: Running, Installing and Crossbuilding With Multiple Architectures&lt;br /&gt;
| [[Media:Multiarch_and_Why_You_Should_Care-_Running,_Installing_and_Crossbuilding_With_Multiple_Architectures.pdf|PDF]]  [[Media:SourceCode.tgz|SOURCE]]&lt;br /&gt;
|-&lt;br /&gt;
| Amit Daniel Kachhap, Linaro/Samsung&lt;br /&gt;
| A New Simplified Thermal Framework For ARM Platforms&lt;br /&gt;
| [[Media:A New Simplified Thermal Framework For ARM Platforms.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
|- bgcolor=&amp;quot;#a0c0c0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | Day 1, 5:15pm&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Tsugikazu Shibata, NEC&lt;br /&gt;
| On The Road: To Provide the Long-Term Stable Linux For The Industry&lt;br /&gt;
| [[media:On_The_Road-_To_Provide_the_Long-Term_Stable_Linux_For_The_Industry.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Thomas P. Abraham, Samsung Electronics&lt;br /&gt;
| Experiences With Device Tree Support Development For ARM-Based SOC's&lt;br /&gt;
| [[Media:Experiences With Device Tree Support Development For ARM-Based SOC's.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Paul E. McKenney, IBM&lt;br /&gt;
| [[Session:Making RCU Safe For Battery-Powered Devices ELC2012|Making RCU Safe For Battery-Powered Devices]]&lt;br /&gt;
| [[media:Making RCU Safe For Battery-Powered Devices.pdf|PDF]]&lt;br /&gt;
| in progress&lt;br /&gt;
|- bgcolor=&amp;quot;#a0c0c0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | Day 2, 10:30am&lt;br /&gt;
|-&lt;br /&gt;
| Thomas Petazzoni, Free Electrons&lt;br /&gt;
| Buildroot: A Nice, Simple, and Efficient Embedded Linux Build System&lt;br /&gt;
| [[Media:Buildroot2.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Steven Rostedt, Red Hat&lt;br /&gt;
|  Automated Testing with ktest.pl (Embedded Edition)&lt;br /&gt;
| [[Media: Automated Testing with ktest.pl (Embedded Edition).pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| David VomLehn, Cisco&lt;br /&gt;
| Intricacies of a MIPS Stack Backtrace Implementation&lt;br /&gt;
| [[Media:Intricacies of a MIPS Stack Backtrace Implementation.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
|- bgcolor=&amp;quot;#a0c0c0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | Day 2, 11:30am&lt;br /&gt;
|-&lt;br /&gt;
| Edward Hervey, Collabora&lt;br /&gt;
| GStreamer 1.0: No Longer Compromise Flexibility For Performance&lt;br /&gt;
| [[Media:GStreamer_1.0-_No_Longer_Compromise_Flexibility_For_Performance.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Steven Rostedt, Red Hat&lt;br /&gt;
|  Automated Testing with ktest.pl (Embedded Edition) (Cont.)&lt;br /&gt;
| [[Media: Automated Testing with ktest.pl (Embedded Edition).pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Tim Bird, Sony Network Entertainment&lt;br /&gt;
| Embedded-Appropriate Crash Handling in Linux&lt;br /&gt;
| [[Media:Embedded-Appropriate Crash Handling in Linux.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
|- bgcolor=&amp;quot;#a0c0c0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | Day 2, 2:00pm&lt;br /&gt;
|-&lt;br /&gt;
| Arnd Bergmann, Linaro&lt;br /&gt;
| ARM Subarchitecture Status&lt;br /&gt;
| [[Media:ARM Subarchitecture Status.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Mark Gisi, Wind River Systems&lt;br /&gt;
| The Power of SPDX - Sharing Critical Licensing Information Within a Linux Device Supply Chain&lt;br /&gt;
| [[Media:The Power of SPDX - Sharing Critical Licensing Information Within a Linux Device Supply Chain.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Yoshitake Kobayashi, Toshiba&lt;br /&gt;
| Ineffective and Effective Ways To Find Out Latency Bottlenecks With Ftrace&lt;br /&gt;
| [[Media:Ineffective and Effective Ways To Find Out Latency Bottlenecks With Ftrace.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
|- bgcolor=&amp;quot;#a0c0c0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | Day 2, 3:00pm&lt;br /&gt;
|-&lt;br /&gt;
| Ohad Ben-Cohen, Wizery / Texas Instruments&lt;br /&gt;
| Using virtio to Talk With Remote Processors&lt;br /&gt;
| [[Media:Using virtio to Talk With Remote Processors.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Elizabeth Flanagan, Intel&lt;br /&gt;
| Embedded License Compliance Patterns and Antipatterns&lt;br /&gt;
| [[Media:Embedded License Compliance Patterns and Antipatterns.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| David Anders, Texas Instruments&lt;br /&gt;
| Board Bringup: LCD and Display Interfaces&lt;br /&gt;
| [[elc-lcd|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
|- bgcolor=&amp;quot;#a0c0c0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | Day 2, 4:15pm&lt;br /&gt;
|-&lt;br /&gt;
| Rob Clark, Texas Instruments&lt;br /&gt;
| DMA Buffer Sharing: An Introduction&lt;br /&gt;
| [[Media:DMA_Buffer_Sharing-_An_Introduction.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Ken Tough, Intrinsyc&lt;br /&gt;
| Linux on eMMC: Optimizing For Performance&lt;br /&gt;
| [[Media:Linux_on_eMMC-_Optimizing_For_Performance.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Paul Larson, Linaro&lt;br /&gt;
| LAVA Project Update&lt;br /&gt;
| [[Media:LAVA Project Update.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
|- bgcolor=&amp;quot;#a0c0c0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | Day 2, 5:15pm&lt;br /&gt;
|-&lt;br /&gt;
| Jeff Osier-Mixon, Intel&lt;br /&gt;
| Yocto Project Community (BoFs)&lt;br /&gt;
| No Slides&lt;br /&gt;
|-&lt;br /&gt;
| Frank Rowand, Sony Network Entertainment&lt;br /&gt;
| Real Time (BoFs)&lt;br /&gt;
| [[Media:Real Time (BoFs).pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Mike Turquette, Texas Instruments&lt;br /&gt;
| Common Clock Framework (BoFs)&lt;br /&gt;
| [[Media:Common Clock Framework (BoFs).pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
|- bgcolor=&amp;quot;#a0c0c0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | Day 3, 9:00am&lt;br /&gt;
|-&lt;br /&gt;
| Hunyue Yau, HY Research LLC&lt;br /&gt;
| Userland Tools and Techniques For Linux Board Bring-Up and Systems Integration&lt;br /&gt;
| [[Media:Userland Tools and Techniques For Linux Board Bring-Up and Systems Integration.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Matt Weber, Rockwell Collins Inc.&lt;br /&gt;
| Optimizing the Embedded Platform Using OpenCV&lt;br /&gt;
| [[Media:Optimizing the Embedded Platform Using OpenCV.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Greg Ungerer, McAfee&lt;br /&gt;
| M68K: Life in the Old Architecture&lt;br /&gt;
| [[Media:M68K-_Life_in_the_Old_Architecture.pdf|PDF]]&lt;br /&gt;
|- bgcolor=&amp;quot;#a0c0c0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | Day 3, 10:00am&lt;br /&gt;
|-&lt;br /&gt;
| Gary Bisson, Adeneo Embedded&lt;br /&gt;
| Useful USB Gadgets on Linux&lt;br /&gt;
| [[Media:Useful USB Gadgets on Linux.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Jason Kridner, Texas Instruments&lt;br /&gt;
| GUIs: Coming To Uncommon Goods Near You&lt;br /&gt;
| [[Media:Guis_coming_to_uncommon_goods.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Mike Anderson, The PTR Group&lt;br /&gt;
| Adapting Your Network Code For IPv6 Support&lt;br /&gt;
| [[Media:Adapting Your Network Code For IPv6 Support.pdf|PDF]]&lt;br /&gt;
|- bgcolor=&amp;quot;#a0c0c0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | Day 3,11:30pm&lt;br /&gt;
|-&lt;br /&gt;
| Koen Kooi, The Angstrom Distribution&lt;br /&gt;
| Producing the Beaglebone and Supporting It&lt;br /&gt;
| No Paper - see video&lt;br /&gt;
|-&lt;br /&gt;
| Danny Bennett, basysKom GmbH&lt;br /&gt;
| HTML5 in a Plasma-Active World&lt;br /&gt;
| [[Media:HTML5 in a Plasma-Active World.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Marcin Mielczarczyk, Tieto&lt;br /&gt;
| Getting the First Open Source GSM Stack in Linux&lt;br /&gt;
| [[Media:Getting the First Open Source GSM Stack in Linux.pdf|PDF]]&lt;br /&gt;
|- bgcolor=&amp;quot;#a0c0c0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; | Day 3, 2:00pm&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Pierre Tardy, Intel&lt;br /&gt;
| PyTimechart Practical&lt;br /&gt;
|[[Media:PyTimechart Practical.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Linus Walleij, ST-Ericsson&lt;br /&gt;
| Pin Control Subsystem Overview&lt;br /&gt;
| [[Media:Pin Control Subsystem Overview.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Khem Raj, OpenEmbedded Project&lt;br /&gt;
| OpenEmbedded - A Layered Approach&lt;br /&gt;
| [[Media:OpenEmbedded - A Layered Approach.pdf|PDF]]&lt;br /&gt;
|- bgcolor=&amp;quot;#a0c0c0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | Day 3, 3:00pm&lt;br /&gt;
|-&lt;br /&gt;
| Lucas De Marchi, ProFUSION Embedded Systems&lt;br /&gt;
| Managing Kernel Modules With kmod&lt;br /&gt;
| [[Media:Managing Kernel Modules With kmod.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Jean Pihet, NewOldBits&lt;br /&gt;
| A New Model for the System and Devices Latency&lt;br /&gt;
| [[Media:A New Model for the System and Devices Latency.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
| Pintu Kumar, Samsung&lt;br /&gt;
| Controlling Linux Memory Fragmentation and Higher Order Allocation Failure: Analysis, Observations and Results&lt;br /&gt;
| [[Media:Controlling_Linux_Memory_Fragmentation_and_Higher_Order_Allocation_Failure-_Analysis,_Observations_and_Results.pdf|PDF]]&lt;br /&gt;
| in-progress&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Workshops ==&lt;br /&gt;
{|  border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;4&amp;quot;&lt;br /&gt;
|- bgcolor=&amp;quot;#c0e0e0&amp;quot;&lt;br /&gt;
|+ '''Workshops'''&lt;br /&gt;
|- bgcolor=&amp;quot;#c0e0e0&amp;quot;&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | '''Presenter(s)'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | '''Session Description'''                                  &lt;br /&gt;
| align=&amp;quot;center&amp;quot; | '''Presentation'''&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Karim J. Yaghmour&lt;br /&gt;
| Embedded Android Workshop&lt;br /&gt;
| [[Media:Android Workshop.pdf|PDF]]&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Instructions for Presenters ==&lt;br /&gt;
Please create a link in the table for your presentation, copying the style of other links.&lt;br /&gt;
(You may need to create an account in order to edit the wiki or upload files.)&lt;br /&gt;
&lt;br /&gt;
When you have created the link, click on it to upload the file containing your slides.&lt;br /&gt;
[[Category:ELC]]&lt;br /&gt;
[[Category:2012]]&lt;br /&gt;
[[Category:Events]]&lt;br /&gt;
[[Category:Presentations]]&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysELCE2012</id>
		<title>Buildroot:DeveloperDaysELCE2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysELCE2012"/>
				<updated>2012-11-04T19:26:30Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: /* Report of the meeting */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 3-4 November 2012, Barcelona Spain ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Meeting in Barcelona ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Saturday November 3rd and Sunday November 4th, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right before the Embedded Linux Conference Europe, in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
=== Event sponsored by Fluendo and Synopsys ===&lt;br /&gt;
&lt;br /&gt;
The meeting room is sponsored  by [http://www.fluendo.com Fluendo]. Thanks!&lt;br /&gt;
&lt;br /&gt;
The Saturday dinner is sponsored by [http://www.synopsys.com Synopsys]. Thanks!&lt;br /&gt;
&lt;br /&gt;
=== Report of the meeting ===&lt;br /&gt;
&lt;br /&gt;
==== Action points ====&lt;br /&gt;
* Accept perl series.&lt;br /&gt;
* Accept qemu series (after further review).&lt;br /&gt;
* Remove compiler on target.&lt;br /&gt;
* Remove development files on target.&lt;br /&gt;
* Remove documentation on target.&lt;br /&gt;
* Explain in the documentation why the above was done.&lt;br /&gt;
* Put httpd daemons outside BUSYBOX_SHOW_OTHERS.&lt;br /&gt;
* Move BUSYBOX_SHOW_OTHERS conditions to ''depends on'' inside the package Config.in&lt;br /&gt;
* busybox: disable mount-nfs in the default config.&lt;br /&gt;
* simplify patch logic: if pkg-version directory exists, use that; otherwise, use pkg-*.patch.&lt;br /&gt;
* Automate selection of correct FP and other compiler options based on subarchitecture.&lt;br /&gt;
* Move download helpers to a script.&lt;br /&gt;
* Samuel merges documentation patches and sends pull requests to Peter.&lt;br /&gt;
* Ask Yann for help regarding the comments in the AVAILABLE framework.&lt;br /&gt;
* Document better that you need to do make clean; make instead of make target-clean.&lt;br /&gt;
* Rename output/target to output/tmproot.&lt;br /&gt;
* Arnout reposts the save-configuration simplification patches without out-of-buildroot-tree support.&lt;br /&gt;
&lt;br /&gt;
==== Details of the discussion ====&lt;br /&gt;
&lt;br /&gt;
# Perl.  The perl patch series (now at v11) looks ready to be integrated, but we have our doubts about cpanminus. The problems are: it has separate download infrastructure, which blocks some buildroot features (e.g. make source); it doesn't integrate with the legal-info.  However, CPAN is pretty important if you really want to use perl.  The decision was to accept cpanminus as well, but add some warnings that some things don't work.&lt;br /&gt;
# Qemu.  Adding this opens the door for more people to do stuff that buildroot wasn't meant for in the first place (i.e. embedded).  However, even in embedded qemu could be relevant.  Things like the compiler on the target are much worse for doing crazy things.  Giving new packages a chance is OK; we have to be much more careful with things that have global impact (like including development files on target).  Conclusion: it's OK to accept qemu.&lt;br /&gt;
# Compiler on target.  It leads to newbies using buildroot in an inappropriate way (i.e. compile on the target).  Also it only works with the internal toolchain.  And if we remove it, we can also remove &amp;quot;Development files on target&amp;quot;, which simplifies some of the build infrastructure.  Also, if you have a compiler on the target, then you can just as well use a distro.  Conclusion: we remove it.  Also a bunch of other packages can be removed (autotools, vala, ...)&lt;br /&gt;
# Documentation on target: if you need this, use a distro.  So we remove it.&lt;br /&gt;
# We need to explain in the documentation why we removed this stuff.&lt;br /&gt;
# Available stuff: i.e. solve the problem of combination of ''select'' and ''depends''. Solving it in Kconfig itself seems to be difficult: there were some patches but the kconfig people didn't like it; Yann and Thomas looked at Kconfig and it looks difficult to modify.  The AVAILABLE solution has two problems: it adds verbosity, and the recursive dependencies still should be written in the comments (&amp;quot;libfoo requires WCHAR in the toolchain&amp;quot;).  The verbosity is not considered a big issue.  For the comments: they currently don't work perfectly either.  Removing the comments altogether is an option, but then it is difficult for users to find out why a certain package isn't available.  Another possibility is to list the available packages in the documentation (automatically), and mention which toolchain dependencies they have.  Wild idea: consider Config.in as a low-level language, and define our own higher-level language from which we generate Config.in.  Alternatively, have a developer tool that verifies if everything is consistent (i.e. are the comments correct).  One more option: add a big comment in the beginning of the packages list, which says that not all toolchain options are available so not all packages are visible.  Converting the toolchain options from ''depends'' to ''select'' is not really an option, because changing toolchain options requires a make clean.&amp;lt;br/&amp;gt;After more discussion on Sunday, we didn't find a solution. For the time being, we stick to the old system. We ask Yann if he has a brilliant idea of how to deal with the comments.&lt;br /&gt;
# kconfig-frontend: Yann now has a repository for Kconfig, it would be nice to branch our Kconfig from that.  The idea is to still copy it to our repository.&lt;br /&gt;
# BUSYBOX_SHOW_OTHERS: the only reason to have this is to avoid newcomers enabling things like tar etc. which are anyway already in busybox.  But for the web servers, they are clearly different from the busybox web servers (and our default busybox config doesn't even enable a web server).  Also bash is a typical one, because people write bashisms in their scripts.  This discussion is somewhat related to the discussion how to handle packages that provide the same functionality.  But for many packages, it's not even the same (httpd, bash, vim).  But actually, we're trying to solve a non-existent problem here - except for the web servers.  If we generate a list of packages in the documentation, we can add a remark to that that it's also available in busybox.  Also move the condition inside the package Config.in instead of outside and make it a ''depends on'', so it is more visible.&lt;br /&gt;
# packages with multiple variants: python2/3, Qt4/5, gtk2/3, gstreamer0.10/1.0...  This is again similar to the expat/libxml2 issue.  Do we support both python2 and python3? We need to support both versions in most cases. Question is if we want to force that only one of the two is selected, or do we support side-by-side installation.  Conclusion: has to be looked at on a case-by-case basis.  General philosophy: don't try to be too smart, so don't try to force selecting only one of the two if it doesn't make sense to have both.  In cases where a package wants to ''select'' one of these things, convert the ''select'' into a ''depends'' with a comment.  For gstreamer, the complexity of having the two side-by-side is unacceptable, because there are so many fine-grained gstreamer configure options (in the plugins).  However, we expect that everything will move to gstreamer1.0 quite quickly, so for the time being (and only if someone needs it), we can live with a non-perfect solution that just fits the requirements of whoever needs gstreamer1.0.&lt;br /&gt;
# multiple packages providing the same functionality: lua/luajit, jpeg/jpegturbo, expat/libxml2.  These cannot be installed side-by-side, and many packages select e.g. jpeg.  OpenGL will have this issue as well.  A relatively clean solution is to create virtual packages for these, where the user has a choice between the two.  The normal config option would be hidden for these packages.  This still adds complexity in some corner cases, e.g. some package that doesn't work in luajit, but that can probably be solved at the level of that package.&lt;br /&gt;
# Autobuild infrastructure. Thomas is working on scripts that parse the build result and put it in a database.  One important missing feature at the moment is visibility of evolution over time (i.e. distinguish regressions from recurring problems).  Even more important is just being able to see which packages are failing all the time, i.e. for each package how often it failed.  Ideally, we would also want to see how often a package has been built successfully, but when is it successful? Does the entire build have to succeed or that package?  Overall, however, the autobuild infrastructure is considered very useful - when something is wrong, it appears in the autobuild very quickly.&lt;br /&gt;
#* autobuild of the next branch: if only the master is autobuilt, we don't see a lot of problems until after the release. Delaying fixing bugs makes it more difficult to fix them. To support autobuild of the next branch, this should also be made visible in the database so we can distinguish master failures (more important) from next failures.&lt;br /&gt;
#* autobuild database is not suitable to track repeated builds of the same configuration.  It needs to keep track of different builds of the same configurations.  But the question is if this is really useful. We would like to check the existing defconfigs at every release, but it doesn't have to be tracked.  So it can be done manually.&lt;br /&gt;
# AVR32. It is end of life as far as Atmel is concerned, but of course there are still products out there using it.  It is not really blocking for buildroot.  For packages which fail to build, we can just add a ''depends on !BR2_avr32''.  But of course, until we have the AVAILABLE mechanism, carrying this kind of dependency can be painful.&lt;br /&gt;
# RPC support. Originally, the idea was to consider RPC support as a toolchain option, i.e. using ''depends''.  However, libtirpc is really a library, comparable to gettext, so it could be enabled automatically with ''select''.  Busybox is special, because we don't want to force RPC just because busybox is selected.  Therefore busybox has a user-selectable option to enable RPC-based applets (mount-nfs).  After discussion, this option was discarded - just remove mount-nfs from busybox (see below).  Other packages will use libtirpc if it was selected (manually or automatically). It's still a question what will happen when dynamically linking against libtirpc when libc also has rpc.&lt;br /&gt;
# A bit related: we'll disable mount-nfs in the default busybox config; if user disables RPC and enables mount-nfs in busybox, he'll get a compilation error.&lt;br /&gt;
# Support for VCS branches in packages: custom packages are often in a VCS and while developing, you want to track a branch of that VCS.  OVERRIDE_SRCDIR doesn't work very well because it means the user has to check everything out at the right version in the right location.  An alternative would be to teach OVERRIDE_SRCDIR about VCSes, so that ''make foo-rebuild'' re-syncs with the VCS.&lt;br /&gt;
# There is a general feeling (mainly from Thomas) that buildroot isn't very convenient during development of a project where several people are working on several components. But no solution was found.&lt;br /&gt;
# FP stuff: we now have a single SOFT_FLOAT option, but actually there's a lot more variation: neon, vfpv3, softfp, ....  To support this well, we can add a lot of extra config options to semi-automatically select the correct float options based on the subarchitecture.  There is some cross-dependency with the external toolchains, but it's doable.  There should still be an option to manually override the float options for exotic cases.  ARM thumb adds another layer of complexity.  Someone should take the lead on making this easier.&lt;br /&gt;
# Porting gcc to the generic package infrastructure.  Looks like this is a lot of work, and there's not so much need for it.&lt;br /&gt;
# Getting gcc from git.  It's more convenient to put a tarball somewhere public and use that as an alternative source, similar to avr32.&lt;br /&gt;
# Download helpers are getting too complex.  It should move a script so at least it's more readable.&lt;br /&gt;
# Community organization:&lt;br /&gt;
#* It can be useful to have subsystem maintainers, that are responsible for reviewing and accepting patches.  In practice, however, it is difficult to split things in a way that we don't risk duplicating work (i.e. two people in the process of merging the same patch).  However, one clearly defined subsystem is the documentation.  From now on, Samuel Martin is responsible for all documentation patches.  He'll send pull requests to Peter.&lt;br /&gt;
#* Patches should be accepted more aggressively, even if there hasn't been (much) testing of the patch.  The autobuilders will catch any issues.  However, it is still important to properly review and comment on coding style issues (i.e. how the features are implemented.  Also, if something really breaks the autobuilder, Thomas can revert it without consulting Peter.&lt;br /&gt;
# Out of tree build: this is a feature that people keep on asking. It is particularly useful for packages with an OVERRIDE_SRCDIR.  But of course, not all packages support out-of-tree build, and not all packages support it in the same way.  For autotools and cmake, it can be automatic; for generic packages, it has to be signalled if out-of-tree build is available.&lt;br /&gt;
# legal-info:&lt;br /&gt;
#* split _LICENSE and _REDISTRIBUTE: patch proposed by Luca is accepted. Even though there is no proprietary package in buildroot that triggers the feature, if it fails to work as expected the user will hopefully report it.&lt;br /&gt;
#* multiple licenses: we don't want to make things very complex.  It doesn't have to be machine-readable (we don't need to support machine analysis of the license field), so we don't have to formally decide how the license text must be written.  It does make sense to have some convention, though.  Proposal: &amp;quot;GPLv2+ or BSD-2c for the library, GPLv2+ for the dtc executable&amp;quot;.&lt;br /&gt;
# target-clean: purpose is to rebuild the target tree, without rebuilding all packages. The problem is that this looks as if packages are really removed, but there may still be dependencies hidden in the built packages so that the resulting target doesn't work anymore.  One idea is to just not have a target dir anymore, but instead reconstruct it from the staging dir every time the fs is built.  But this is too much overhead in the usual case.  Basically, we prefer to have people do a full make clean if they change anything.  We should update the documentation to explain that this is necessary.  There was an idea to remove the entire target tree, and just regenerate it on every build.  This would simplify the .mk files because for most packages there's no need for INSTALL_TARGET_CMDS anymore (some packages still want to remove stuff), and implicitly does a target-clean (because there is no target dir to begin with), but only for the use case of skeleton changes.  In the end, the conclusion was that we don't want to support target-clean, but we'll document why not.&lt;br /&gt;
# Regarding out-of-buildroot-tree project stuff: we don't really want to advertise keeping stuff outside of the buildroot tree.  Any patches that make that easier will be rejected. But it would be nice to store the result of xxx-menuconfig back to the place where it came from, or warn if that place doesn't exist.&lt;br /&gt;
# API changes: we tend to change the way the packages are used very often, without caring about how this affects users who have a modified buildroot tree. Merge conflicts are not much of an issue, but &amp;quot;invisible&amp;quot; changes can really bite users that don't follow the mailing list.  We should think a bit about how it affects user before randomly renaming &amp;quot;BR2_NEEDS_GETTEXT&amp;quot; to &amp;quot;BR2_NEEDS_EXTERNAL_GETTEXT&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed.  Arriving on Fri Nov 2 20:35 at BCN airport.  Leaving Wed Nov. 8 21:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on November, 3rd at BCN airport 9:25 AM. Leaving on November 8th from BCN airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# Maxime Ripard, confirmed. Arriving on November, 1st at BCN airport. Leaving on November 8th from BCP airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed, Arriving on Fri Nov 2 21:55 at BCN airport. Leaving Sun Nov 11 17:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# Luca Ceresoli, confirmed. Arriving on November 3rd at BCN airport 10:05 AM. Leaving on November 7th from BCN airport 19:15 PM. Staying at Hotel Fira Palace. Will arrive around 11:30 AM for the meeting.&lt;br /&gt;
# Samuel Martin, confirmed. Arriving on November, 3rd at Barcelona-Franca Train Station 8:05 AM. Leaving on November 10th from Barcelona-Franca Train Station at 8:43 PM.&lt;br /&gt;
# Simon Dawson, confirmed. Arriving on November 2nd in the evening. Leaving on November 8th early morning.&lt;br /&gt;
# Mischa Jonker, confirmed. From Synopsys.com. Not contributing yet to Buildroot, but interested in using Buildroot for a brand new CPU architecture. Arriving Friday Nov 2nd BCN 21:10 CET, staying at Catalonia Barcelona Plaza (Plaza Espanya), leaving Thursday Nov 8 at 18:40 CET.&lt;br /&gt;
# Maxime Hadjinlian.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
=== Program ===&lt;br /&gt;
&lt;br /&gt;
* Saturday, 10 AM: beginning of the meeting. The first person to arrive can go directly to the front desk and ask for MARIBEL SOCIAS or anyone in the Reservations Department, and then ask for the meeting room booked for Thomas Petazzoni. [[User:ThomasPetazzoni|Thomas Petazzoni]] will only arrive at 10:30-11 AM.&lt;br /&gt;
* Saturday, 7 PM: end of the meeting&lt;br /&gt;
* Saturday, 8:30 PM: dinner sponsored by Synopsys&lt;br /&gt;
* Sunday, 10 AM: beginning of the meeting&lt;br /&gt;
* Sunday, 7 PM: end of the meeting&lt;br /&gt;
&lt;br /&gt;
=== Location ===&lt;br /&gt;
&lt;br /&gt;
The event will take place at [http://www.hotelgrumsbarcelona.com/ Hotel Grumps], in downtown Barcelona. See [http://goo.gl/maps/htYi9 this map] for the location of the hotel, and [http://goo.gl/maps/GdiaM this map] for walking directions between the Fira Palace hotel (location of the ELCE conference) and Hotel Grums.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* Autobuilder tests: needed improvements, future work. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to use a git repository as source for toolchain. This doesn't work well today. Proposed by Mischa Jonker&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Does it make sense to port the toolchains to generic-package infrastructure? Asked by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Should we remove the ability to build a toolchain on the target? And also things like development files on target, documentation on target, etc. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
&lt;br /&gt;
=== List of topics to hack on ===&lt;br /&gt;
&lt;br /&gt;
* Reduce the back log of bugs. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Reduce the back log of patches. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Work on noMMU platform support (Blackfin, Coldfire). Getting Coldfire Qemu working, adding correct support for FLAT binaries. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Package upgrades: package python3, gtk3 and latest versions of glib and al. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Triage autobuilder failures and fix them. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Improve the documentation. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Work on relocatable toolchain. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for setup.py/qmake based packages. Proposed by Samuel Martin&lt;br /&gt;
* Add some infra for make based packages (mainly using the same pattern all over). Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for Kconfig based packages (linux, barebox, busybox, uclibc, ct-ng, at91bootstrap3).  Proposed by Arnout Vandecappelle&lt;br /&gt;
* Make top-level make -j possible.  Proposed by Arnout Vandecappelle&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysELCE2012</id>
		<title>Buildroot:DeveloperDaysELCE2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysELCE2012"/>
				<updated>2012-11-04T18:56:01Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: /* Report of the meeting */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 3-4 November 2012, Barcelona Spain ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Meeting in Barcelona ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Saturday November 3rd and Sunday November 4th, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right before the Embedded Linux Conference Europe, in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
=== Event sponsored by Fluendo and Synopsys ===&lt;br /&gt;
&lt;br /&gt;
The meeting room is sponsored  by [http://www.fluendo.com Fluendo]. Thanks!&lt;br /&gt;
&lt;br /&gt;
The Saturday dinner is sponsored by [http://www.synopsys.com Synopsys]. Thanks!&lt;br /&gt;
&lt;br /&gt;
=== Report of the meeting ===&lt;br /&gt;
&lt;br /&gt;
==== Action points ====&lt;br /&gt;
* Accept perl series.&lt;br /&gt;
* Accept qemu series (after further review).&lt;br /&gt;
* Remove compiler on target.&lt;br /&gt;
* Remove development files on target.&lt;br /&gt;
* Remove documentation on target.&lt;br /&gt;
* Explain in the documentation why the above was done.&lt;br /&gt;
* Put httpd daemons outside BUSYBOX_SHOW_OTHERS.&lt;br /&gt;
* Move BUSYBOX_SHOW_OTHERS conditions to ''depends on'' inside the package Config.in&lt;br /&gt;
* busybox: disable mount-nfs in the default config.&lt;br /&gt;
* simplify patch logic: if pkg-version directory exists, use that; otherwise, use pkg-*.patch.&lt;br /&gt;
* Automate selection of correct FP and other compiler options based on subarchitecture.&lt;br /&gt;
* Move download helpers to a script.&lt;br /&gt;
* Samuel merges documentation patches and sends pull requests to Peter.&lt;br /&gt;
* Ask Yann for help regarding the comments in the AVAILABLE framework.&lt;br /&gt;
* Document better that you need to do make clean; make instead of make target-clean.&lt;br /&gt;
* Rename output/target to output/tmproot.&lt;br /&gt;
* Arnout reposts the save-configuration simplification patches without out-of-buildroot-tree support.&lt;br /&gt;
&lt;br /&gt;
==== Details of the discussion ====&lt;br /&gt;
&lt;br /&gt;
# Perl.  The perl patch series (now at v11) looks ready to be integrated, but we have our doubts about cpanminus. The problems are: it has separate download infrastructure, which blocks some buildroot features (e.g. make source); it doesn't integrate with the legal-info.  However, CPAN is pretty important if you really want to use perl.  The decision was to accept cpanminus as well, but add some warnings that some things don't work.&lt;br /&gt;
# Qemu.  Adding this opens the door for more people to do stuff that buildroot wasn't meant for in the first place (i.e. embedded).  However, even in embedded qemu could be relevant.  Things like the compiler on the target are much worse for doing crazy things.  Giving new packages a chance is OK; we have to be much more careful with things that have global impact (like including development files on target).  Conclusion: it's OK to accept qemu.&lt;br /&gt;
# Compiler on target.  It leads to newbies using buildroot in an inappropriate way (i.e. compile on the target).  Also it only works with the internal toolchain.  And if we remove it, we can also remove &amp;quot;Development files on target&amp;quot;, which simplifies some of the build infrastructure.  Also, if you have a compiler on the target, then you can just as well use a distro.  Conclusion: we remove it.  Also a bunch of other packages can be removed (autotools, vala, ...)&lt;br /&gt;
# Documentation on target: if you need this, use a distro.  So we remove it.&lt;br /&gt;
# We need to explain in the documentation why we removed this stuff.&lt;br /&gt;
# Available stuff: i.e. solve the problem of combination of ''select'' and ''depends''. Solving it in Kconfig itself seems to be difficult: there were some patches but the kconfig people didn't like it; Yann and Thomas looked at Kconfig and it looks difficult to modify.  The AVAILABLE solution has two problems: it adds verbosity, and the recursive dependencies still should be written in the comments (&amp;quot;libfoo requires WCHAR in the toolchain&amp;quot;).  The verbosity is not considered a big issue.  For the comments: they currently don't work perfectly either.  Removing the comments altogether is an option, but then it is difficult for users to find out why a certain package isn't available.  Another possibility is to list the available packages in the documentation (automatically), and mention which toolchain dependencies they have.  Wild idea: consider Config.in as a low-level language, and define our own higher-level language from which we generate Config.in.  Alternatively, have a developer tool that verifies if everything is consistent (i.e. are the comments correct).  One more option: add a big comment in the beginning of the packages list, which says that not all toolchain options are available so not all packages are visible.  Converting the toolchain options from ''depends'' to ''select'' is not really an option, because changing toolchain options requires a make clean.&amp;lt;br/&amp;gt;After more discussion on Sunday, we didn't find a solution. For the time being, we stick to the old system. We ask Yann if he has a brilliant idea of how to deal with the comments.&lt;br /&gt;
# kconfig-frontend: Yann now has a repository for Kconfig, it would be nice to branch our Kconfig from that.  The idea is to still copy it to our repository.&lt;br /&gt;
# BUSYBOX_SHOW_OTHERS: the only reason to have this is to avoid newcomers enabling things like tar etc. which are anyway already in busybox.  But for the web servers, they are clearly different from the busybox web servers (and our default busybox config doesn't even enable a web server).  Also bash is a typical one, because people write bashisms in their scripts.  This discussion is somewhat related to the discussion how to handle packages that provide the same functionality.  But for many packages, it's not even the same (httpd, bash, vim).  But actually, we're trying to solve a non-existent problem here - except for the web servers.  If we generate a list of packages in the documentation, we can add a remark to that that it's also available in busybox.  Also move the condition inside the package Config.in instead of outside and make it a ''depends on'', so it is more visible.&lt;br /&gt;
# packages with multiple variants: python2/3, Qt4/5, gtk2/3, gstreamer0.10/1.0...  This is again similar to the expat/libxml2 issue.  Do we support both python2 and python3? We need to support both versions in most cases. Question is if we want to force that only one of the two is selected, or do we support side-by-side installation.  Conclusion: has to be looked at on a case-by-case basis.  General philosophy: don't try to be too smart, so don't try to force selecting only one of the two if it doesn't make sense to have both.  In cases where a package wants to ''select'' one of these things, convert the ''select'' into a ''depends'' with a comment.  For gstreamer, the complexity of having the two side-by-side is unacceptable, because there are so many fine-grained gstreamer configure options (in the plugins).  However, we expect that everything will move to gstreamer1.0 quite quickly, so for the time being (and only if someone needs it), we can live with a non-perfect solution that just fits the requirements of whoever needs gstreamer1.0.&lt;br /&gt;
# multiple packages providing the same functionality: lua/luajit, jpeg/jpegturbo, expat/libxml2.  These cannot be installed side-by-side, and many packages select e.g. jpeg.  OpenGL will have this issue as well.  A relatively clean solution is to create virtual packages for these, where the user has a choice between the two.  The normal config option would be hidden for these packages.  This still adds complexity in some corner cases, e.g. some package that doesn't work in luajit, but that can probably be solved at the level of that package.&lt;br /&gt;
# Autobuild infrastructure. Thomas is working on scripts that parse the build result and put it in a database.  One important missing feature at the moment is visibility of evolution over time (i.e. distinguish regressions from recurring problems).  Even more important is just being able to see which packages are failing all the time, i.e. for each package how often it failed.  Ideally, we would also want to see how often a package has been built successfully, but when is it successful? Does the entire build have to succeed or that package?  Overall, however, the autobuild infrastructure is considered very useful - when something is wrong, it appears in the autobuild very quickly.&lt;br /&gt;
#* autobuild of the next branch: if only the master is autobuilt, we don't see a lot of problems until after the release. Delaying fixing bugs makes it more difficult to fix them. To support autobuild of the next branch, this should also be made visible in the database so we can distinguish master failures (more important) from next failures.&lt;br /&gt;
#* autobuild database is not suitable to track repeated builds of the same configuration.  It needs to keep track of different builds of the same configurations.  But the question is if this is really useful. We would like to check the existing defconfigs at every release, but it doesn't have to be tracked.  So it can be done manually.&lt;br /&gt;
# AVR32. It is end of life as far as Atmel is concerned, but of course there are still products out there using it.  It is not really blocking for buildroot.  For packages which fail to build, we can just add a ''depends on !BR2_avr32''.  But of course, until we have the AVAILABLE mechanism, carrying this kind of dependency can be painful.&lt;br /&gt;
# RPC support. Originally, the idea was to consider RPC support as a toolchain option, i.e. using ''depends''.  However, libtirpc is really a library, comparable to gettext, so it could be enabled automatically with ''select''.  Busybox is special, because we don't want to force RPC just because busybox is selected.  Therefore busybox has a user-selectable option to enable RPC-based applets (mount-nfs).  After discussion, this option was discarded - just remove mount-nfs from busybox (see below).  Other packages will use libtirpc if it was selected (manually or automatically). It's still a question what will happen when dynamically linking against libtirpc when libc also has rpc.&lt;br /&gt;
# A bit related: we'll disable mount-nfs in the default busybox config; if user disables RPC and enables mount-nfs in busybox, he'll get a compilation error.&lt;br /&gt;
# Support for VCS branches in packages: custom packages are often in a VCS and while developing, you want to track a branch of that VCS.  OVERRIDE_SRCDIR doesn't work very well because it means the user has to check everything out at the right version in the right location.  An alternative would be to teach OVERRIDE_SRCDIR about VCSes, so that ''make foo-rebuild'' re-syncs with the VCS.&lt;br /&gt;
# There is a general feeling (mainly from Thomas) that buildroot isn't very convenient during development of a project where several people are working on several components. But no solution was found.&lt;br /&gt;
# FP stuff: we now have a single SOFT_FLOAT option, but actually there's a lot more variation: neon, vfpv3, softfp, ....  To support this well, we can add a lot of extra config options to semi-automatically select the correct float options based on the subarchitecture.  There is some cross-dependency with the external toolchains, but it's doable.  There should still be an option to manually override the float options for exotic cases.  ARM thumb adds another layer of complexity.  Someone should take the lead on making this easier.&lt;br /&gt;
# Porting gcc to the generic package infrastructure.  Looks like this is a lot of work, and there's not so much need for it.&lt;br /&gt;
# Getting gcc from git.  It's more convenient to put a tarball somewhere public and use that as an alternative source, similar to avr32.&lt;br /&gt;
# Download helpers are getting too complex.  It should move a script so at least it's more readable.&lt;br /&gt;
# Community organization:&lt;br /&gt;
#* It can be useful to have subsystem maintainers, that are responsible for reviewing and accepting patches.  In practice, however, it is difficult to split things in a way that we don't risk duplicating work (i.e. two people in the process of merging the same patch).  However, one clearly defined subsystem is the documentation.  From now on, Samuel Martin is responsible for all documentation patches.  He'll send pull requests to Peter.&lt;br /&gt;
#* Patches should be accepted more aggressively, even if there hasn't been (much) testing of the patch.  The autobuilders will catch any issues.  However, it is still important to properly review and comment on coding style issues (i.e. how the features are implemented.  Also, if something really breaks the autobuilder, Thomas can revert it without consulting Peter.&lt;br /&gt;
# Out of tree build: this is a feature that people keep on asking. It is particularly useful for packages with an OVERRIDE_SRCDIR.  But of course, not all packages support out-of-tree build, and not all packages support it in the same way.  For autotools and cmake, it can be automatic; for generic packages, it has to be signalled if out-of-tree build is available.&lt;br /&gt;
# legal-info:&lt;br /&gt;
#* split _LICENSE and _REDISTRIBUTE: patch proposed by Luca is accepted. Even though there is no proprietary package in buildroot that triggers the feature, if it fails to work as expected the user will hopefully report it.&lt;br /&gt;
#* multiple licenses: we don't want to make things very complex.  It doesn't have to be machine-readable (we don't need to support machine analysis of the license field), so we don't have to formally decide how the license text must be written.  It does make sense to have some convention, though.  Proposal: &amp;quot;GPLv2+ or BSD-2c for the library, GPLv2+ for the dtc executable&amp;quot;.&lt;br /&gt;
# target-clean: purpose is to rebuild the target tree, without rebuilding all packages. The problem is that this looks as if packages are really removed, but there may still be dependencies hidden in the built packages so that the resulting target doesn't work anymore.  One idea is to just not have a target dir anymore, but instead reconstruct it from the staging dir every time the fs is built.  But this is too much overhead in the usual case.  Basically, we prefer to have people do a full make clean if they change anything.  We should update the documentation to explain that this is necessary.  There was an idea to remove the entire target tree, and just regenerate it on every build.  This would simplify the .mk files because for most packages there's no need for INSTALL_TARGET_CMDS anymore (some packages still want to remove stuff), and implicitly does a target-clean (because there is no target dir to begin with), but only for the use case of skeleton changes.  In the end, the conclusion was that we don't want to support target-clean, but we'll document why not.&lt;br /&gt;
# Regarding out-of-buildroot-tree project stuff: we don't really want to advertise keeping stuff outside of the buildroot tree.  Any patches that make that easier will be rejected. But it would be nice to store the result of xxx-menuconfig back to the place where it came from, or warn if that place doesn't exist.&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed.  Arriving on Fri Nov 2 20:35 at BCN airport.  Leaving Wed Nov. 8 21:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on November, 3rd at BCN airport 9:25 AM. Leaving on November 8th from BCN airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# Maxime Ripard, confirmed. Arriving on November, 1st at BCN airport. Leaving on November 8th from BCP airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed, Arriving on Fri Nov 2 21:55 at BCN airport. Leaving Sun Nov 11 17:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# Luca Ceresoli, confirmed. Arriving on November 3rd at BCN airport 10:05 AM. Leaving on November 7th from BCN airport 19:15 PM. Staying at Hotel Fira Palace. Will arrive around 11:30 AM for the meeting.&lt;br /&gt;
# Samuel Martin, confirmed. Arriving on November, 3rd at Barcelona-Franca Train Station 8:05 AM. Leaving on November 10th from Barcelona-Franca Train Station at 8:43 PM.&lt;br /&gt;
# Simon Dawson, confirmed. Arriving on November 2nd in the evening. Leaving on November 8th early morning.&lt;br /&gt;
# Mischa Jonker, confirmed. From Synopsys.com. Not contributing yet to Buildroot, but interested in using Buildroot for a brand new CPU architecture. Arriving Friday Nov 2nd BCN 21:10 CET, staying at Catalonia Barcelona Plaza (Plaza Espanya), leaving Thursday Nov 8 at 18:40 CET.&lt;br /&gt;
# Maxime Hadjinlian.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
=== Program ===&lt;br /&gt;
&lt;br /&gt;
* Saturday, 10 AM: beginning of the meeting. The first person to arrive can go directly to the front desk and ask for MARIBEL SOCIAS or anyone in the Reservations Department, and then ask for the meeting room booked for Thomas Petazzoni. [[User:ThomasPetazzoni|Thomas Petazzoni]] will only arrive at 10:30-11 AM.&lt;br /&gt;
* Saturday, 7 PM: end of the meeting&lt;br /&gt;
* Saturday, 8:30 PM: dinner sponsored by Synopsys&lt;br /&gt;
* Sunday, 10 AM: beginning of the meeting&lt;br /&gt;
* Sunday, 7 PM: end of the meeting&lt;br /&gt;
&lt;br /&gt;
=== Location ===&lt;br /&gt;
&lt;br /&gt;
The event will take place at [http://www.hotelgrumsbarcelona.com/ Hotel Grumps], in downtown Barcelona. See [http://goo.gl/maps/htYi9 this map] for the location of the hotel, and [http://goo.gl/maps/GdiaM this map] for walking directions between the Fira Palace hotel (location of the ELCE conference) and Hotel Grums.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* Autobuilder tests: needed improvements, future work. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to use a git repository as source for toolchain. This doesn't work well today. Proposed by Mischa Jonker&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Does it make sense to port the toolchains to generic-package infrastructure? Asked by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Should we remove the ability to build a toolchain on the target? And also things like development files on target, documentation on target, etc. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
&lt;br /&gt;
=== List of topics to hack on ===&lt;br /&gt;
&lt;br /&gt;
* Reduce the back log of bugs. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Reduce the back log of patches. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Work on noMMU platform support (Blackfin, Coldfire). Getting Coldfire Qemu working, adding correct support for FLAT binaries. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Package upgrades: package python3, gtk3 and latest versions of glib and al. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Triage autobuilder failures and fix them. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Improve the documentation. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Work on relocatable toolchain. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for setup.py/qmake based packages. Proposed by Samuel Martin&lt;br /&gt;
* Add some infra for make based packages (mainly using the same pattern all over). Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for Kconfig based packages (linux, barebox, busybox, uclibc, ct-ng, at91bootstrap3).  Proposed by Arnout Vandecappelle&lt;br /&gt;
* Make top-level make -j possible.  Proposed by Arnout Vandecappelle&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysELCE2012</id>
		<title>Buildroot:DeveloperDaysELCE2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysELCE2012"/>
				<updated>2012-11-04T18:20:21Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: /* Report of the meeting */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 3-4 November 2012, Barcelona Spain ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Meeting in Barcelona ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Saturday November 3rd and Sunday November 4th, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right before the Embedded Linux Conference Europe, in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
=== Event sponsored by Fluendo and Synopsys ===&lt;br /&gt;
&lt;br /&gt;
The meeting room is sponsored  by [http://www.fluendo.com Fluendo]. Thanks!&lt;br /&gt;
&lt;br /&gt;
The Saturday dinner is sponsored by [http://www.synopsys.com Synopsys]. Thanks!&lt;br /&gt;
&lt;br /&gt;
=== Report of the meeting ===&lt;br /&gt;
&lt;br /&gt;
==== Action points ====&lt;br /&gt;
* Accept perl series.&lt;br /&gt;
* Accept qemu series (after further review).&lt;br /&gt;
* Remove compiler on target.&lt;br /&gt;
* Remove development files on target.&lt;br /&gt;
* Remove documentation on target.&lt;br /&gt;
* Explain in the documentation why the above was done.&lt;br /&gt;
* Put httpd daemons outside BUSYBOX_SHOW_OTHERS.&lt;br /&gt;
* Move BUSYBOX_SHOW_OTHERS conditions to ''depends on'' inside the package Config.in&lt;br /&gt;
* busybox: disable mount-nfs in the default config.&lt;br /&gt;
* simplify patch logic: if pkg-version directory exists, use that; otherwise, use pkg-*.patch.&lt;br /&gt;
* Automate selection of correct FP and other compiler options based on subarchitecture.&lt;br /&gt;
* Move download helpers to a script.&lt;br /&gt;
* Samuel merges documentation patches and sends pull requests to Peter.&lt;br /&gt;
* Ask Yann for help regarding the comments in the AVAILABLE framework.&lt;br /&gt;
* Document better that you need to do make clean; make instead of make target-clean.&lt;br /&gt;
&lt;br /&gt;
==== Details of the discussion ====&lt;br /&gt;
&lt;br /&gt;
# Perl.  The perl patch series (now at v11) looks ready to be integrated, but we have our doubts about cpanminus. The problems are: it has separate download infrastructure, which blocks some buildroot features (e.g. make source); it doesn't integrate with the legal-info.  However, CPAN is pretty important if you really want to use perl.  The decision was to accept cpanminus as well, but add some warnings that some things don't work.&lt;br /&gt;
# Qemu.  Adding this opens the door for more people to do stuff that buildroot wasn't meant for in the first place (i.e. embedded).  However, even in embedded qemu could be relevant.  Things like the compiler on the target are much worse for doing crazy things.  Giving new packages a chance is OK; we have to be much more careful with things that have global impact (like including development files on target).  Conclusion: it's OK to accept qemu.&lt;br /&gt;
# Compiler on target.  It leads to newbies using buildroot in an inappropriate way (i.e. compile on the target).  Also it only works with the internal toolchain.  And if we remove it, we can also remove &amp;quot;Development files on target&amp;quot;, which simplifies some of the build infrastructure.  Also, if you have a compiler on the target, then you can just as well use a distro.  Conclusion: we remove it.  Also a bunch of other packages can be removed (autotools, vala, ...)&lt;br /&gt;
# Documentation on target: if you need this, use a distro.  So we remove it.&lt;br /&gt;
# We need to explain in the documentation why we removed this stuff.&lt;br /&gt;
# Available stuff: i.e. solve the problem of combination of ''select'' and ''depends''. Solving it in Kconfig itself seems to be difficult: there were some patches but the kconfig people didn't like it; Yann and Thomas looked at Kconfig and it looks difficult to modify.  The AVAILABLE solution has two problems: it adds verbosity, and the recursive dependencies still should be written in the comments (&amp;quot;libfoo requires WCHAR in the toolchain&amp;quot;).  The verbosity is not considered a big issue.  For the comments: they currently don't work perfectly either.  Removing the comments altogether is an option, but then it is difficult for users to find out why a certain package isn't available.  Another possibility is to list the available packages in the documentation (automatically), and mention which toolchain dependencies they have.  Wild idea: consider Config.in as a low-level language, and define our own higher-level language from which we generate Config.in.  Alternatively, have a developer tool that verifies if everything is consistent (i.e. are the comments correct).  One more option: add a big comment in the beginning of the packages list, which says that not all toolchain options are available so not all packages are visible.  Converting the toolchain options from ''depends'' to ''select'' is not really an option, because changing toolchain options requires a make clean.&amp;lt;br/&amp;gt;After more discussion on Sunday, we didn't find a solution. For the time being, we stick to the old system. We ask Yann if he has a brilliant idea of how to deal with the comments.&lt;br /&gt;
# kconfig-frontend: Yann now has a repository for Kconfig, it would be nice to branch our Kconfig from that.  The idea is to still copy it to our repository.&lt;br /&gt;
# BUSYBOX_SHOW_OTHERS: the only reason to have this is to avoid newcomers enabling things like tar etc. which are anyway already in busybox.  But for the web servers, they are clearly different from the busybox web servers (and our default busybox config doesn't even enable a web server).  Also bash is a typical one, because people write bashisms in their scripts.  This discussion is somewhat related to the discussion how to handle packages that provide the same functionality.  But for many packages, it's not even the same (httpd, bash, vim).  But actually, we're trying to solve a non-existent problem here - except for the web servers.  If we generate a list of packages in the documentation, we can add a remark to that that it's also available in busybox.  Also move the condition inside the package Config.in instead of outside and make it a ''depends on'', so it is more visible.&lt;br /&gt;
# packages with multiple variants: python2/3, Qt4/5, gtk2/3, gstreamer0.10/1.0...  This is again similar to the expat/libxml2 issue.  Do we support both python2 and python3? We need to support both versions in most cases. Question is if we want to force that only one of the two is selected, or do we support side-by-side installation.  Conclusion: has to be looked at on a case-by-case basis.  General philosophy: don't try to be too smart, so don't try to force selecting only one of the two if it doesn't make sense to have both.  In cases where a package wants to ''select'' one of these things, convert the ''select'' into a ''depends'' with a comment.  For gstreamer, the complexity of having the two side-by-side is unacceptable, because there are so many fine-grained gstreamer configure options (in the plugins).  However, we expect that everything will move to gstreamer1.0 quite quickly, so for the time being (and only if someone needs it), we can live with a non-perfect solution that just fits the requirements of whoever needs gstreamer1.0.&lt;br /&gt;
# multiple packages providing the same functionality: lua/luajit, jpeg/jpegturbo, expat/libxml2.  These cannot be installed side-by-side, and many packages select e.g. jpeg.  OpenGL will have this issue as well.  A relatively clean solution is to create virtual packages for these, where the user has a choice between the two.  The normal config option would be hidden for these packages.  This still adds complexity in some corner cases, e.g. some package that doesn't work in luajit, but that can probably be solved at the level of that package.&lt;br /&gt;
# Autobuild infrastructure. Thomas is working on scripts that parse the build result and put it in a database.  One important missing feature at the moment is visibility of evolution over time (i.e. distinguish regressions from recurring problems).  Even more important is just being able to see which packages are failing all the time, i.e. for each package how often it failed.  Ideally, we would also want to see how often a package has been built successfully, but when is it successful? Does the entire build have to succeed or that package?  Overall, however, the autobuild infrastructure is considered very useful - when something is wrong, it appears in the autobuild very quickly.&lt;br /&gt;
#* autobuild of the next branch: if only the master is autobuilt, we don't see a lot of problems until after the release. Delaying fixing bugs makes it more difficult to fix them. To support autobuild of the next branch, this should also be made visible in the database so we can distinguish master failures (more important) from next failures.&lt;br /&gt;
#* autobuild database is not suitable to track repeated builds of the same configuration.  It needs to keep track of different builds of the same configurations.  But the question is if this is really useful. We would like to check the existing defconfigs at every release, but it doesn't have to be tracked.  So it can be done manually.&lt;br /&gt;
# AVR32. It is end of life as far as Atmel is concerned, but of course there are still products out there using it.  It is not really blocking for buildroot.  For packages which fail to build, we can just add a ''depends on !BR2_avr32''.  But of course, until we have the AVAILABLE mechanism, carrying this kind of dependency can be painful.&lt;br /&gt;
# RPC support. Originally, the idea was to consider RPC support as a toolchain option, i.e. using ''depends''.  However, libtirpc is really a library, comparable to gettext, so it could be enabled automatically with ''select''.  Busybox is special, because we don't want to force RPC just because busybox is selected.  Therefore busybox has a user-selectable option to enable RPC-based applets (mount-nfs).  After discussion, this option was discarded - just remove mount-nfs from busybox (see below).  Other packages will use libtirpc if it was selected (manually or automatically). It's still a question what will happen when dynamically linking against libtirpc when libc also has rpc.&lt;br /&gt;
# A bit related: we'll disable mount-nfs in the default busybox config; if user disables RPC and enables mount-nfs in busybox, he'll get a compilation error.&lt;br /&gt;
# Support for VCS branches in packages: custom packages are often in a VCS and while developing, you want to track a branch of that VCS.  OVERRIDE_SRCDIR doesn't work very well because it means the user has to check everything out at the right version in the right location.  An alternative would be to teach OVERRIDE_SRCDIR about VCSes, so that ''make foo-rebuild'' re-syncs with the VCS.&lt;br /&gt;
# There is a general feeling (mainly from Thomas) that buildroot isn't very convenient during development of a project where several people are working on several components. But no solution was found.&lt;br /&gt;
# FP stuff: we now have a single SOFT_FLOAT option, but actually there's a lot more variation: neon, vfpv3, softfp, ....  To support this well, we can add a lot of extra config options to semi-automatically select the correct float options based on the subarchitecture.  There is some cross-dependency with the external toolchains, but it's doable.  There should still be an option to manually override the float options for exotic cases.  ARM thumb adds another layer of complexity.  Someone should take the lead on making this easier.&lt;br /&gt;
# Porting gcc to the generic package infrastructure.  Looks like this is a lot of work, and there's not so much need for it.&lt;br /&gt;
# Getting gcc from git.  It's more convenient to put a tarball somewhere public and use that as an alternative source, similar to avr32.&lt;br /&gt;
# Download helpers are getting too complex.  It should move a script so at least it's more readable.&lt;br /&gt;
# Community organization:&lt;br /&gt;
#* It can be useful to have subsystem maintainers, that are responsible for reviewing and accepting patches.  In practice, however, it is difficult to split things in a way that we don't risk duplicating work (i.e. two people in the process of merging the same patch).  However, one clearly defined subsystem is the documentation.  From now on, Samuel Martin is responsible for all documentation patches.  He'll send pull requests to Peter.&lt;br /&gt;
#* Patches should be accepted more aggressively, even if there hasn't been (much) testing of the patch.  The autobuilders will catch any issues.  However, it is still important to properly review and comment on coding style issues (i.e. how the features are implemented.  Also, if something really breaks the autobuilder, Thomas can revert it without consulting Peter.&lt;br /&gt;
# Out of tree build: this is a feature that people keep on asking. It is particularly useful for packages with an OVERRIDE_SRCDIR.  But of course, not all packages support out-of-tree build, and not all packages support it in the same way.  For autotools and cmake, it can be automatic; for generic packages, it has to be signalled if out-of-tree build is available.&lt;br /&gt;
# legal-info:&lt;br /&gt;
#* split _LICENSE and _REDISTRIBUTE: patch proposed by Luca is accepted. Even though there is no proprietary package in buildroot that triggers the feature, if it fails to work as expected the user will hopefully report it.&lt;br /&gt;
#* multiple licenses: we don't want to make things very complex.  It doesn't have to be machine-readable (we don't need to support machine analysis of the license field), so we don't have to formally decide how the license text must be written.  It does make sense to have some convention, though.  Proposal: &amp;quot;GPLv2+ or BSD-2c for the library, GPLv2+ for the dtc executable&amp;quot;.&lt;br /&gt;
# target-clean: purpose is to rebuild the target tree, without rebuilding all packages. The problem is that this looks as if packages are really removed, but there may still be dependencies hidden in the built packages so that the resulting target doesn't work anymore.  One idea is to just not have a target dir anymore, but instead reconstruct it from the staging dir every time the fs is built.  But this is too much overhead in the usual case.  Basically, we prefer to have people do a full make clean if they change anything.  We should update the documentation to explain that this is necessary.  There was an idea to remove the entire target tree, and just regenerate it on every build.  This would simplify the .mk files because for most packages there's no need for INSTALL_TARGET_CMDS anymore (some packages still want to remove stuff), and implicitly does a target-clean (because there is no target dir to begin with), but only for the use case of skeleton changes.  In the end, the conclusion was that we don't want to support target-clean, but we'll document why not.&lt;br /&gt;
&lt;br /&gt;
For tomorrow:&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed.  Arriving on Fri Nov 2 20:35 at BCN airport.  Leaving Wed Nov. 8 21:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on November, 3rd at BCN airport 9:25 AM. Leaving on November 8th from BCN airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# Maxime Ripard, confirmed. Arriving on November, 1st at BCN airport. Leaving on November 8th from BCP airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed, Arriving on Fri Nov 2 21:55 at BCN airport. Leaving Sun Nov 11 17:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# Luca Ceresoli, confirmed. Arriving on November 3rd at BCN airport 10:05 AM. Leaving on November 7th from BCN airport 19:15 PM. Staying at Hotel Fira Palace. Will arrive around 11:30 AM for the meeting.&lt;br /&gt;
# Samuel Martin, confirmed. Arriving on November, 3rd at Barcelona-Franca Train Station 8:05 AM. Leaving on November 10th from Barcelona-Franca Train Station at 8:43 PM.&lt;br /&gt;
# Simon Dawson, confirmed. Arriving on November 2nd in the evening. Leaving on November 8th early morning.&lt;br /&gt;
# Mischa Jonker, confirmed. From Synopsys.com. Not contributing yet to Buildroot, but interested in using Buildroot for a brand new CPU architecture. Arriving Friday Nov 2nd BCN 21:10 CET, staying at Catalonia Barcelona Plaza (Plaza Espanya), leaving Thursday Nov 8 at 18:40 CET.&lt;br /&gt;
# Maxime Hadjinlian.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
=== Program ===&lt;br /&gt;
&lt;br /&gt;
* Saturday, 10 AM: beginning of the meeting. The first person to arrive can go directly to the front desk and ask for MARIBEL SOCIAS or anyone in the Reservations Department, and then ask for the meeting room booked for Thomas Petazzoni. [[User:ThomasPetazzoni|Thomas Petazzoni]] will only arrive at 10:30-11 AM.&lt;br /&gt;
* Saturday, 7 PM: end of the meeting&lt;br /&gt;
* Saturday, 8:30 PM: dinner sponsored by Synopsys&lt;br /&gt;
* Sunday, 10 AM: beginning of the meeting&lt;br /&gt;
* Sunday, 7 PM: end of the meeting&lt;br /&gt;
&lt;br /&gt;
=== Location ===&lt;br /&gt;
&lt;br /&gt;
The event will take place at [http://www.hotelgrumsbarcelona.com/ Hotel Grumps], in downtown Barcelona. See [http://goo.gl/maps/htYi9 this map] for the location of the hotel, and [http://goo.gl/maps/GdiaM this map] for walking directions between the Fira Palace hotel (location of the ELCE conference) and Hotel Grums.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* Autobuilder tests: needed improvements, future work. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to use a git repository as source for toolchain. This doesn't work well today. Proposed by Mischa Jonker&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Does it make sense to port the toolchains to generic-package infrastructure? Asked by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Should we remove the ability to build a toolchain on the target? And also things like development files on target, documentation on target, etc. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
&lt;br /&gt;
=== List of topics to hack on ===&lt;br /&gt;
&lt;br /&gt;
* Reduce the back log of bugs. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Reduce the back log of patches. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Work on noMMU platform support (Blackfin, Coldfire). Getting Coldfire Qemu working, adding correct support for FLAT binaries. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Package upgrades: package python3, gtk3 and latest versions of glib and al. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Triage autobuilder failures and fix them. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Improve the documentation. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Work on relocatable toolchain. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for setup.py/qmake based packages. Proposed by Samuel Martin&lt;br /&gt;
* Add some infra for make based packages (mainly using the same pattern all over). Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for Kconfig based packages (linux, barebox, busybox, uclibc, ct-ng, at91bootstrap3).  Proposed by Arnout Vandecappelle&lt;br /&gt;
* Make top-level make -j possible.  Proposed by Arnout Vandecappelle&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysELCE2012</id>
		<title>Buildroot:DeveloperDaysELCE2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysELCE2012"/>
				<updated>2012-11-04T17:37:10Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: /* Report of the meeting */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 3-4 November 2012, Barcelona Spain ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Meeting in Barcelona ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Saturday November 3rd and Sunday November 4th, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right before the Embedded Linux Conference Europe, in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
=== Event sponsored by Fluendo and Synopsys ===&lt;br /&gt;
&lt;br /&gt;
The meeting room is sponsored  by [http://www.fluendo.com Fluendo]. Thanks!&lt;br /&gt;
&lt;br /&gt;
The Saturday dinner is sponsored by [http://www.synopsys.com Synopsys]. Thanks!&lt;br /&gt;
&lt;br /&gt;
=== Report of the meeting ===&lt;br /&gt;
&lt;br /&gt;
==== Action points ====&lt;br /&gt;
* Accept perl series.&lt;br /&gt;
* Accept qemu series (after further review).&lt;br /&gt;
* Remove compiler on target.&lt;br /&gt;
* Remove development files on target.&lt;br /&gt;
* Remove documentation on target.&lt;br /&gt;
* Explain in the documentation why the above was done.&lt;br /&gt;
* Put httpd daemons outside BUSYBOX_SHOW_OTHERS.&lt;br /&gt;
* Move BUSYBOX_SHOW_OTHERS conditions to ''depends on'' inside the package Config.in&lt;br /&gt;
* busybox: disable mount-nfs in the default config.&lt;br /&gt;
* simplify patch logic: if pkg-version directory exists, use that; otherwise, use pkg-*.patch.&lt;br /&gt;
* Automate selection of correct FP and other compiler options based on subarchitecture.&lt;br /&gt;
* Move download helpers to a script.&lt;br /&gt;
* Samuel merges documentation patches and sends pull requests to Peter.&lt;br /&gt;
* Ask Yann for help regarding the comments in the AVAILABLE framework.&lt;br /&gt;
&lt;br /&gt;
==== Details of the discussion ====&lt;br /&gt;
&lt;br /&gt;
# Perl.  The perl patch series (now at v11) looks ready to be integrated, but we have our doubts about cpanminus. The problems are: it has separate download infrastructure, which blocks some buildroot features (e.g. make source); it doesn't integrate with the legal-info.  However, CPAN is pretty important if you really want to use perl.  The decision was to accept cpanminus as well, but add some warnings that some things don't work.&lt;br /&gt;
# Qemu.  Adding this opens the door for more people to do stuff that buildroot wasn't meant for in the first place (i.e. embedded).  However, even in embedded qemu could be relevant.  Things like the compiler on the target are much worse for doing crazy things.  Giving new packages a chance is OK; we have to be much more careful with things that have global impact (like including development files on target).  Conclusion: it's OK to accept qemu.&lt;br /&gt;
# Compiler on target.  It leads to newbies using buildroot in an inappropriate way (i.e. compile on the target).  Also it only works with the internal toolchain.  And if we remove it, we can also remove &amp;quot;Development files on target&amp;quot;, which simplifies some of the build infrastructure.  Also, if you have a compiler on the target, then you can just as well use a distro.  Conclusion: we remove it.  Also a bunch of other packages can be removed (autotools, vala, ...)&lt;br /&gt;
# Documentation on target: if you need this, use a distro.  So we remove it.&lt;br /&gt;
# We need to explain in the documentation why we removed this stuff.&lt;br /&gt;
# Available stuff: i.e. solve the problem of combination of ''select'' and ''depends''. Solving it in Kconfig itself seems to be difficult: there were some patches but the kconfig people didn't like it; Yann and Thomas looked at Kconfig and it looks difficult to modify.  The AVAILABLE solution has two problems: it adds verbosity, and the recursive dependencies still should be written in the comments (&amp;quot;libfoo requires WCHAR in the toolchain&amp;quot;).  The verbosity is not considered a big issue.  For the comments: they currently don't work perfectly either.  Removing the comments altogether is an option, but then it is difficult for users to find out why a certain package isn't available.  Another possibility is to list the available packages in the documentation (automatically), and mention which toolchain dependencies they have.  Wild idea: consider Config.in as a low-level language, and define our own higher-level language from which we generate Config.in.  Alternatively, have a developer tool that verifies if everything is consistent (i.e. are the comments correct).  One more option: add a big comment in the beginning of the packages list, which says that not all toolchain options are available so not all packages are visible.  Converting the toolchain options from ''depends'' to ''select'' is not really an option, because changing toolchain options requires a make clean.&amp;lt;br/&amp;gt;After more discussion on Sunday, we didn't find a solution. For the time being, we stick to the old system. We ask Yann if he has a brilliant idea of how to deal with the comments.&lt;br /&gt;
# kconfig-frontend: Yann now has a repository for Kconfig, it would be nice to branch our Kconfig from that.  The idea is to still copy it to our repository.&lt;br /&gt;
# BUSYBOX_SHOW_OTHERS: the only reason to have this is to avoid newcomers enabling things like tar etc. which are anyway already in busybox.  But for the web servers, they are clearly different from the busybox web servers (and our default busybox config doesn't even enable a web server).  Also bash is a typical one, because people write bashisms in their scripts.  This discussion is somewhat related to the discussion how to handle packages that provide the same functionality.  But for many packages, it's not even the same (httpd, bash, vim).  But actually, we're trying to solve a non-existent problem here - except for the web servers.  If we generate a list of packages in the documentation, we can add a remark to that that it's also available in busybox.  Also move the condition inside the package Config.in instead of outside and make it a ''depends on'', so it is more visible.&lt;br /&gt;
# packages with multiple variants: python2/3, Qt4/5, gtk2/3, gstreamer0.10/1.0...  This is again similar to the expat/libxml2 issue.  Do we support both python2 and python3? We need to support both versions in most cases. Question is if we want to force that only one of the two is selected, or do we support side-by-side installation.  Conclusion: has to be looked at on a case-by-case basis.  General philosophy: don't try to be too smart, so don't try to force selecting only one of the two if it doesn't make sense to have both.  In cases where a package wants to ''select'' one of these things, convert the ''select'' into a ''depends'' with a comment.  For gstreamer, the complexity of having the two side-by-side is unacceptable, because there are so many fine-grained gstreamer configure options (in the plugins).  However, we expect that everything will move to gstreamer1.0 quite quickly, so for the time being (and only if someone needs it), we can live with a non-perfect solution that just fits the requirements of whoever needs gstreamer1.0.&lt;br /&gt;
# multiple packages providing the same functionality: lua/luajit, jpeg/jpegturbo, expat/libxml2.  These cannot be installed side-by-side, and many packages select e.g. jpeg.  OpenGL will have this issue as well.  A relatively clean solution is to create virtual packages for these, where the user has a choice between the two.  The normal config option would be hidden for these packages.  This still adds complexity in some corner cases, e.g. some package that doesn't work in luajit, but that can probably be solved at the level of that package.&lt;br /&gt;
# Autobuild infrastructure. Thomas is working on scripts that parse the build result and put it in a database.  One important missing feature at the moment is visibility of evolution over time (i.e. distinguish regressions from recurring problems).  Even more important is just being able to see which packages are failing all the time, i.e. for each package how often it failed.  Ideally, we would also want to see how often a package has been built successfully, but when is it successful? Does the entire build have to succeed or that package?  Overall, however, the autobuild infrastructure is considered very useful - when something is wrong, it appears in the autobuild very quickly.&lt;br /&gt;
#* autobuild of the next branch: if only the master is autobuilt, we don't see a lot of problems until after the release. Delaying fixing bugs makes it more difficult to fix them. To support autobuild of the next branch, this should also be made visible in the database so we can distinguish master failures (more important) from next failures.&lt;br /&gt;
#* autobuild database is not suitable to track repeated builds of the same configuration.  It needs to keep track of different builds of the same configurations.  But the question is if this is really useful. We would like to check the existing defconfigs at every release, but it doesn't have to be tracked.  So it can be done manually.&lt;br /&gt;
# AVR32. It is end of life as far as Atmel is concerned, but of course there are still products out there using it.  It is not really blocking for buildroot.  For packages which fail to build, we can just add a ''depends on !BR2_avr32''.  But of course, until we have the AVAILABLE mechanism, carrying this kind of dependency can be painful.&lt;br /&gt;
# RPC support. Originally, the idea was to consider RPC support as a toolchain option, i.e. using ''depends''.  However, libtirpc is really a library, comparable to gettext, so it could be enabled automatically with ''select''.  Busybox is special, because we don't want to force RPC just because busybox is selected.  Therefore busybox has a user-selectable option to enable RPC-based applets (mount-nfs).  After discussion, this option was discarded - just remove mount-nfs from busybox (see below).  Other packages will use libtirpc if it was selected (manually or automatically). It's still a question what will happen when dynamically linking against libtirpc when libc also has rpc.&lt;br /&gt;
# A bit related: we'll disable mount-nfs in the default busybox config; if user disables RPC and enables mount-nfs in busybox, he'll get a compilation error.&lt;br /&gt;
# Support for VCS branches in packages: custom packages are often in a VCS and while developing, you want to track a branch of that VCS.  OVERRIDE_SRCDIR doesn't work very well because it means the user has to check everything out at the right version in the right location.  An alternative would be to teach OVERRIDE_SRCDIR about VCSes, so that ''make foo-rebuild'' re-syncs with the VCS.&lt;br /&gt;
# There is a general feeling (mainly from Thomas) that buildroot isn't very convenient during development of a project where several people are working on several components. But no solution was found.&lt;br /&gt;
# FP stuff: we now have a single SOFT_FLOAT option, but actually there's a lot more variation: neon, vfpv3, softfp, ....  To support this well, we can add a lot of extra config options to semi-automatically select the correct float options based on the subarchitecture.  There is some cross-dependency with the external toolchains, but it's doable.  There should still be an option to manually override the float options for exotic cases.  ARM thumb adds another layer of complexity.  Someone should take the lead on making this easier.&lt;br /&gt;
# Porting gcc to the generic package infrastructure.  Looks like this is a lot of work, and there's not so much need for it.&lt;br /&gt;
# Getting gcc from git.  It's more convenient to put a tarball somewhere public and use that as an alternative source, similar to avr32.&lt;br /&gt;
# Download helpers are getting too complex.  It should move a script so at least it's more readable.&lt;br /&gt;
# Community organization:&lt;br /&gt;
#* It can be useful to have subsystem maintainers, that are responsible for reviewing and accepting patches.  In practice, however, it is difficult to split things in a way that we don't risk duplicating work (i.e. two people in the process of merging the same patch).  However, one clearly defined subsystem is the documentation.  From now on, Samuel Martin is responsible for all documentation patches.  He'll send pull requests to Peter.&lt;br /&gt;
#* Patches should be accepted more aggressively, even if there hasn't been (much) testing of the patch.  The autobuilders will catch any issues.  However, it is still important to properly review and comment on coding style issues (i.e. how the features are implemented.  Also, if something really breaks the autobuilder, Thomas can revert it without consulting Peter.&lt;br /&gt;
# Out of tree build: this is a feature that people keep on asking. It is particularly useful for packages with an OVERRIDE_SRCDIR.  But of course, not all packages support out-of-tree build, and not all packages support it in the same way.  For autotools and cmake, it can be automatic; for generic packages, it has to be signalled if out-of-tree build is available.&lt;br /&gt;
# legal-info:&lt;br /&gt;
#* split _LICENSE and _REDISTRIBUTE: patch proposed by Luca is accepted. Even though there is no proprietary package in buildroot that triggers the feature, if it fails to work as expected the user will hopefully report it.&lt;br /&gt;
#* multiple licenses: we don't want to make things very complex.  It doesn't have to be machine-readable (we don't need to support machine analysis of the license field), so we don't have to formally decide how the license text must be written.  It does make sense to have some convention, though.  Proposal: &amp;quot;GPLv2+ or BSD-2c for the library, GPLv2+ for the dtc executable&amp;quot;.&lt;br /&gt;
# target-clean: purpose is to rebuild the target tree, without rebuilding all packages. The problem is that this looks as if packages are really removed, but there may still be dependencies hidden in the built packages so that the resulting target doesn't work anymore.  One idea is to just not have a target dir anymore, but instead reconstruct it from the staging dir every time the fs is built.  But this is too much overhead in the usual case.  Basically, we prefer to have people do a full make clean if they change anything.  We should update the documentation to explain that this is necessary.&lt;br /&gt;
&lt;br /&gt;
For tomorrow:&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed.  Arriving on Fri Nov 2 20:35 at BCN airport.  Leaving Wed Nov. 8 21:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on November, 3rd at BCN airport 9:25 AM. Leaving on November 8th from BCN airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# Maxime Ripard, confirmed. Arriving on November, 1st at BCN airport. Leaving on November 8th from BCP airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed, Arriving on Fri Nov 2 21:55 at BCN airport. Leaving Sun Nov 11 17:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# Luca Ceresoli, confirmed. Arriving on November 3rd at BCN airport 10:05 AM. Leaving on November 7th from BCN airport 19:15 PM. Staying at Hotel Fira Palace. Will arrive around 11:30 AM for the meeting.&lt;br /&gt;
# Samuel Martin, confirmed. Arriving on November, 3rd at Barcelona-Franca Train Station 8:05 AM. Leaving on November 10th from Barcelona-Franca Train Station at 8:43 PM.&lt;br /&gt;
# Simon Dawson, confirmed. Arriving on November 2nd in the evening. Leaving on November 8th early morning.&lt;br /&gt;
# Mischa Jonker, confirmed. From Synopsys.com. Not contributing yet to Buildroot, but interested in using Buildroot for a brand new CPU architecture. Arriving Friday Nov 2nd BCN 21:10 CET, staying at Catalonia Barcelona Plaza (Plaza Espanya), leaving Thursday Nov 8 at 18:40 CET.&lt;br /&gt;
# Maxime Hadjinlian.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
=== Program ===&lt;br /&gt;
&lt;br /&gt;
* Saturday, 10 AM: beginning of the meeting. The first person to arrive can go directly to the front desk and ask for MARIBEL SOCIAS or anyone in the Reservations Department, and then ask for the meeting room booked for Thomas Petazzoni. [[User:ThomasPetazzoni|Thomas Petazzoni]] will only arrive at 10:30-11 AM.&lt;br /&gt;
* Saturday, 7 PM: end of the meeting&lt;br /&gt;
* Saturday, 8:30 PM: dinner sponsored by Synopsys&lt;br /&gt;
* Sunday, 10 AM: beginning of the meeting&lt;br /&gt;
* Sunday, 7 PM: end of the meeting&lt;br /&gt;
&lt;br /&gt;
=== Location ===&lt;br /&gt;
&lt;br /&gt;
The event will take place at [http://www.hotelgrumsbarcelona.com/ Hotel Grumps], in downtown Barcelona. See [http://goo.gl/maps/htYi9 this map] for the location of the hotel, and [http://goo.gl/maps/GdiaM this map] for walking directions between the Fira Palace hotel (location of the ELCE conference) and Hotel Grums.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* Autobuilder tests: needed improvements, future work. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to use a git repository as source for toolchain. This doesn't work well today. Proposed by Mischa Jonker&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Does it make sense to port the toolchains to generic-package infrastructure? Asked by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Should we remove the ability to build a toolchain on the target? And also things like development files on target, documentation on target, etc. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
&lt;br /&gt;
=== List of topics to hack on ===&lt;br /&gt;
&lt;br /&gt;
* Reduce the back log of bugs. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Reduce the back log of patches. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Work on noMMU platform support (Blackfin, Coldfire). Getting Coldfire Qemu working, adding correct support for FLAT binaries. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Package upgrades: package python3, gtk3 and latest versions of glib and al. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Triage autobuilder failures and fix them. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Improve the documentation. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Work on relocatable toolchain. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for setup.py/qmake based packages. Proposed by Samuel Martin&lt;br /&gt;
* Add some infra for make based packages (mainly using the same pattern all over). Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for Kconfig based packages (linux, barebox, busybox, uclibc, ct-ng, at91bootstrap3).  Proposed by Arnout Vandecappelle&lt;br /&gt;
* Make top-level make -j possible.  Proposed by Arnout Vandecappelle&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysELCE2012</id>
		<title>Buildroot:DeveloperDaysELCE2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysELCE2012"/>
				<updated>2012-11-04T17:24:52Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: /* Report of the meeting */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 3-4 November 2012, Barcelona Spain ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Meeting in Barcelona ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Saturday November 3rd and Sunday November 4th, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right before the Embedded Linux Conference Europe, in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
=== Event sponsored by Fluendo and Synopsys ===&lt;br /&gt;
&lt;br /&gt;
The meeting room is sponsored  by [http://www.fluendo.com Fluendo]. Thanks!&lt;br /&gt;
&lt;br /&gt;
The Saturday dinner is sponsored by [http://www.synopsys.com Synopsys]. Thanks!&lt;br /&gt;
&lt;br /&gt;
=== Report of the meeting ===&lt;br /&gt;
&lt;br /&gt;
==== Action points ====&lt;br /&gt;
* Accept perl series.&lt;br /&gt;
* Accept qemu series (after further review).&lt;br /&gt;
* Remove compiler on target.&lt;br /&gt;
* Remove development files on target.&lt;br /&gt;
* Remove documentation on target.&lt;br /&gt;
* Explain in the documentation why the above was done.&lt;br /&gt;
* Put httpd daemons outside BUSYBOX_SHOW_OTHERS.&lt;br /&gt;
* Move BUSYBOX_SHOW_OTHERS conditions to ''depends on'' inside the package Config.in&lt;br /&gt;
* busybox: disable mount-nfs in the default config.&lt;br /&gt;
* simplify patch logic: if pkg-version directory exists, use that; otherwise, use pkg-*.patch.&lt;br /&gt;
* Automate selection of correct FP and other compiler options based on subarchitecture.&lt;br /&gt;
* Move download helpers to a script.&lt;br /&gt;
* Samuel merges documentation patches and sends pull requests to Peter.&lt;br /&gt;
* Ask Yann for help regarding the comments in the AVAILABLE framework.&lt;br /&gt;
&lt;br /&gt;
==== Details of the discussion ====&lt;br /&gt;
&lt;br /&gt;
# Perl.  The perl patch series (now at v11) looks ready to be integrated, but we have our doubts about cpanminus. The problems are: it has separate download infrastructure, which blocks some buildroot features (e.g. make source); it doesn't integrate with the legal-info.  However, CPAN is pretty important if you really want to use perl.  The decision was to accept cpanminus as well, but add some warnings that some things don't work.&lt;br /&gt;
# Qemu.  Adding this opens the door for more people to do stuff that buildroot wasn't meant for in the first place (i.e. embedded).  However, even in embedded qemu could be relevant.  Things like the compiler on the target are much worse for doing crazy things.  Giving new packages a chance is OK; we have to be much more careful with things that have global impact (like including development files on target).  Conclusion: it's OK to accept qemu.&lt;br /&gt;
# Compiler on target.  It leads to newbies using buildroot in an inappropriate way (i.e. compile on the target).  Also it only works with the internal toolchain.  And if we remove it, we can also remove &amp;quot;Development files on target&amp;quot;, which simplifies some of the build infrastructure.  Also, if you have a compiler on the target, then you can just as well use a distro.  Conclusion: we remove it.  Also a bunch of other packages can be removed (autotools, vala, ...)&lt;br /&gt;
# Documentation on target: if you need this, use a distro.  So we remove it.&lt;br /&gt;
# We need to explain in the documentation why we removed this stuff.&lt;br /&gt;
# Available stuff: i.e. solve the problem of combination of ''select'' and ''depends''. Solving it in Kconfig itself seems to be difficult: there were some patches but the kconfig people didn't like it; Yann and Thomas looked at Kconfig and it looks difficult to modify.  The AVAILABLE solution has two problems: it adds verbosity, and the recursive dependencies still should be written in the comments (&amp;quot;libfoo requires WCHAR in the toolchain&amp;quot;).  The verbosity is not considered a big issue.  For the comments: they currently don't work perfectly either.  Removing the comments altogether is an option, but then it is difficult for users to find out why a certain package isn't available.  Another possibility is to list the available packages in the documentation (automatically), and mention which toolchain dependencies they have.  Wild idea: consider Config.in as a low-level language, and define our own higher-level language from which we generate Config.in.  Alternatively, have a developer tool that verifies if everything is consistent (i.e. are the comments correct).  One more option: add a big comment in the beginning of the packages list, which says that not all toolchain options are available so not all packages are visible.  Converting the toolchain options from ''depends'' to ''select'' is not really an option, because changing toolchain options requires a make clean.&amp;lt;br/&amp;gt;After more discussion on Sunday, we didn't find a solution. For the time being, we stick to the old system. We ask Yann if he has a brilliant idea of how to deal with the comments.&lt;br /&gt;
# kconfig-frontend: Yann now has a repository for Kconfig, it would be nice to branch our Kconfig from that.  The idea is to still copy it to our repository.&lt;br /&gt;
# BUSYBOX_SHOW_OTHERS: the only reason to have this is to avoid newcomers enabling things like tar etc. which are anyway already in busybox.  But for the web servers, they are clearly different from the busybox web servers (and our default busybox config doesn't even enable a web server).  Also bash is a typical one, because people write bashisms in their scripts.  This discussion is somewhat related to the discussion how to handle packages that provide the same functionality.  But for many packages, it's not even the same (httpd, bash, vim).  But actually, we're trying to solve a non-existent problem here - except for the web servers.  If we generate a list of packages in the documentation, we can add a remark to that that it's also available in busybox.  Also move the condition inside the package Config.in instead of outside and make it a ''depends on'', so it is more visible.&lt;br /&gt;
# packages with multiple variants: python2/3, Qt4/5, gtk2/3, gstreamer0.10/1.0...  This is again similar to the expat/libxml2 issue.  Do we support both python2 and python3? We need to support both versions in most cases. Question is if we want to force that only one of the two is selected, or do we support side-by-side installation.  Conclusion: has to be looked at on a case-by-case basis.  General philosophy: don't try to be too smart, so don't try to force selecting only one of the two if it doesn't make sense to have both.  In cases where a package wants to ''select'' one of these things, convert the ''select'' into a ''depends'' with a comment.  For gstreamer, the complexity of having the two side-by-side is unacceptable, because there are so many fine-grained gstreamer configure options (in the plugins).  However, we expect that everything will move to gstreamer1.0 quite quickly, so for the time being (and only if someone needs it), we can live with a non-perfect solution that just fits the requirements of whoever needs gstreamer1.0.&lt;br /&gt;
# multiple packages providing the same functionality: lua/luajit, jpeg/jpegturbo, expat/libxml2.  These cannot be installed side-by-side, and many packages select e.g. jpeg.  OpenGL will have this issue as well.  A relatively clean solution is to create virtual packages for these, where the user has a choice between the two.  The normal config option would be hidden for these packages.  This still adds complexity in some corner cases, e.g. some package that doesn't work in luajit, but that can probably be solved at the level of that package.&lt;br /&gt;
# Autobuild infrastructure. Thomas is working on scripts that parse the build result and put it in a database.  One important missing feature at the moment is visibility of evolution over time (i.e. distinguish regressions from recurring problems).  Even more important is just being able to see which packages are failing all the time, i.e. for each package how often it failed.  Ideally, we would also want to see how often a package has been built successfully, but when is it successful? Does the entire build have to succeed or that package?  Overall, however, the autobuild infrastructure is considered very useful - when something is wrong, it appears in the autobuild very quickly.&lt;br /&gt;
#* autobuild of the next branch: if only the master is autobuilt, we don't see a lot of problems until after the release. Delaying fixing bugs makes it more difficult to fix them. To support autobuild of the next branch, this should also be made visible in the database so we can distinguish master failures (more important) from next failures.&lt;br /&gt;
#* autobuild database is not suitable to track repeated builds of the same configuration.  It needs to keep track of different builds of the same configurations.  But the question is if this is really useful. We would like to check the existing defconfigs at every release, but it doesn't have to be tracked.  So it can be done manually.&lt;br /&gt;
# AVR32. It is end of life as far as Atmel is concerned, but of course there are still products out there using it.  It is not really blocking for buildroot.  For packages which fail to build, we can just add a ''depends on !BR2_avr32''.  But of course, until we have the AVAILABLE mechanism, carrying this kind of dependency can be painful.&lt;br /&gt;
# RPC support. Originally, the idea was to consider RPC support as a toolchain option, i.e. using ''depends''.  However, libtirpc is really a library, comparable to gettext, so it could be enabled automatically with ''select''.  Busybox is special, because we don't want to force RPC just because busybox is selected.  Therefore busybox has a user-selectable option to enable RPC-based applets (mount-nfs).  After discussion, this option was discarded - just remove mount-nfs from busybox (see below).  Other packages will use libtirpc if it was selected (manually or automatically). It's still a question what will happen when dynamically linking against libtirpc when libc also has rpc.&lt;br /&gt;
# A bit related: we'll disable mount-nfs in the default busybox config; if user disables RPC and enables mount-nfs in busybox, he'll get a compilation error.&lt;br /&gt;
# Support for VCS branches in packages: custom packages are often in a VCS and while developing, you want to track a branch of that VCS.  OVERRIDE_SRCDIR doesn't work very well because it means the user has to check everything out at the right version in the right location.  An alternative would be to teach OVERRIDE_SRCDIR about VCSes, so that ''make foo-rebuild'' re-syncs with the VCS.&lt;br /&gt;
# There is a general feeling (mainly from Thomas) that buildroot isn't very convenient during development of a project where several people are working on several components. But no solution was found.&lt;br /&gt;
# FP stuff: we now have a single SOFT_FLOAT option, but actually there's a lot more variation: neon, vfpv3, softfp, ....  To support this well, we can add a lot of extra config options to semi-automatically select the correct float options based on the subarchitecture.  There is some cross-dependency with the external toolchains, but it's doable.  There should still be an option to manually override the float options for exotic cases.  ARM thumb adds another layer of complexity.  Someone should take the lead on making this easier.&lt;br /&gt;
# Porting gcc to the generic package infrastructure.  Looks like this is a lot of work, and there's not so much need for it.&lt;br /&gt;
# Getting gcc from git.  It's more convenient to put a tarball somewhere public and use that as an alternative source, similar to avr32.&lt;br /&gt;
# Download helpers are getting too complex.  It should move a script so at least it's more readable.&lt;br /&gt;
# Community organization:&lt;br /&gt;
#* It can be useful to have subsystem maintainers, that are responsible for reviewing and accepting patches.  In practice, however, it is difficult to split things in a way that we don't risk duplicating work (i.e. two people in the process of merging the same patch).  However, one clearly defined subsystem is the documentation.  From now on, Samuel Martin is responsible for all documentation patches.  He'll send pull requests to Peter.&lt;br /&gt;
#* Patches should be accepted more aggressively, even if there hasn't been (much) testing of the patch.  The autobuilders will catch any issues.  However, it is still important to properly review and comment on coding style issues (i.e. how the features are implemented.  Also, if something really breaks the autobuilder, Thomas can revert it without consulting Peter.&lt;br /&gt;
# Out of tree build: this is a feature that people keep on asking. It is particularly useful for packages with an OVERRIDE_SRCDIR.  But of course, not all packages support out-of-tree build, and not all packages support it in the same way.  For autotools and cmake, it can be automatic; for generic packages, it has to be signalled if out-of-tree build is available.&lt;br /&gt;
# legal-info:&lt;br /&gt;
#* split _LICENSE and _REDISTRIBUTE: patch proposed by Luca is accepted. Even though there is no proprietary package in buildroot that triggers the feature, if it fails to work as expected the user will hopefully report it.&lt;br /&gt;
#* multiple licenses: we don't want to make things very complex.  It doesn't have to be machine-readable (we don't need to support machine analysis of the license field), so we don't have to formally decide how the license text must be written.  It does make sense to have some convention, though.  Proposal: &amp;quot;GPLv2+ or BSD-2c for the library, GPLv2+ for the dtc executable&amp;quot;.&lt;br /&gt;
# target-clean: purpose is to rebuild the target tree, without rebuilding all packages. The problem is that this looks as if packages are really removed, but there may still be dependencies hidden in the built packages so that the resulting target doesn't work anymore.  One idea is to just not have a target dir anymore, but instead reconstruct it from the staging dir every time the fs is built.  But this is too much overhead in the usual case.&lt;br /&gt;
&lt;br /&gt;
For tomorrow:&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed.  Arriving on Fri Nov 2 20:35 at BCN airport.  Leaving Wed Nov. 8 21:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on November, 3rd at BCN airport 9:25 AM. Leaving on November 8th from BCN airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# Maxime Ripard, confirmed. Arriving on November, 1st at BCN airport. Leaving on November 8th from BCP airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed, Arriving on Fri Nov 2 21:55 at BCN airport. Leaving Sun Nov 11 17:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# Luca Ceresoli, confirmed. Arriving on November 3rd at BCN airport 10:05 AM. Leaving on November 7th from BCN airport 19:15 PM. Staying at Hotel Fira Palace. Will arrive around 11:30 AM for the meeting.&lt;br /&gt;
# Samuel Martin, confirmed. Arriving on November, 3rd at Barcelona-Franca Train Station 8:05 AM. Leaving on November 10th from Barcelona-Franca Train Station at 8:43 PM.&lt;br /&gt;
# Simon Dawson, confirmed. Arriving on November 2nd in the evening. Leaving on November 8th early morning.&lt;br /&gt;
# Mischa Jonker, confirmed. From Synopsys.com. Not contributing yet to Buildroot, but interested in using Buildroot for a brand new CPU architecture. Arriving Friday Nov 2nd BCN 21:10 CET, staying at Catalonia Barcelona Plaza (Plaza Espanya), leaving Thursday Nov 8 at 18:40 CET.&lt;br /&gt;
# Maxime Hadjinlian.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
=== Program ===&lt;br /&gt;
&lt;br /&gt;
* Saturday, 10 AM: beginning of the meeting. The first person to arrive can go directly to the front desk and ask for MARIBEL SOCIAS or anyone in the Reservations Department, and then ask for the meeting room booked for Thomas Petazzoni. [[User:ThomasPetazzoni|Thomas Petazzoni]] will only arrive at 10:30-11 AM.&lt;br /&gt;
* Saturday, 7 PM: end of the meeting&lt;br /&gt;
* Saturday, 8:30 PM: dinner sponsored by Synopsys&lt;br /&gt;
* Sunday, 10 AM: beginning of the meeting&lt;br /&gt;
* Sunday, 7 PM: end of the meeting&lt;br /&gt;
&lt;br /&gt;
=== Location ===&lt;br /&gt;
&lt;br /&gt;
The event will take place at [http://www.hotelgrumsbarcelona.com/ Hotel Grumps], in downtown Barcelona. See [http://goo.gl/maps/htYi9 this map] for the location of the hotel, and [http://goo.gl/maps/GdiaM this map] for walking directions between the Fira Palace hotel (location of the ELCE conference) and Hotel Grums.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* Autobuilder tests: needed improvements, future work. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to use a git repository as source for toolchain. This doesn't work well today. Proposed by Mischa Jonker&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Does it make sense to port the toolchains to generic-package infrastructure? Asked by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Should we remove the ability to build a toolchain on the target? And also things like development files on target, documentation on target, etc. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
&lt;br /&gt;
=== List of topics to hack on ===&lt;br /&gt;
&lt;br /&gt;
* Reduce the back log of bugs. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Reduce the back log of patches. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Work on noMMU platform support (Blackfin, Coldfire). Getting Coldfire Qemu working, adding correct support for FLAT binaries. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Package upgrades: package python3, gtk3 and latest versions of glib and al. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Triage autobuilder failures and fix them. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Improve the documentation. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Work on relocatable toolchain. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for setup.py/qmake based packages. Proposed by Samuel Martin&lt;br /&gt;
* Add some infra for make based packages (mainly using the same pattern all over). Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for Kconfig based packages (linux, barebox, busybox, uclibc, ct-ng, at91bootstrap3).  Proposed by Arnout Vandecappelle&lt;br /&gt;
* Make top-level make -j possible.  Proposed by Arnout Vandecappelle&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysELCE2012</id>
		<title>Buildroot:DeveloperDaysELCE2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysELCE2012"/>
				<updated>2012-11-04T17:09:47Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: /* Report of the meeting */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 3-4 November 2012, Barcelona Spain ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Meeting in Barcelona ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Saturday November 3rd and Sunday November 4th, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right before the Embedded Linux Conference Europe, in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
=== Event sponsored by Fluendo and Synopsys ===&lt;br /&gt;
&lt;br /&gt;
The meeting room is sponsored  by [http://www.fluendo.com Fluendo]. Thanks!&lt;br /&gt;
&lt;br /&gt;
The Saturday dinner is sponsored by [http://www.synopsys.com Synopsys]. Thanks!&lt;br /&gt;
&lt;br /&gt;
=== Report of the meeting ===&lt;br /&gt;
&lt;br /&gt;
==== Action points ====&lt;br /&gt;
* Accept perl series.&lt;br /&gt;
* Accept qemu series (after further review).&lt;br /&gt;
* Remove compiler on target.&lt;br /&gt;
* Remove development files on target.&lt;br /&gt;
* Remove documentation on target.&lt;br /&gt;
* Explain in the documentation why the above was done.&lt;br /&gt;
* Put httpd daemons outside BUSYBOX_SHOW_OTHERS.&lt;br /&gt;
* Move BUSYBOX_SHOW_OTHERS conditions to ''depends on'' inside the package Config.in&lt;br /&gt;
* busybox: disable mount-nfs in the default config.&lt;br /&gt;
* simplify patch logic: if pkg-version directory exists, use that; otherwise, use pkg-*.patch.&lt;br /&gt;
* Automate selection of correct FP and other compiler options based on subarchitecture.&lt;br /&gt;
* Move download helpers to a script.&lt;br /&gt;
* Samuel merges documentation patches and sends pull requests to Peter.&lt;br /&gt;
&lt;br /&gt;
==== Details of the discussion ====&lt;br /&gt;
&lt;br /&gt;
# Perl.  The perl patch series (now at v11) looks ready to be integrated, but we have our doubts about cpanminus. The problems are: it has separate download infrastructure, which blocks some buildroot features (e.g. make source); it doesn't integrate with the legal-info.  However, CPAN is pretty important if you really want to use perl.  The decision was to accept cpanminus as well, but add some warnings that some things don't work.&lt;br /&gt;
# Qemu.  Adding this opens the door for more people to do stuff that buildroot wasn't meant for in the first place (i.e. embedded).  However, even in embedded qemu could be relevant.  Things like the compiler on the target are much worse for doing crazy things.  Giving new packages a chance is OK; we have to be much more careful with things that have global impact (like including development files on target).  Conclusion: it's OK to accept qemu.&lt;br /&gt;
# Compiler on target.  It leads to newbies using buildroot in an inappropriate way (i.e. compile on the target).  Also it only works with the internal toolchain.  And if we remove it, we can also remove &amp;quot;Development files on target&amp;quot;, which simplifies some of the build infrastructure.  Also, if you have a compiler on the target, then you can just as well use a distro.  Conclusion: we remove it.  Also a bunch of other packages can be removed (autotools, vala, ...)&lt;br /&gt;
# Documentation on target: if you need this, use a distro.  So we remove it.&lt;br /&gt;
# We need to explain in the documentation why we removed this stuff.&lt;br /&gt;
# Available stuff: i.e. solve the problem of combination of ''select'' and ''depends''. Solving it in Kconfig itself seems to be difficult: there were some patches but the kconfig people didn't like it; Yann and Thomas looked at Kconfig and it looks difficult to modify.  The AVAILABLE solution has two problems: it adds verbosity, and the recursive dependencies still should be written in the comments (&amp;quot;libfoo requires WCHAR in the toolchain&amp;quot;).  The verbosity is not considered a big issue.  For the comments: they currently don't work perfectly either.  Removing the comments altogether is an option, but then it is difficult for users to find out why a certain package isn't available.  Another possibility is to list the available packages in the documentation (automatically), and mention which toolchain dependencies they have.  Wild idea: consider Config.in as a low-level language, and define our own higher-level language from which we generate Config.in.  Alternatively, have a developer tool that verifies if everything is consistent (i.e. are the comments correct).  One more option: add a big comment in the beginning of the packages list, which says that not all toolchain options are available so not all packages are visible.  Converting the toolchain options from ''depends'' to ''select'' is not really an option, because changing toolchain options requires a make clean.&amp;lt;br/&amp;gt;After more discussion on Sunday, we didn't find a solution. For the time being, we stick to the old system. We ask Yann if he has a brilliant idea of how to deal with the comments.&lt;br /&gt;
# kconfig-frontend: Yann now has a repository for Kconfig, it would be nice to branch our Kconfig from that.  The idea is to still copy it to our repository.&lt;br /&gt;
# BUSYBOX_SHOW_OTHERS: the only reason to have this is to avoid newcomers enabling things like tar etc. which are anyway already in busybox.  But for the web servers, they are clearly different from the busybox web servers (and our default busybox config doesn't even enable a web server).  Also bash is a typical one, because people write bashisms in their scripts.  This discussion is somewhat related to the discussion how to handle packages that provide the same functionality.  But for many packages, it's not even the same (httpd, bash, vim).  But actually, we're trying to solve a non-existent problem here - except for the web servers.  If we generate a list of packages in the documentation, we can add a remark to that that it's also available in busybox.  Also move the condition inside the package Config.in instead of outside and make it a ''depends on'', so it is more visible.&lt;br /&gt;
# packages with multiple variants: python2/3, Qt4/5, gtk2/3, gstreamer0.10/1.0...  This is again similar to the expat/libxml2 issue.  Do we support both python2 and python3? We need to support both versions in most cases. Question is if we want to force that only one of the two is selected, or do we support side-by-side installation.  Conclusion: has to be looked at on a case-by-case basis.  General philosophy: don't try to be too smart, so don't try to force selecting only one of the two if it doesn't make sense to have both.  In cases where a package wants to ''select'' one of these things, convert the ''select'' into a ''depends'' with a comment.  For gstreamer, the complexity of having the two side-by-side is unacceptable, because there are so many fine-grained gstreamer configure options (in the plugins).  However, we expect that everything will move to gstreamer1.0 quite quickly, so for the time being (and only if someone needs it), we can live with a non-perfect solution that just fits the requirements of whoever needs gstreamer1.0.&lt;br /&gt;
# multiple packages providing the same functionality: lua/luajit, jpeg/jpegturbo, expat/libxml2.  These cannot be installed side-by-side, and many packages select e.g. jpeg.  OpenGL will have this issue as well.  A relatively clean solution is to create virtual packages for these, where the user has a choice between the two.  The normal config option would be hidden for these packages.  This still adds complexity in some corner cases, e.g. some package that doesn't work in luajit, but that can probably be solved at the level of that package.&lt;br /&gt;
# Autobuild infrastructure. Thomas is working on scripts that parse the build result and put it in a database.  One important missing feature at the moment is visibility of evolution over time (i.e. distinguish regressions from recurring problems).  Even more important is just being able to see which packages are failing all the time, i.e. for each package how often it failed.  Ideally, we would also want to see how often a package has been built successfully, but when is it successful? Does the entire build have to succeed or that package?  Overall, however, the autobuild infrastructure is considered very useful - when something is wrong, it appears in the autobuild very quickly.&lt;br /&gt;
#* autobuild of the next branch: if only the master is autobuilt, we don't see a lot of problems until after the release. Delaying fixing bugs makes it more difficult to fix them. To support autobuild of the next branch, this should also be made visible in the database so we can distinguish master failures (more important) from next failures.&lt;br /&gt;
#* autobuild database is not suitable to track repeated builds of the same configuration.  It needs to keep track of different builds of the same configurations.  But the question is if this is really useful. We would like to check the existing defconfigs at every release, but it doesn't have to be tracked.  So it can be done manually.&lt;br /&gt;
# AVR32. It is end of life as far as Atmel is concerned, but of course there are still products out there using it.  It is not really blocking for buildroot.  For packages which fail to build, we can just add a ''depends on !BR2_avr32''.  But of course, until we have the AVAILABLE mechanism, carrying this kind of dependency can be painful.&lt;br /&gt;
# RPC support. Originally, the idea was to consider RPC support as a toolchain option, i.e. using ''depends''.  However, libtirpc is really a library, comparable to gettext, so it could be enabled automatically with ''select''.  Busybox is special, because we don't want to force RPC just because busybox is selected.  Therefore busybox has a user-selectable option to enable RPC-based applets (mount-nfs).  After discussion, this option was discarded - just remove mount-nfs from busybox (see below).  Other packages will use libtirpc if it was selected (manually or automatically). It's still a question what will happen when dynamically linking against libtirpc when libc also has rpc.&lt;br /&gt;
# A bit related: we'll disable mount-nfs in the default busybox config; if user disables RPC and enables mount-nfs in busybox, he'll get a compilation error.&lt;br /&gt;
# Support for VCS branches in packages: custom packages are often in a VCS and while developing, you want to track a branch of that VCS.  OVERRIDE_SRCDIR doesn't work very well because it means the user has to check everything out at the right version in the right location.  An alternative would be to teach OVERRIDE_SRCDIR about VCSes, so that ''make foo-rebuild'' re-syncs with the VCS.&lt;br /&gt;
# There is a general feeling (mainly from Thomas) that buildroot isn't very convenient during development of a project where several people are working on several components. But no solution was found.&lt;br /&gt;
# FP stuff: we now have a single SOFT_FLOAT option, but actually there's a lot more variation: neon, vfpv3, softfp, ....  To support this well, we can add a lot of extra config options to semi-automatically select the correct float options based on the subarchitecture.  There is some cross-dependency with the external toolchains, but it's doable.  There should still be an option to manually override the float options for exotic cases.  ARM thumb adds another layer of complexity.  Someone should take the lead on making this easier.&lt;br /&gt;
# Porting gcc to the generic package infrastructure.  Looks like this is a lot of work, and there's not so much need for it.&lt;br /&gt;
# Getting gcc from git.  It's more convenient to put a tarball somewhere public and use that as an alternative source, similar to avr32.&lt;br /&gt;
# Download helpers are getting too complex.  It should move a script so at least it's more readable.&lt;br /&gt;
# Community organization:&lt;br /&gt;
#* It can be useful to have subsystem maintainers, that are responsible for reviewing and accepting patches.  In practice, however, it is difficult to split things in a way that we don't risk duplicating work (i.e. two people in the process of merging the same patch).  However, one clearly defined subsystem is the documentation.  From now on, Samuel Martin is responsible for all documentation patches.  He'll send pull requests to Peter.&lt;br /&gt;
#* Patches should be accepted more aggressively, even if there hasn't been (much) testing of the patch.  The autobuilders will catch any issues.  However, it is still important to properly review and comment on coding style issues (i.e. how the features are implemented.  Also, if something really breaks the autobuilder, Thomas can revert it without consulting Peter.&lt;br /&gt;
# Out of tree build: this is a feature that people keep on asking. It is particularly useful for packages with an OVERRIDE_SRCDIR.  But of course, not all packages support out-of-tree build, and not all packages support it in the same way.  For autotools and cmake, it can be automatic; for generic packages, it has to be signalled if out-of-tree build is available.&lt;br /&gt;
# legal-info:&lt;br /&gt;
#* split _LICENSE and _REDISTRIBUTE: patch proposed by Luca is accepted. Even though there is no proprietary package in buildroot that triggers the feature, if it fails to work as expected the user will hopefully report it.&lt;br /&gt;
#* multiple licenses: we don't want to make things very complex.  It doesn't have to be machine-readable (we don't need to support machine analysis of the license field), so we don't have to formally decide how the license text must be written.  It does make sense to have some convention, though.  Proposal: &amp;quot;GPLv2+ or BSD-2c for the library, GPLv2+ for the dtc executable&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
For tomorrow:&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed.  Arriving on Fri Nov 2 20:35 at BCN airport.  Leaving Wed Nov. 8 21:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on November, 3rd at BCN airport 9:25 AM. Leaving on November 8th from BCN airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# Maxime Ripard, confirmed. Arriving on November, 1st at BCN airport. Leaving on November 8th from BCP airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed, Arriving on Fri Nov 2 21:55 at BCN airport. Leaving Sun Nov 11 17:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# Luca Ceresoli, confirmed. Arriving on November 3rd at BCN airport 10:05 AM. Leaving on November 7th from BCN airport 19:15 PM. Staying at Hotel Fira Palace. Will arrive around 11:30 AM for the meeting.&lt;br /&gt;
# Samuel Martin, confirmed. Arriving on November, 3rd at Barcelona-Franca Train Station 8:05 AM. Leaving on November 10th from Barcelona-Franca Train Station at 8:43 PM.&lt;br /&gt;
# Simon Dawson, confirmed. Arriving on November 2nd in the evening. Leaving on November 8th early morning.&lt;br /&gt;
# Mischa Jonker, confirmed. From Synopsys.com. Not contributing yet to Buildroot, but interested in using Buildroot for a brand new CPU architecture. Arriving Friday Nov 2nd BCN 21:10 CET, staying at Catalonia Barcelona Plaza (Plaza Espanya), leaving Thursday Nov 8 at 18:40 CET.&lt;br /&gt;
# Maxime Hadjinlian.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
=== Program ===&lt;br /&gt;
&lt;br /&gt;
* Saturday, 10 AM: beginning of the meeting. The first person to arrive can go directly to the front desk and ask for MARIBEL SOCIAS or anyone in the Reservations Department, and then ask for the meeting room booked for Thomas Petazzoni. [[User:ThomasPetazzoni|Thomas Petazzoni]] will only arrive at 10:30-11 AM.&lt;br /&gt;
* Saturday, 7 PM: end of the meeting&lt;br /&gt;
* Saturday, 8:30 PM: dinner sponsored by Synopsys&lt;br /&gt;
* Sunday, 10 AM: beginning of the meeting&lt;br /&gt;
* Sunday, 7 PM: end of the meeting&lt;br /&gt;
&lt;br /&gt;
=== Location ===&lt;br /&gt;
&lt;br /&gt;
The event will take place at [http://www.hotelgrumsbarcelona.com/ Hotel Grumps], in downtown Barcelona. See [http://goo.gl/maps/htYi9 this map] for the location of the hotel, and [http://goo.gl/maps/GdiaM this map] for walking directions between the Fira Palace hotel (location of the ELCE conference) and Hotel Grums.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* Autobuilder tests: needed improvements, future work. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to use a git repository as source for toolchain. This doesn't work well today. Proposed by Mischa Jonker&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Does it make sense to port the toolchains to generic-package infrastructure? Asked by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Should we remove the ability to build a toolchain on the target? And also things like development files on target, documentation on target, etc. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
&lt;br /&gt;
=== List of topics to hack on ===&lt;br /&gt;
&lt;br /&gt;
* Reduce the back log of bugs. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Reduce the back log of patches. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Work on noMMU platform support (Blackfin, Coldfire). Getting Coldfire Qemu working, adding correct support for FLAT binaries. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Package upgrades: package python3, gtk3 and latest versions of glib and al. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Triage autobuilder failures and fix them. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Improve the documentation. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Work on relocatable toolchain. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for setup.py/qmake based packages. Proposed by Samuel Martin&lt;br /&gt;
* Add some infra for make based packages (mainly using the same pattern all over). Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for Kconfig based packages (linux, barebox, busybox, uclibc, ct-ng, at91bootstrap3).  Proposed by Arnout Vandecappelle&lt;br /&gt;
* Make top-level make -j possible.  Proposed by Arnout Vandecappelle&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysELCE2012</id>
		<title>Buildroot:DeveloperDaysELCE2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysELCE2012"/>
				<updated>2012-11-04T16:44:47Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: /* Report of the meeting */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 3-4 November 2012, Barcelona Spain ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Meeting in Barcelona ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Saturday November 3rd and Sunday November 4th, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right before the Embedded Linux Conference Europe, in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
=== Event sponsored by Fluendo and Synopsys ===&lt;br /&gt;
&lt;br /&gt;
The meeting room is sponsored  by [http://www.fluendo.com Fluendo]. Thanks!&lt;br /&gt;
&lt;br /&gt;
The Saturday dinner is sponsored by [http://www.synopsys.com Synopsys]. Thanks!&lt;br /&gt;
&lt;br /&gt;
=== Report of the meeting ===&lt;br /&gt;
&lt;br /&gt;
==== Action points ====&lt;br /&gt;
* Accept perl series.&lt;br /&gt;
* Accept qemu series (after further review).&lt;br /&gt;
* Remove compiler on target.&lt;br /&gt;
* Remove development files on target.&lt;br /&gt;
* Remove documentation on target.&lt;br /&gt;
* Explain in the documentation why the above was done.&lt;br /&gt;
* Put httpd daemons outside BUSYBOX_SHOW_OTHERS.&lt;br /&gt;
* Move BUSYBOX_SHOW_OTHERS conditions to ''depends on'' inside the package Config.in&lt;br /&gt;
* busybox: disable mount-nfs in the default config.&lt;br /&gt;
* simplify patch logic: if pkg-version directory exists, use that; otherwise, use pkg-*.patch.&lt;br /&gt;
* Automate selection of correct FP and other compiler options based on subarchitecture.&lt;br /&gt;
* Move download helpers to a script.&lt;br /&gt;
* Samuel merges documentation patches and sends pull requests to Peter.&lt;br /&gt;
&lt;br /&gt;
==== Details of the discussion ====&lt;br /&gt;
&lt;br /&gt;
# Perl.  The perl patch series (now at v11) looks ready to be integrated, but we have our doubts about cpanminus. The problems are: it has separate download infrastructure, which blocks some buildroot features (e.g. make source); it doesn't integrate with the legal-info.  However, CPAN is pretty important if you really want to use perl.  The decision was to accept cpanminus as well, but add some warnings that some things don't work.&lt;br /&gt;
# Qemu.  Adding this opens the door for more people to do stuff that buildroot wasn't meant for in the first place (i.e. embedded).  However, even in embedded qemu could be relevant.  Things like the compiler on the target are much worse for doing crazy things.  Giving new packages a chance is OK; we have to be much more careful with things that have global impact (like including development files on target).  Conclusion: it's OK to accept qemu.&lt;br /&gt;
# Compiler on target.  It leads to newbies using buildroot in an inappropriate way (i.e. compile on the target).  Also it only works with the internal toolchain.  And if we remove it, we can also remove &amp;quot;Development files on target&amp;quot;, which simplifies some of the build infrastructure.  Also, if you have a compiler on the target, then you can just as well use a distro.  Conclusion: we remove it.  Also a bunch of other packages can be removed (autotools, vala, ...)&lt;br /&gt;
# Documentation on target: if you need this, use a distro.  So we remove it.&lt;br /&gt;
# We need to explain in the documentation why we removed this stuff.&lt;br /&gt;
# Available stuff: i.e. solve the problem of combination of ''select'' and ''depends''. Solving it in Kconfig itself seems to be difficult: there were some patches but the kconfig people didn't like it; Yann and Thomas looked at Kconfig and it looks difficult to modify.  The AVAILABLE solution has two problems: it adds verbosity, and the recursive dependencies still should be written in the comments (&amp;quot;libfoo requires WCHAR in the toolchain&amp;quot;).  The verbosity is not considered a big issue.  For the comments: they currently don't work perfectly either.  Removing the comments altogether is an option, but then it is difficult for users to find out why a certain package isn't available.  Another possibility is to list the available packages in the documentation (automatically), and mention which toolchain dependencies they have.  Wild idea: consider Config.in as a low-level language, and define our own higher-level language from which we generate Config.in.  Alternatively, have a developer tool that verifies if everything is consistent (i.e. are the comments correct).  One more option: add a big comment in the beginning of the packages list, which says that not all toolchain options are available so not all packages are visible.  Converting the toolchain options from ''depends'' to ''select'' is not really an option, because changing toolchain options requires a make clean.  We didn't reach a conclusion, we'll come back to it tomorrow.&lt;br /&gt;
# kconfig-frontend: Yann now has a repository for Kconfig, it would be nice to branch our Kconfig from that.  The idea is to still copy it to our repository.&lt;br /&gt;
# BUSYBOX_SHOW_OTHERS: the only reason to have this is to avoid newcomers enabling things like tar etc. which are anyway already in busybox.  But for the web servers, they are clearly different from the busybox web servers (and our default busybox config doesn't even enable a web server).  Also bash is a typical one, because people write bashisms in their scripts.  This discussion is somewhat related to the discussion how to handle packages that provide the same functionality.  But for many packages, it's not even the same (httpd, bash, vim).  But actually, we're trying to solve a non-existent problem here - except for the web servers.  If we generate a list of packages in the documentation, we can add a remark to that that it's also available in busybox.  Also move the condition inside the package Config.in instead of outside and make it a ''depends on'', so it is more visible.&lt;br /&gt;
# packages with multiple variants: python2/3, Qt4/5, gtk2/3, gstreamer0.10/1.0...  This is again similar to the expat/libxml2 issue.  Do we support both python2 and python3? We need to support both versions in most cases. Question is if we want to force that only one of the two is selected, or do we support side-by-side installation.  Conclusion: has to be looked at on a case-by-case basis.  General philosophy: don't try to be too smart, so don't try to force selecting only one of the two if it doesn't make sense to have both.  In cases where a package wants to ''select'' one of these things, convert the ''select'' into a ''depends'' with a comment.  For gstreamer, the complexity of having the two side-by-side is unacceptable, because there are so many fine-grained gstreamer configure options (in the plugins).  However, we expect that everything will move to gstreamer1.0 quite quickly, so for the time being (and only if someone needs it), we can live with a non-perfect solution that just fits the requirements of whoever needs gstreamer1.0.&lt;br /&gt;
# multiple packages providing the same functionality: lua/luajit, jpeg/jpegturbo, expat/libxml2.  These cannot be installed side-by-side, and many packages select e.g. jpeg.  OpenGL will have this issue as well.  A relatively clean solution is to create virtual packages for these, where the user has a choice between the two.  The normal config option would be hidden for these packages.  This still adds complexity in some corner cases, e.g. some package that doesn't work in luajit, but that can probably be solved at the level of that package.&lt;br /&gt;
# Autobuild infrastructure. Thomas is working on scripts that parse the build result and put it in a database.  One important missing feature at the moment is visibility of evolution over time (i.e. distinguish regressions from recurring problems).  Even more important is just being able to see which packages are failing all the time, i.e. for each package how often it failed.  Ideally, we would also want to see how often a package has been built successfully, but when is it successful? Does the entire build have to succeed or that package?  Overall, however, the autobuild infrastructure is considered very useful - when something is wrong, it appears in the autobuild very quickly.&lt;br /&gt;
#* autobuild of the next branch: if only the master is autobuilt, we don't see a lot of problems until after the release. Delaying fixing bugs makes it more difficult to fix them. To support autobuild of the next branch, this should also be made visible in the database so we can distinguish master failures (more important) from next failures.&lt;br /&gt;
#* autobuild database is not suitable to track repeated builds of the same configuration.  It needs to keep track of different builds of the same configurations.  But the question is if this is really useful. We would like to check the existing defconfigs at every release, but it doesn't have to be tracked.  So it can be done manually.&lt;br /&gt;
# AVR32. It is end of life as far as Atmel is concerned, but of course there are still products out there using it.  It is not really blocking for buildroot.  For packages which fail to build, we can just add a ''depends on !BR2_avr32''.  But of course, until we have the AVAILABLE mechanism, carrying this kind of dependency can be painful.&lt;br /&gt;
# RPC support. Originally, the idea was to consider RPC support as a toolchain option, i.e. using ''depends''.  However, libtirpc is really a library, comparable to gettext, so it could be enabled automatically with ''select''.  Busybox is special, because we don't want to force RPC just because busybox is selected.  Therefore busybox has a user-selectable option to enable RPC-based applets (mount-nfs).  After discussion, this option was discarded - just remove mount-nfs from busybox (see below).  Other packages will use libtirpc if it was selected (manually or automatically). It's still a question what will happen when dynamically linking against libtirpc when libc also has rpc.&lt;br /&gt;
# A bit related: we'll disable mount-nfs in the default busybox config; if user disables RPC and enables mount-nfs in busybox, he'll get a compilation error.&lt;br /&gt;
# Support for VCS branches in packages: custom packages are often in a VCS and while developing, you want to track a branch of that VCS.  OVERRIDE_SRCDIR doesn't work very well because it means the user has to check everything out at the right version in the right location.  An alternative would be to teach OVERRIDE_SRCDIR about VCSes, so that ''make foo-rebuild'' re-syncs with the VCS.&lt;br /&gt;
# There is a general feeling (mainly from Thomas) that buildroot isn't very convenient during development of a project where several people are working on several components. But no solution was found.&lt;br /&gt;
# FP stuff: we now have a single SOFT_FLOAT option, but actually there's a lot more variation: neon, vfpv3, softfp, ....  To support this well, we can add a lot of extra config options to semi-automatically select the correct float options based on the subarchitecture.  There is some cross-dependency with the external toolchains, but it's doable.  There should still be an option to manually override the float options for exotic cases.  ARM thumb adds another layer of complexity.  Someone should take the lead on making this easier.&lt;br /&gt;
# Porting gcc to the generic package infrastructure.  Looks like this is a lot of work, and there's not so much need for it.&lt;br /&gt;
# Getting gcc from git.  It's more convenient to put a tarball somewhere public and use that as an alternative source, similar to avr32.&lt;br /&gt;
# Download helpers are getting too complex.  It should move a script so at least it's more readable.&lt;br /&gt;
# Community organization:&lt;br /&gt;
#* It can be useful to have subsystem maintainers, that are responsible for reviewing and accepting patches.  In practice, however, it is difficult to split things in a way that we don't risk duplicating work (i.e. two people in the process of merging the same patch).  However, one clearly defined subsystem is the documentation.  From now on, Samuel Martin is responsible for all documentation patches.  He'll send pull requests to Peter.&lt;br /&gt;
#* Patches should be accepted more aggressively, even if there hasn't been (much) testing of the patch.  The autobuilders will catch any issues.  However, it is still important to properly review and comment on coding style issues (i.e. how the features are implemented.  Also, if something really breaks the autobuilder, Thomas can revert it without consulting Peter.&lt;br /&gt;
# Out of tree build: this is a feature that people keep on asking. It is particularly useful for packages with an OVERRIDE_SRCDIR.  But of course, not all packages support out-of-tree build, and not all packages support it in the same way.  For autotools and cmake, it can be automatic; for generic packages, it has to be signalled if out-of-tree build is available.&lt;br /&gt;
# legal-info:&lt;br /&gt;
#* split _LICENSE and _REDISTRIBUTE: patch proposed by Luca is accepted. Even though there is no proprietary package in buildroot that triggers the feature, if it fails to work as expected the user will hopefully report it.&lt;br /&gt;
#* multiple licenses: we don't want to make things very complex.  It doesn't have to be machine-readable (we don't need to support machine analysis of the license field), so we don't have to formally decide how the license text must be written.  It does make sense to have some convention, though.  Proposal: &amp;quot;GPLv2+ or BSD-2c for the library, GPLv2+ for the dtc executable&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
For tomorrow:&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed.  Arriving on Fri Nov 2 20:35 at BCN airport.  Leaving Wed Nov. 8 21:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on November, 3rd at BCN airport 9:25 AM. Leaving on November 8th from BCN airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# Maxime Ripard, confirmed. Arriving on November, 1st at BCN airport. Leaving on November 8th from BCP airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed, Arriving on Fri Nov 2 21:55 at BCN airport. Leaving Sun Nov 11 17:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# Luca Ceresoli, confirmed. Arriving on November 3rd at BCN airport 10:05 AM. Leaving on November 7th from BCN airport 19:15 PM. Staying at Hotel Fira Palace. Will arrive around 11:30 AM for the meeting.&lt;br /&gt;
# Samuel Martin, confirmed. Arriving on November, 3rd at Barcelona-Franca Train Station 8:05 AM. Leaving on November 10th from Barcelona-Franca Train Station at 8:43 PM.&lt;br /&gt;
# Simon Dawson, confirmed. Arriving on November 2nd in the evening. Leaving on November 8th early morning.&lt;br /&gt;
# Mischa Jonker, confirmed. From Synopsys.com. Not contributing yet to Buildroot, but interested in using Buildroot for a brand new CPU architecture. Arriving Friday Nov 2nd BCN 21:10 CET, staying at Catalonia Barcelona Plaza (Plaza Espanya), leaving Thursday Nov 8 at 18:40 CET.&lt;br /&gt;
# Maxime Hadjinlian.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
=== Program ===&lt;br /&gt;
&lt;br /&gt;
* Saturday, 10 AM: beginning of the meeting. The first person to arrive can go directly to the front desk and ask for MARIBEL SOCIAS or anyone in the Reservations Department, and then ask for the meeting room booked for Thomas Petazzoni. [[User:ThomasPetazzoni|Thomas Petazzoni]] will only arrive at 10:30-11 AM.&lt;br /&gt;
* Saturday, 7 PM: end of the meeting&lt;br /&gt;
* Saturday, 8:30 PM: dinner sponsored by Synopsys&lt;br /&gt;
* Sunday, 10 AM: beginning of the meeting&lt;br /&gt;
* Sunday, 7 PM: end of the meeting&lt;br /&gt;
&lt;br /&gt;
=== Location ===&lt;br /&gt;
&lt;br /&gt;
The event will take place at [http://www.hotelgrumsbarcelona.com/ Hotel Grumps], in downtown Barcelona. See [http://goo.gl/maps/htYi9 this map] for the location of the hotel, and [http://goo.gl/maps/GdiaM this map] for walking directions between the Fira Palace hotel (location of the ELCE conference) and Hotel Grums.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* Autobuilder tests: needed improvements, future work. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to use a git repository as source for toolchain. This doesn't work well today. Proposed by Mischa Jonker&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Does it make sense to port the toolchains to generic-package infrastructure? Asked by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Should we remove the ability to build a toolchain on the target? And also things like development files on target, documentation on target, etc. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
&lt;br /&gt;
=== List of topics to hack on ===&lt;br /&gt;
&lt;br /&gt;
* Reduce the back log of bugs. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Reduce the back log of patches. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Work on noMMU platform support (Blackfin, Coldfire). Getting Coldfire Qemu working, adding correct support for FLAT binaries. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Package upgrades: package python3, gtk3 and latest versions of glib and al. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Triage autobuilder failures and fix them. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Improve the documentation. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Work on relocatable toolchain. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for setup.py/qmake based packages. Proposed by Samuel Martin&lt;br /&gt;
* Add some infra for make based packages (mainly using the same pattern all over). Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for Kconfig based packages (linux, barebox, busybox, uclibc, ct-ng, at91bootstrap3).  Proposed by Arnout Vandecappelle&lt;br /&gt;
* Make top-level make -j possible.  Proposed by Arnout Vandecappelle&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysELCE2012</id>
		<title>Buildroot:DeveloperDaysELCE2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysELCE2012"/>
				<updated>2012-11-04T16:31:12Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: /* Report of the meeting */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 3-4 November 2012, Barcelona Spain ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Meeting in Barcelona ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Saturday November 3rd and Sunday November 4th, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right before the Embedded Linux Conference Europe, in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
=== Event sponsored by Fluendo and Synopsys ===&lt;br /&gt;
&lt;br /&gt;
The meeting room is sponsored  by [http://www.fluendo.com Fluendo]. Thanks!&lt;br /&gt;
&lt;br /&gt;
The Saturday dinner is sponsored by [http://www.synopsys.com Synopsys]. Thanks!&lt;br /&gt;
&lt;br /&gt;
=== Report of the meeting ===&lt;br /&gt;
&lt;br /&gt;
==== Action points ====&lt;br /&gt;
* Accept perl series.&lt;br /&gt;
* Accept qemu series (after further review).&lt;br /&gt;
* Remove compiler on target.&lt;br /&gt;
* Remove development files on target.&lt;br /&gt;
* Remove documentation on target.&lt;br /&gt;
* Explain in the documentation why the above was done.&lt;br /&gt;
* Put httpd daemons outside BUSYBOX_SHOW_OTHERS.&lt;br /&gt;
* Move BUSYBOX_SHOW_OTHERS conditions to ''depends on'' inside the package Config.in&lt;br /&gt;
* busybox: disable mount-nfs in the default config.&lt;br /&gt;
* simplify patch logic: if pkg-version directory exists, use that; otherwise, use pkg-*.patch.&lt;br /&gt;
* Automate selection of correct FP and other compiler options based on subarchitecture.&lt;br /&gt;
* Move download helpers to a script.&lt;br /&gt;
* Samuel merges documentation patches and sends pull requests to Peter.&lt;br /&gt;
&lt;br /&gt;
==== Details of the discussion ====&lt;br /&gt;
&lt;br /&gt;
# Perl.  The perl patch series (now at v11) looks ready to be integrated, but we have our doubts about cpanminus. The problems are: it has separate download infrastructure, which blocks some buildroot features (e.g. make source); it doesn't integrate with the legal-info.  However, CPAN is pretty important if you really want to use perl.  The decision was to accept cpanminus as well, but add some warnings that some things don't work.&lt;br /&gt;
# Qemu.  Adding this opens the door for more people to do stuff that buildroot wasn't meant for in the first place (i.e. embedded).  However, even in embedded qemu could be relevant.  Things like the compiler on the target are much worse for doing crazy things.  Giving new packages a chance is OK; we have to be much more careful with things that have global impact (like including development files on target).  Conclusion: it's OK to accept qemu.&lt;br /&gt;
# Compiler on target.  It leads to newbies using buildroot in an inappropriate way (i.e. compile on the target).  Also it only works with the internal toolchain.  And if we remove it, we can also remove &amp;quot;Development files on target&amp;quot;, which simplifies some of the build infrastructure.  Also, if you have a compiler on the target, then you can just as well use a distro.  Conclusion: we remove it.  Also a bunch of other packages can be removed (autotools, vala, ...)&lt;br /&gt;
# Documentation on target: if you need this, use a distro.  So we remove it.&lt;br /&gt;
# We need to explain in the documentation why we removed this stuff.&lt;br /&gt;
# Available stuff: i.e. solve the problem of combination of ''select'' and ''depends''. Solving it in Kconfig itself seems to be difficult: there were some patches but the kconfig people didn't like it; Yann and Thomas looked at Kconfig and it looks difficult to modify.  The AVAILABLE solution has two problems: it adds verbosity, and the recursive dependencies still should be written in the comments (&amp;quot;libfoo requires WCHAR in the toolchain&amp;quot;).  The verbosity is not considered a big issue.  For the comments: they currently don't work perfectly either.  Removing the comments altogether is an option, but then it is difficult for users to find out why a certain package isn't available.  Another possibility is to list the available packages in the documentation (automatically), and mention which toolchain dependencies they have.  Wild idea: consider Config.in as a low-level language, and define our own higher-level language from which we generate Config.in.  Alternatively, have a developer tool that verifies if everything is consistent (i.e. are the comments correct).  One more option: add a big comment in the beginning of the packages list, which says that not all toolchain options are available so not all packages are visible.  Converting the toolchain options from ''depends'' to ''select'' is not really an option, because changing toolchain options requires a make clean.  We didn't reach a conclusion, we'll come back to it tomorrow.&lt;br /&gt;
# kconfig-frontend: Yann now has a repository for Kconfig, it would be nice to branch our Kconfig from that.  The idea is to still copy it to our repository.&lt;br /&gt;
# BUSYBOX_SHOW_OTHERS: the only reason to have this is to avoid newcomers enabling things like tar etc. which are anyway already in busybox.  But for the web servers, they are clearly different from the busybox web servers (and our default busybox config doesn't even enable a web server).  Also bash is a typical one, because people write bashisms in their scripts.  This discussion is somewhat related to the discussion how to handle packages that provide the same functionality.  But for many packages, it's not even the same (httpd, bash, vim).  But actually, we're trying to solve a non-existent problem here - except for the web servers.  If we generate a list of packages in the documentation, we can add a remark to that that it's also available in busybox.  Also move the condition inside the package Config.in instead of outside and make it a ''depends on'', so it is more visible.&lt;br /&gt;
# packages with multiple variants: python2/3, Qt4/5, gtk2/3, gstreamer0.10/1.0...  This is again similar to the expat/libxml2 issue.  Do we support both python2 and python3? We need to support both versions in most cases. Question is if we want to force that only one of the two is selected, or do we support side-by-side installation.  Conclusion: has to be looked at on a case-by-case basis.  General philosophy: don't try to be too smart, so don't try to force selecting only one of the two if it doesn't make sense to have both.  In cases where a package wants to ''select'' one of these things, convert the ''select'' into a ''depends'' with a comment.  For gstreamer, the complexity of having the two side-by-side is unacceptable, because there are so many fine-grained gstreamer configure options (in the plugins).  However, we expect that everything will move to gstreamer1.0 quite quickly, so for the time being (and only if someone needs it), we can live with a non-perfect solution that just fits the requirements of whoever needs gstreamer1.0.&lt;br /&gt;
# multiple packages providing the same functionality: lua/luajit, jpeg/jpegturbo, expat/libxml2.  These cannot be installed side-by-side, and many packages select e.g. jpeg.  OpenGL will have this issue as well.  A relatively clean solution is to create virtual packages for these, where the user has a choice between the two.  The normal config option would be hidden for these packages.  This still adds complexity in some corner cases, e.g. some package that doesn't work in luajit, but that can probably be solved at the level of that package.&lt;br /&gt;
# Autobuild infrastructure. Thomas is working on scripts that parse the build result and put it in a database.  One important missing feature at the moment is visibility of evolution over time (i.e. distinguish regressions from recurring problems).  Even more important is just being able to see which packages are failing all the time, i.e. for each package how often it failed.  Ideally, we would also want to see how often a package has been built successfully, but when is it successful? Does the entire build have to succeed or that package?  Overall, however, the autobuild infrastructure is considered very useful - when something is wrong, it appears in the autobuild very quickly.&lt;br /&gt;
#* autobuild of the next branch: if only the master is autobuilt, we don't see a lot of problems until after the release. Delaying fixing bugs makes it more difficult to fix them. To support autobuild of the next branch, this should also be made visible in the database so we can distinguish master failures (more important) from next failures.&lt;br /&gt;
#* autobuild database is not suitable to track repeated builds of the same configuration.  It needs to keep track of different builds of the same configurations.  But the question is if this is really useful. We would like to check the existing defconfigs at every release, but it doesn't have to be tracked.  So it can be done manually.&lt;br /&gt;
# AVR32. It is end of life as far as Atmel is concerned, but of course there are still products out there using it.  It is not really blocking for buildroot.  For packages which fail to build, we can just add a ''depends on !BR2_avr32''.  But of course, until we have the AVAILABLE mechanism, carrying this kind of dependency can be painful.&lt;br /&gt;
# RPC support. Originally, the idea was to consider RPC support as a toolchain option, i.e. using ''depends''.  However, libtirpc is really a library, comparable to gettext, so it could be enabled automatically with ''select''.  Busybox is special, because we don't want to force RPC just because busybox is selected.  Therefore busybox has a user-selectable option to enable RPC-based applets (mount-nfs).  After discussion, this option was discarded - just remove mount-nfs from busybox (see below).  Other packages will use libtirpc if it was selected (manually or automatically). It's still a question what will happen when dynamically linking against libtirpc when libc also has rpc.&lt;br /&gt;
# A bit related: we'll disable mount-nfs in the default busybox config; if user disables RPC and enables mount-nfs in busybox, he'll get a compilation error.&lt;br /&gt;
# Support for VCS branches in packages: custom packages are often in a VCS and while developing, you want to track a branch of that VCS.  OVERRIDE_SRCDIR doesn't work very well because it means the user has to check everything out at the right version in the right location.  An alternative would be to teach OVERRIDE_SRCDIR about VCSes, so that ''make foo-rebuild'' re-syncs with the VCS.&lt;br /&gt;
# There is a general feeling (mainly from Thomas) that buildroot isn't very convenient during development of a project where several people are working on several components. But no solution was found.&lt;br /&gt;
# FP stuff: we now have a single SOFT_FLOAT option, but actually there's a lot more variation: neon, vfpv3, softfp, ....  To support this well, we can add a lot of extra config options to semi-automatically select the correct float options based on the subarchitecture.  There is some cross-dependency with the external toolchains, but it's doable.  There should still be an option to manually override the float options for exotic cases.  ARM thumb adds another layer of complexity.  Someone should take the lead on making this easier.&lt;br /&gt;
# Porting gcc to the generic package infrastructure.  Looks like this is a lot of work, and there's not so much need for it.&lt;br /&gt;
# Getting gcc from git.  It's more convenient to put a tarball somewhere public and use that as an alternative source, similar to avr32.&lt;br /&gt;
# Download helpers are getting too complex.  It should move a script so at least it's more readable.&lt;br /&gt;
# Community organization:&lt;br /&gt;
#* It can be useful to have subsystem maintainers, that are responsible for reviewing and accepting patches.  In practice, however, it is difficult to split things in a way that we don't risk duplicating work (i.e. two people in the process of merging the same patch).  However, one clearly defined subsystem is the documentation.  From now on, Samuel Martin is responsible for all documentation patches.  He'll send pull requests to Peter.&lt;br /&gt;
#* Patches should be accepted more aggressively, even if there hasn't been (much) testing of the patch.  The autobuilders will catch any issues.  However, it is still important to properly review and comment on coding style issues (i.e. how the features are implemented.  Also, if something really breaks the autobuilder, Thomas can revert it without consulting Peter.&lt;br /&gt;
# Out of tree build: this is a feature that people keep on asking. It is particularly useful for packages with an OVERRIDE_SRCDIR.  But of course, not all packages support out-of-tree build, and not all packages support it in the same way.  For autotools and cmake, it can be automatic; for generic packages, it has to be signalled if out-of-tree build is available.&lt;br /&gt;
# legal-info:&lt;br /&gt;
#* split _LICENSE and _REDISTRIBUTE: patch proposed by Luca is accepted. Even though there is no proprietary package in buildroot that triggers the feature, if it fails to work as expected the user will hopefully report it.&lt;br /&gt;
&lt;br /&gt;
For tomorrow:&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed.  Arriving on Fri Nov 2 20:35 at BCN airport.  Leaving Wed Nov. 8 21:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on November, 3rd at BCN airport 9:25 AM. Leaving on November 8th from BCN airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# Maxime Ripard, confirmed. Arriving on November, 1st at BCN airport. Leaving on November 8th from BCP airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed, Arriving on Fri Nov 2 21:55 at BCN airport. Leaving Sun Nov 11 17:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# Luca Ceresoli, confirmed. Arriving on November 3rd at BCN airport 10:05 AM. Leaving on November 7th from BCN airport 19:15 PM. Staying at Hotel Fira Palace. Will arrive around 11:30 AM for the meeting.&lt;br /&gt;
# Samuel Martin, confirmed. Arriving on November, 3rd at Barcelona-Franca Train Station 8:05 AM. Leaving on November 10th from Barcelona-Franca Train Station at 8:43 PM.&lt;br /&gt;
# Simon Dawson, confirmed. Arriving on November 2nd in the evening. Leaving on November 8th early morning.&lt;br /&gt;
# Mischa Jonker, confirmed. From Synopsys.com. Not contributing yet to Buildroot, but interested in using Buildroot for a brand new CPU architecture. Arriving Friday Nov 2nd BCN 21:10 CET, staying at Catalonia Barcelona Plaza (Plaza Espanya), leaving Thursday Nov 8 at 18:40 CET.&lt;br /&gt;
# Maxime Hadjinlian.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
=== Program ===&lt;br /&gt;
&lt;br /&gt;
* Saturday, 10 AM: beginning of the meeting. The first person to arrive can go directly to the front desk and ask for MARIBEL SOCIAS or anyone in the Reservations Department, and then ask for the meeting room booked for Thomas Petazzoni. [[User:ThomasPetazzoni|Thomas Petazzoni]] will only arrive at 10:30-11 AM.&lt;br /&gt;
* Saturday, 7 PM: end of the meeting&lt;br /&gt;
* Saturday, 8:30 PM: dinner sponsored by Synopsys&lt;br /&gt;
* Sunday, 10 AM: beginning of the meeting&lt;br /&gt;
* Sunday, 7 PM: end of the meeting&lt;br /&gt;
&lt;br /&gt;
=== Location ===&lt;br /&gt;
&lt;br /&gt;
The event will take place at [http://www.hotelgrumsbarcelona.com/ Hotel Grumps], in downtown Barcelona. See [http://goo.gl/maps/htYi9 this map] for the location of the hotel, and [http://goo.gl/maps/GdiaM this map] for walking directions between the Fira Palace hotel (location of the ELCE conference) and Hotel Grums.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* Autobuilder tests: needed improvements, future work. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to use a git repository as source for toolchain. This doesn't work well today. Proposed by Mischa Jonker&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Does it make sense to port the toolchains to generic-package infrastructure? Asked by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Should we remove the ability to build a toolchain on the target? And also things like development files on target, documentation on target, etc. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
&lt;br /&gt;
=== List of topics to hack on ===&lt;br /&gt;
&lt;br /&gt;
* Reduce the back log of bugs. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Reduce the back log of patches. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Work on noMMU platform support (Blackfin, Coldfire). Getting Coldfire Qemu working, adding correct support for FLAT binaries. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Package upgrades: package python3, gtk3 and latest versions of glib and al. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Triage autobuilder failures and fix them. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Improve the documentation. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Work on relocatable toolchain. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for setup.py/qmake based packages. Proposed by Samuel Martin&lt;br /&gt;
* Add some infra for make based packages (mainly using the same pattern all over). Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for Kconfig based packages (linux, barebox, busybox, uclibc, ct-ng, at91bootstrap3).  Proposed by Arnout Vandecappelle&lt;br /&gt;
* Make top-level make -j possible.  Proposed by Arnout Vandecappelle&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysELCE2012</id>
		<title>Buildroot:DeveloperDaysELCE2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysELCE2012"/>
				<updated>2012-11-04T12:29:58Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: /* Report of the meeting */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 3-4 November 2012, Barcelona Spain ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Meeting in Barcelona ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Saturday November 3rd and Sunday November 4th, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right before the Embedded Linux Conference Europe, in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
=== Event sponsored by Fluendo and Synopsys ===&lt;br /&gt;
&lt;br /&gt;
The meeting room is sponsored  by [http://www.fluendo.com Fluendo]. Thanks!&lt;br /&gt;
&lt;br /&gt;
The Saturday dinner is sponsored by [http://www.synopsys.com Synopsys]. Thanks!&lt;br /&gt;
&lt;br /&gt;
=== Report of the meeting ===&lt;br /&gt;
&lt;br /&gt;
==== Action points ====&lt;br /&gt;
* Accept perl series.&lt;br /&gt;
* Accept qemu series (after further review).&lt;br /&gt;
* Remove compiler on target.&lt;br /&gt;
* Remove development files on target.&lt;br /&gt;
* Remove documentation on target.&lt;br /&gt;
* Explain in the documentation why the above was done.&lt;br /&gt;
* Put httpd daemons outside BUSYBOX_SHOW_OTHERS.&lt;br /&gt;
* Move BUSYBOX_SHOW_OTHERS conditions to ''depends on'' inside the package Config.in&lt;br /&gt;
* busybox: disable mount-nfs in the default config.&lt;br /&gt;
* simplify patch logic: if pkg-version directory exists, use that; otherwise, use pkg-*.patch.&lt;br /&gt;
* Automate selection of correct FP and other compiler options based on subarchitecture.&lt;br /&gt;
* Move download helpers to a script.&lt;br /&gt;
&lt;br /&gt;
==== Details of the discussion ====&lt;br /&gt;
&lt;br /&gt;
# Perl.  The perl patch series (now at v11) looks ready to be integrated, but we have our doubts about cpanminus. The problems are: it has separate download infrastructure, which blocks some buildroot features (e.g. make source); it doesn't integrate with the legal-info.  However, CPAN is pretty important if you really want to use perl.  The decision was to accept cpanminus as well, but add some warnings that some things don't work.&lt;br /&gt;
# Qemu.  Adding this opens the door for more people to do stuff that buildroot wasn't meant for in the first place (i.e. embedded).  However, even in embedded qemu could be relevant.  Things like the compiler on the target are much worse for doing crazy things.  Giving new packages a chance is OK; we have to be much more careful with things that have global impact (like including development files on target).  Conclusion: it's OK to accept qemu.&lt;br /&gt;
# Compiler on target.  It leads to newbies using buildroot in an inappropriate way (i.e. compile on the target).  Also it only works with the internal toolchain.  And if we remove it, we can also remove &amp;quot;Development files on target&amp;quot;, which simplifies some of the build infrastructure.  Also, if you have a compiler on the target, then you can just as well use a distro.  Conclusion: we remove it.  Also a bunch of other packages can be removed (autotools, vala, ...)&lt;br /&gt;
# Documentation on target: if you need this, use a distro.  So we remove it.&lt;br /&gt;
# We need to explain in the documentation why we removed this stuff.&lt;br /&gt;
# Available stuff: i.e. solve the problem of combination of ''select'' and ''depends''. Solving it in Kconfig itself seems to be difficult: there were some patches but the kconfig people didn't like it; Yann and Thomas looked at Kconfig and it looks difficult to modify.  The AVAILABLE solution has two problems: it adds verbosity, and the recursive dependencies still should be written in the comments (&amp;quot;libfoo requires WCHAR in the toolchain&amp;quot;).  The verbosity is not considered a big issue.  For the comments: they currently don't work perfectly either.  Removing the comments altogether is an option, but then it is difficult for users to find out why a certain package isn't available.  Another possibility is to list the available packages in the documentation (automatically), and mention which toolchain dependencies they have.  Wild idea: consider Config.in as a low-level language, and define our own higher-level language from which we generate Config.in.  Alternatively, have a developer tool that verifies if everything is consistent (i.e. are the comments correct).  One more option: add a big comment in the beginning of the packages list, which says that not all toolchain options are available so not all packages are visible.  Converting the toolchain options from ''depends'' to ''select'' is not really an option, because changing toolchain options requires a make clean.  We didn't reach a conclusion, we'll come back to it tomorrow.&lt;br /&gt;
# kconfig-frontend: Yann now has a repository for Kconfig, it would be nice to branch our Kconfig from that.  The idea is to still copy it to our repository.&lt;br /&gt;
# BUSYBOX_SHOW_OTHERS: the only reason to have this is to avoid newcomers enabling things like tar etc. which are anyway already in busybox.  But for the web servers, they are clearly different from the busybox web servers (and our default busybox config doesn't even enable a web server).  Also bash is a typical one, because people write bashisms in their scripts.  This discussion is somewhat related to the discussion how to handle packages that provide the same functionality.  But for many packages, it's not even the same (httpd, bash, vim).  But actually, we're trying to solve a non-existent problem here - except for the web servers.  If we generate a list of packages in the documentation, we can add a remark to that that it's also available in busybox.  Also move the condition inside the package Config.in instead of outside and make it a ''depends on'', so it is more visible.&lt;br /&gt;
# packages with multiple variants: python2/3, Qt4/5, gtk2/3, gstreamer0.10/1.0...  This is again similar to the expat/libxml2 issue.  Do we support both python2 and python3? We need to support both versions in most cases. Question is if we want to force that only one of the two is selected, or do we support side-by-side installation.  Conclusion: has to be looked at on a case-by-case basis.  General philosophy: don't try to be too smart, so don't try to force selecting only one of the two if it doesn't make sense to have both.  In cases where a package wants to ''select'' one of these things, convert the ''select'' into a ''depends'' with a comment.  For gstreamer, the complexity of having the two side-by-side is unacceptable, because there are so many fine-grained gstreamer configure options (in the plugins).  However, we expect that everything will move to gstreamer1.0 quite quickly, so for the time being (and only if someone needs it), we can live with a non-perfect solution that just fits the requirements of whoever needs gstreamer1.0.&lt;br /&gt;
# multiple packages providing the same functionality: lua/luajit, jpeg/jpegturbo, expat/libxml2.  These cannot be installed side-by-side, and many packages select e.g. jpeg.  OpenGL will have this issue as well.  A relatively clean solution is to create virtual packages for these, where the user has a choice between the two.  The normal config option would be hidden for these packages.  This still adds complexity in some corner cases, e.g. some package that doesn't work in luajit, but that can probably be solved at the level of that package.&lt;br /&gt;
# Autobuild infrastructure. Thomas is working on scripts that parse the build result and put it in a database.  One important missing feature at the moment is visibility of evolution over time (i.e. distinguish regressions from recurring problems).  Even more important is just being able to see which packages are failing all the time, i.e. for each package how often it failed.  Ideally, we would also want to see how often a package has been built successfully, but when is it successful? Does the entire build have to succeed or that package?  Overall, however, the autobuild infrastructure is considered very useful - when something is wrong, it appears in the autobuild very quickly.&lt;br /&gt;
#* autobuild of the next branch: if only the master is autobuilt, we don't see a lot of problems until after the release. Delaying fixing bugs makes it more difficult to fix them. To support autobuild of the next branch, this should also be made visible in the database so we can distinguish master failures (more important) from next failures.&lt;br /&gt;
#* autobuild database is not suitable to track repeated builds of the same configuration.  It needs to keep track of different builds of the same configurations.  But the question is if this is really useful. We would like to check the existing defconfigs at every release, but it doesn't have to be tracked.  So it can be done manually.&lt;br /&gt;
# AVR32. It is end of life as far as Atmel is concerned, but of course there are still products out there using it.  It is not really blocking for buildroot.  For packages which fail to build, we can just add a ''depends on !BR2_avr32''.  But of course, until we have the AVAILABLE mechanism, carrying this kind of dependency can be painful.&lt;br /&gt;
# RPC support. Originally, the idea was to consider RPC support as a toolchain option, i.e. using ''depends''.  However, libtirpc is really a library, comparable to gettext, so it could be enabled automatically with ''select''.  Busybox is special, because we don't want to force RPC just because busybox is selected.  Therefore busybox has a user-selectable option to enable RPC-based applets (mount-nfs).  After discussion, this option was discarded - just remove mount-nfs from busybox (see below).  Other packages will use libtirpc if it was selected (manually or automatically). It's still a question what will happen when dynamically linking against libtirpc when libc also has rpc.&lt;br /&gt;
# A bit related: we'll disable mount-nfs in the default busybox config; if user disables RPC and enables mount-nfs in busybox, he'll get a compilation error.&lt;br /&gt;
# Support for VCS branches in packages: custom packages are often in a VCS and while developing, you want to track a branch of that VCS.  OVERRIDE_SRCDIR doesn't work very well because it means the user has to check everything out at the right version in the right location.  An alternative would be to teach OVERRIDE_SRCDIR about VCSes, so that ''make foo-rebuild'' re-syncs with the VCS.&lt;br /&gt;
# There is a general feeling (mainly from Thomas) that buildroot isn't very convenient during development of a project where several people are working on several components. But no solution was found.&lt;br /&gt;
# FP stuff: we now have a single SOFT_FLOAT option, but actually there's a lot more variation: neon, vfpv3, softfp, ....  To support this well, we can add a lot of extra config options to semi-automatically select the correct float options based on the subarchitecture.  There is some cross-dependency with the external toolchains, but it's doable.  There should still be an option to manually override the float options for exotic cases.  ARM thumb adds another layer of complexity.  Someone should take the lead on making this easier.&lt;br /&gt;
# Porting gcc to the generic package infrastructure.  Looks like this is a lot of work, and there's not so much need for it.&lt;br /&gt;
# Getting gcc from git.  It's more convenient to put a tarball somewhere public and use that as an alternative source, similar to avr32.&lt;br /&gt;
# Download helpers are getting too complex.  It should move a script so at least it's more readable.&lt;br /&gt;
# Community organization:&lt;br /&gt;
#* It can be useful to have subsystem maintainers, that are responsible for reviewing and accepting patches.  In practice, however, it is difficult to split things in a way that we don't risk duplicating work (i.e. two people in the process of merging the same patch).  However, one clearly defined subsystem is the documentation.  From now on, Samuel Martin is responsible for all documentation patches.  He'll send pull requests to Peter.&lt;br /&gt;
#* Patches should be accepted more aggressively, even if there hasn't been (much) testing of the patch.  The autobuilders will catch any issues.  However, it is still important to properly review and comment on coding style issues (i.e. how the features are implemented.&lt;br /&gt;
# Out of tree build: this is a feature that people keep on asking. It is particularly useful for packages with an OVERRIDE_SRCDIR.  But of course, not all packages support out-of-tree build, and not all packages support it in the same way.  For autotools and cmake, it can be automatic; for generic packages, it has to be signalled if out-of-tree build is available.&lt;br /&gt;
&lt;br /&gt;
For tomorrow:&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed.  Arriving on Fri Nov 2 20:35 at BCN airport.  Leaving Wed Nov. 8 21:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on November, 3rd at BCN airport 9:25 AM. Leaving on November 8th from BCN airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# Maxime Ripard, confirmed. Arriving on November, 1st at BCN airport. Leaving on November 8th from BCP airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed, Arriving on Fri Nov 2 21:55 at BCN airport. Leaving Sun Nov 11 17:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# Luca Ceresoli, confirmed. Arriving on November 3rd at BCN airport 10:05 AM. Leaving on November 7th from BCN airport 19:15 PM. Staying at Hotel Fira Palace. Will arrive around 11:30 AM for the meeting.&lt;br /&gt;
# Samuel Martin, confirmed. Arriving on November, 3rd at Barcelona-Franca Train Station 8:05 AM. Leaving on November 10th from Barcelona-Franca Train Station at 8:43 PM.&lt;br /&gt;
# Simon Dawson, confirmed. Arriving on November 2nd in the evening. Leaving on November 8th early morning.&lt;br /&gt;
# Mischa Jonker, confirmed. From Synopsys.com. Not contributing yet to Buildroot, but interested in using Buildroot for a brand new CPU architecture. Arriving Friday Nov 2nd BCN 21:10 CET, staying at Catalonia Barcelona Plaza (Plaza Espanya), leaving Thursday Nov 8 at 18:40 CET.&lt;br /&gt;
# Maxime Hadjinlian.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
=== Program ===&lt;br /&gt;
&lt;br /&gt;
* Saturday, 10 AM: beginning of the meeting. The first person to arrive can go directly to the front desk and ask for MARIBEL SOCIAS or anyone in the Reservations Department, and then ask for the meeting room booked for Thomas Petazzoni. [[User:ThomasPetazzoni|Thomas Petazzoni]] will only arrive at 10:30-11 AM.&lt;br /&gt;
* Saturday, 7 PM: end of the meeting&lt;br /&gt;
* Saturday, 8:30 PM: dinner sponsored by Synopsys&lt;br /&gt;
* Sunday, 10 AM: beginning of the meeting&lt;br /&gt;
* Sunday, 7 PM: end of the meeting&lt;br /&gt;
&lt;br /&gt;
=== Location ===&lt;br /&gt;
&lt;br /&gt;
The event will take place at [http://www.hotelgrumsbarcelona.com/ Hotel Grumps], in downtown Barcelona. See [http://goo.gl/maps/htYi9 this map] for the location of the hotel, and [http://goo.gl/maps/GdiaM this map] for walking directions between the Fira Palace hotel (location of the ELCE conference) and Hotel Grums.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* Autobuilder tests: needed improvements, future work. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to use a git repository as source for toolchain. This doesn't work well today. Proposed by Mischa Jonker&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Does it make sense to port the toolchains to generic-package infrastructure? Asked by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Should we remove the ability to build a toolchain on the target? And also things like development files on target, documentation on target, etc. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
&lt;br /&gt;
=== List of topics to hack on ===&lt;br /&gt;
&lt;br /&gt;
* Reduce the back log of bugs. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Reduce the back log of patches. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Work on noMMU platform support (Blackfin, Coldfire). Getting Coldfire Qemu working, adding correct support for FLAT binaries. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Package upgrades: package python3, gtk3 and latest versions of glib and al. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Triage autobuilder failures and fix them. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Improve the documentation. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Work on relocatable toolchain. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for setup.py/qmake based packages. Proposed by Samuel Martin&lt;br /&gt;
* Add some infra for make based packages (mainly using the same pattern all over). Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for Kconfig based packages (linux, barebox, busybox, uclibc, ct-ng, at91bootstrap3).  Proposed by Arnout Vandecappelle&lt;br /&gt;
* Make top-level make -j possible.  Proposed by Arnout Vandecappelle&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysELCE2012</id>
		<title>Buildroot:DeveloperDaysELCE2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysELCE2012"/>
				<updated>2012-11-04T10:37:48Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 3-4 November 2012, Barcelona Spain ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Meeting in Barcelona ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Saturday November 3rd and Sunday November 4th, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right before the Embedded Linux Conference Europe, in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
=== Event sponsored by Fluendo and Synopsys ===&lt;br /&gt;
&lt;br /&gt;
The meeting room is sponsored  by [http://www.fluendo.com Fluendo]. Thanks!&lt;br /&gt;
&lt;br /&gt;
The Saturday dinner is sponsored by [http://www.synopsys.com Synopsys]. Thanks!&lt;br /&gt;
&lt;br /&gt;
=== Report of the meeting ===&lt;br /&gt;
&lt;br /&gt;
==== Action points ====&lt;br /&gt;
* Accept perl series.&lt;br /&gt;
* Accept qemu series (after further review).&lt;br /&gt;
* Remove compiler on target.&lt;br /&gt;
* Remove development files on target.&lt;br /&gt;
* Remove documentation on target.&lt;br /&gt;
* Explain in the documentation why the above was done.&lt;br /&gt;
* Put httpd daemons outside BUSYBOX_SHOW_OTHERS.&lt;br /&gt;
* Move BUSYBOX_SHOW_OTHERS conditions to ''depends on'' inside the package Config.in&lt;br /&gt;
* busybox: disable mount-nfs in the default config.&lt;br /&gt;
* simplify patch logic: if pkg-version directory exists, use that; otherwise, use pkg-*.patch.&lt;br /&gt;
* Automate selection of correct FP and other compiler options based on subarchitecture.&lt;br /&gt;
* Move download helpers to a script.&lt;br /&gt;
&lt;br /&gt;
==== Details of the discussion ====&lt;br /&gt;
&lt;br /&gt;
# Perl.  The perl patch series (now at v11) looks ready to be integrated, but we have our doubts about cpanminus. The problems are: it has separate download infrastructure, which blocks some buildroot features (e.g. make source); it doesn't integrate with the legal-info.  However, CPAN is pretty important if you really want to use perl.  The decision was to accept cpanminus as well, but add some warnings that some things don't work.&lt;br /&gt;
# Qemu.  Adding this opens the door for more people to do stuff that buildroot wasn't meant for in the first place (i.e. embedded).  However, even in embedded qemu could be relevant.  Things like the compiler on the target are much worse for doing crazy things.  Giving new packages a chance is OK; we have to be much more careful with things that have global impact (like including development files on target).  Conclusion: it's OK to accept qemu.&lt;br /&gt;
# Compiler on target.  It leads to newbies using buildroot in an inappropriate way (i.e. compile on the target).  Also it only works with the internal toolchain.  And if we remove it, we can also remove &amp;quot;Development files on target&amp;quot;, which simplifies some of the build infrastructure.  Also, if you have a compiler on the target, then you can just as well use a distro.  Conclusion: we remove it.  Also a bunch of other packages can be removed (autotools, vala, ...)&lt;br /&gt;
# Documentation on target: if you need this, use a distro.  So we remove it.&lt;br /&gt;
# We need to explain in the documentation why we removed this stuff.&lt;br /&gt;
# Available stuff: i.e. solve the problem of combination of ''select'' and ''depends''. Solving it in Kconfig itself seems to be difficult: there were some patches but the kconfig people didn't like it; Yann and Thomas looked at Kconfig and it looks difficult to modify.  The AVAILABLE solution has two problems: it adds verbosity, and the recursive dependencies still should be written in the comments (&amp;quot;libfoo requires WCHAR in the toolchain&amp;quot;).  The verbosity is not considered a big issue.  For the comments: they currently don't work perfectly either.  Removing the comments altogether is an option, but then it is difficult for users to find out why a certain package isn't available.  Another possibility is to list the available packages in the documentation (automatically), and mention which toolchain dependencies they have.  Wild idea: consider Config.in as a low-level language, and define our own higher-level language from which we generate Config.in.  Alternatively, have a developer tool that verifies if everything is consistent (i.e. are the comments correct).  One more option: add a big comment in the beginning of the packages list, which says that not all toolchain options are available so not all packages are visible.  Converting the toolchain options from ''depends'' to ''select'' is not really an option, because changing toolchain options requires a make clean.  We didn't reach a conclusion, we'll come back to it tomorrow.&lt;br /&gt;
# kconfig-frontend: Yann now has a repository for Kconfig, it would be nice to branch our Kconfig from that.  The idea is to still copy it to our repository.&lt;br /&gt;
# BUSYBOX_SHOW_OTHERS: the only reason to have this is to avoid newcomers enabling things like tar etc. which are anyway already in busybox.  But for the web servers, they are clearly different from the busybox web servers (and our default busybox config doesn't even enable a web server).  Also bash is a typical one, because people write bashisms in their scripts.  This discussion is somewhat related to the discussion how to handle packages that provide the same functionality.  But for many packages, it's not even the same (httpd, bash, vim).  But actually, we're trying to solve a non-existent problem here - except for the web servers.  If we generate a list of packages in the documentation, we can add a remark to that that it's also available in busybox.  Also move the condition inside the package Config.in instead of outside and make it a ''depends on'', so it is more visible.&lt;br /&gt;
# packages with multiple variants: python2/3, Qt4/5, gtk2/3, gstreamer0.10/1.0...  This is again similar to the expat/libxml2 issue.  Do we support both python2 and python3? We need to support both versions in most cases. Question is if we want to force that only one of the two is selected, or do we support side-by-side installation.  Conclusion: has to be looked at on a case-by-case basis.  General philosophy: don't try to be too smart, so don't try to force selecting only one of the two if it doesn't make sense to have both.  In cases where a package wants to ''select'' one of these things, convert the ''select'' into a ''depends'' with a comment.  For gstreamer, the complexity of having the two side-by-side is unacceptable, because there are so many fine-grained gstreamer configure options (in the plugins).  However, we expect that everything will move to gstreamer1.0 quite quickly, so for the time being (and only if someone needs it), we can live with a non-perfect solution that just fits the requirements of whoever needs gstreamer1.0.&lt;br /&gt;
# multiple packages providing the same functionality: lua/luajit, jpeg/jpegturbo, expat/libxml2.  These cannot be installed side-by-side, and many packages select e.g. jpeg.  OpenGL will have this issue as well.  A relatively clean solution is to create virtual packages for these, where the user has a choice between the two.  The normal config option would be hidden for these packages.  This still adds complexity in some corner cases, e.g. some package that doesn't work in luajit, but that can probably be solved at the level of that package.&lt;br /&gt;
# Autobuild infrastructure. Thomas is working on scripts that parse the build result and put it in a database.  One important missing feature at the moment is visibility of evolution over time (i.e. distinguish regressions from recurring problems).  Even more important is just being able to see which packages are failing all the time, i.e. for each package how often it failed.  Ideally, we would also want to see how often a package has been built successfully, but when is it successful? Does the entire build have to succeed or that package?  Overall, however, the autobuild infrastructure is considered very useful - when something is wrong, it appears in the autobuild very quickly.&lt;br /&gt;
#* autobuild of the next branch: if only the master is autobuilt, we don't see a lot of problems until after the release. Delaying fixing bugs makes it more difficult to fix them. To support autobuild of the next branch, this should also be made visible in the database so we can distinguish master failures (more important) from next failures.&lt;br /&gt;
#* autobuild database is not suitable to track repeated builds of the same configuration.  It needs to keep track of different builds of the same configurations.  But the question is if this is really useful. We would like to check the existing defconfigs at every release, but it doesn't have to be tracked.  So it can be done manually.&lt;br /&gt;
# AVR32. It is end of life as far as Atmel is concerned, but of course there are still products out there using it.  It is not really blocking for buildroot.  For packages which fail to build, we can just add a ''depends on !BR2_avr32''.  But of course, until we have the AVAILABLE mechanism, carrying this kind of dependency can be painful.&lt;br /&gt;
# RPC support. Originally, the idea was to consider RPC support as a toolchain option, i.e. using ''depends''.  However, libtirpc is really a library, comparable to gettext, so it could be enabled automatically with ''select''.  Busybox is special, because we don't want to force RPC just because busybox is selected.  Therefore busybox has a user-selectable option to enable RPC-based applets (mount-nfs).  After discussion, this option was discarded - just remove mount-nfs from busybox (see below).  Other packages will use libtirpc if it was selected (manually or automatically). It's still a question what will happen when dynamically linking against libtirpc when libc also has rpc.&lt;br /&gt;
# A bit related: we'll disable mount-nfs in the default busybox config; if user disables RPC and enables mount-nfs in busybox, he'll get a compilation error.&lt;br /&gt;
# Support for VCS branches in packages: custom packages are often in a VCS and while developing, you want to track a branch of that VCS.  OVERRIDE_SRCDIR doesn't work very well because it means the user has to check everything out at the right version in the right location.  An alternative would be to teach OVERRIDE_SRCDIR about VCSes, so that ''make foo-rebuild'' re-syncs with the VCS.&lt;br /&gt;
# There is a general feeling (mainly from Thomas) that buildroot isn't very convenient during development of a project where several people are working on several components. But no solution was found.&lt;br /&gt;
# FP stuff: we now have a single SOFT_FLOAT option, but actually there's a lot more variation: neon, vfpv3, softfp, ....  To support this well, we can add a lot of extra config options to semi-automatically select the correct float options based on the subarchitecture.  There is some cross-dependency with the external toolchains, but it's doable.  There should still be an option to manually override the float options for exotic cases.  ARM thumb adds another layer of complexity.  Someone should take the lead on making this easier.&lt;br /&gt;
# Porting gcc to the generic package infrastructure.  Looks like this is a lot of work, and there's not so much need for it.&lt;br /&gt;
# Getting gcc from git.  It's more convenient to put a tarball somewhere public and use that as an alternative source, similar to avr32.&lt;br /&gt;
# Download helpers are getting too complex.  It should move a script so at least it's more readable.&lt;br /&gt;
# Community organization:&lt;br /&gt;
#* It can be useful to have subsystem maintainers, that are responsible for reviewing and accepting patches.  In practice, however, it is difficult to split things in a way that we don't risk duplicating work (i.e. two people in the process of merging the same patch).  However, one clearly defined subsystem is the documentation.  From now on, Samuel Martin is responsible for all documentation patches.  He'll send pull requests to Peter.&lt;br /&gt;
#* Patches should be accepted more aggressively, even if there hasn't been (much) testing of the patch.  The autobuilders will catch any issues.  However, it is still important to properly review and comment on coding style issues (i.e. how the features are implemented.&lt;br /&gt;
&lt;br /&gt;
For tomorrow:&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed.  Arriving on Fri Nov 2 20:35 at BCN airport.  Leaving Wed Nov. 8 21:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on November, 3rd at BCN airport 9:25 AM. Leaving on November 8th from BCN airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# Maxime Ripard, confirmed. Arriving on November, 1st at BCN airport. Leaving on November 8th from BCP airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed, Arriving on Fri Nov 2 21:55 at BCN airport. Leaving Sun Nov 11 17:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# Luca Ceresoli, confirmed. Arriving on November 3rd at BCN airport 10:05 AM. Leaving on November 7th from BCN airport 19:15 PM. Staying at Hotel Fira Palace. Will arrive around 11:30 AM for the meeting.&lt;br /&gt;
# Samuel Martin, confirmed. Arriving on November, 3rd at Barcelona-Franca Train Station 8:05 AM. Leaving on November 10th from Barcelona-Franca Train Station at 8:43 PM.&lt;br /&gt;
# Simon Dawson, confirmed. Arriving on November 2nd in the evening. Leaving on November 8th early morning.&lt;br /&gt;
# Mischa Jonker, confirmed. From Synopsys.com. Not contributing yet to Buildroot, but interested in using Buildroot for a brand new CPU architecture. Arriving Friday Nov 2nd BCN 21:10 CET, staying at Catalonia Barcelona Plaza (Plaza Espanya), leaving Thursday Nov 8 at 18:40 CET.&lt;br /&gt;
# Maxime Hadjinlian.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
=== Program ===&lt;br /&gt;
&lt;br /&gt;
* Saturday, 10 AM: beginning of the meeting. The first person to arrive can go directly to the front desk and ask for MARIBEL SOCIAS or anyone in the Reservations Department, and then ask for the meeting room booked for Thomas Petazzoni. [[User:ThomasPetazzoni|Thomas Petazzoni]] will only arrive at 10:30-11 AM.&lt;br /&gt;
* Saturday, 7 PM: end of the meeting&lt;br /&gt;
* Saturday, 8:30 PM: dinner sponsored by Synopsys&lt;br /&gt;
* Sunday, 10 AM: beginning of the meeting&lt;br /&gt;
* Sunday, 7 PM: end of the meeting&lt;br /&gt;
&lt;br /&gt;
=== Location ===&lt;br /&gt;
&lt;br /&gt;
The event will take place at [http://www.hotelgrumsbarcelona.com/ Hotel Grumps], in downtown Barcelona. See [http://goo.gl/maps/htYi9 this map] for the location of the hotel, and [http://goo.gl/maps/GdiaM this map] for walking directions between the Fira Palace hotel (location of the ELCE conference) and Hotel Grums.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* Autobuilder tests: needed improvements, future work. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to use a git repository as source for toolchain. This doesn't work well today. Proposed by Mischa Jonker&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Does it make sense to port the toolchains to generic-package infrastructure? Asked by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Should we remove the ability to build a toolchain on the target? And also things like development files on target, documentation on target, etc. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
&lt;br /&gt;
=== List of topics to hack on ===&lt;br /&gt;
&lt;br /&gt;
* Reduce the back log of bugs. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Reduce the back log of patches. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Work on noMMU platform support (Blackfin, Coldfire). Getting Coldfire Qemu working, adding correct support for FLAT binaries. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Package upgrades: package python3, gtk3 and latest versions of glib and al. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Triage autobuilder failures and fix them. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Improve the documentation. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Work on relocatable toolchain. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for setup.py/qmake based packages. Proposed by Samuel Martin&lt;br /&gt;
* Add some infra for make based packages (mainly using the same pattern all over). Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for Kconfig based packages (linux, barebox, busybox, uclibc, ct-ng, at91bootstrap3).  Proposed by Arnout Vandecappelle&lt;br /&gt;
* Make top-level make -j possible.  Proposed by Arnout Vandecappelle&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysELCE2012</id>
		<title>Buildroot:DeveloperDaysELCE2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysELCE2012"/>
				<updated>2012-11-03T18:13:29Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 3-4 November 2012, Barcelona Spain ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Meeting in Barcelona ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Saturday November 3rd and Sunday November 4th, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right before the Embedded Linux Conference Europe, in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
=== Event sponsored by Fluendo and Synopsys ===&lt;br /&gt;
&lt;br /&gt;
The meeting room is sponsored  by [http://www.fluendo.com Fluendo]. Thanks!&lt;br /&gt;
&lt;br /&gt;
The Saturday dinner is sponsored by [http://www.synopsys.com Synopsys]. Thanks!&lt;br /&gt;
&lt;br /&gt;
=== Report of the meeting ===&lt;br /&gt;
&lt;br /&gt;
==== Action points ====&lt;br /&gt;
* Accept perl series.&lt;br /&gt;
* Accept qemu series (after further review).&lt;br /&gt;
* Remove compiler on target.&lt;br /&gt;
* Remove development files on target.&lt;br /&gt;
* Remove documentation on target.&lt;br /&gt;
* Explain in the documentation why the above was done.&lt;br /&gt;
* Put httpd daemons outside BUSYBOX_SHOW_OTHERS.&lt;br /&gt;
* Move BUSYBOX_SHOW_OTHERS conditions to ''depends on'' inside the package Config.in&lt;br /&gt;
* busybox: disable mount-nfs in the default config.&lt;br /&gt;
* simplify patch logic: if pkg-version directory exists, use that; otherwise, use pkg-*.patch.&lt;br /&gt;
* Automate selection of correct FP and other compiler options based on subarchitecture.&lt;br /&gt;
* Move download helpers to a script.&lt;br /&gt;
&lt;br /&gt;
==== Details of the discussion ====&lt;br /&gt;
&lt;br /&gt;
# Perl.  The perl patch series (now at v11) looks ready to be integrated, but we have our doubts about cpanminus. The problems are: it has separate download infrastructure, which blocks some buildroot features (e.g. make source); it doesn't integrate with the legal-info.  However, CPAN is pretty important if you really want to use perl.  The decision was to accept cpanminus as well, but add some warnings that some things don't work.&lt;br /&gt;
# Qemu.  Adding this opens the door for more people to do stuff that buildroot wasn't meant for in the first place (i.e. embedded).  However, even in embedded qemu could be relevant.  Things like the compiler on the target are much worse for doing crazy things.  Giving new packages a chance is OK; we have to be much more careful with things that have global impact (like including development files on target).  Conclusion: it's OK to accept qemu.&lt;br /&gt;
# Compiler on target.  It leads to newbies using buildroot in an inappropriate way (i.e. compile on the target).  Also it only works with the internal toolchain.  And if we remove it, we can also remove &amp;quot;Development files on target&amp;quot;, which simplifies some of the build infrastructure.  Also, if you have a compiler on the target, then you can just as well use a distro.  Conclusion: we remove it.  Also a bunch of other packages can be removed (autotools, vala, ...)&lt;br /&gt;
# Documentation on target: if you need this, use a distro.  So we remove it.&lt;br /&gt;
# We need to explain in the documentation why we removed this stuff.&lt;br /&gt;
# Available stuff: i.e. solve the problem of combination of ''select'' and ''depends''. Solving it in Kconfig itself seems to be difficult: there were some patches but the kconfig people didn't like it; Yann and Thomas looked at Kconfig and it looks difficult to modify.  The AVAILABLE solution has two problems: it adds verbosity, and the recursive dependencies still should be written in the comments (&amp;quot;libfoo requires WCHAR in the toolchain&amp;quot;).  The verbosity is not considered a big issue.  For the comments: they currently don't work perfectly either.  Removing the comments altogether is an option, but then it is difficult for users to find out why a certain package isn't available.  Another possibility is to list the available packages in the documentation (automatically), and mention which toolchain dependencies they have.  Wild idea: consider Config.in as a low-level language, and define our own higher-level language from which we generate Config.in.  Alternatively, have a developer tool that verifies if everything is consistent (i.e. are the comments correct).  One more option: add a big comment in the beginning of the packages list, which says that not all toolchain options are available so not all packages are visible.  Converting the toolchain options from ''depends'' to ''select'' is not really an option, because changing toolchain options requires a make clean.  We didn't reach a conclusion, we'll come back to it tomorrow.&lt;br /&gt;
# kconfig-frontend: Yann now has a repository for Kconfig, it would be nice to branch our Kconfig from that.  The idea is to still copy it to our repository.&lt;br /&gt;
# BUSYBOX_SHOW_OTHERS: the only reason to have this is to avoid newcomers enabling things like tar etc. which are anyway already in busybox.  But for the web servers, they are clearly different from the busybox web servers (and our default busybox config doesn't even enable a web server).  Also bash is a typical one, because people write bashisms in their scripts.  This discussion is somewhat related to the discussion how to handle packages that provide the same functionality.  But for many packages, it's not even the same (httpd, bash, vim).  But actually, we're trying to solve a non-existent problem here - except for the web servers.  If we generate a list of packages in the documentation, we can add a remark to that that it's also available in busybox.  Also move the condition inside the package Config.in instead of outside and make it a ''depends on'', so it is more visible.&lt;br /&gt;
# packages with multiple variants: python2/3, Qt4/5, gtk2/3, ...  This is again similar to the expat/libxml2 issue.  Do we support both python2 and python3? We need to support both versions in most cases. Question is if we want to force that only one of the two is selected, or do we support side-by-side installation.  Conclusion: has to be looked at on a case-by-case basis.  General philosophy: don't try to be too smart, so don't try to force selecting only one of the two if it doesn't make sense to have both.  In cases where a package wants to ''select'' one of these things, convert the ''select'' into a ''depends'' with a comment.&lt;br /&gt;
# multiple packages providing the same functionality: lua/luajit, jpeg/jpegturbo, expat/libxml2.  These cannot be installed side-by-side, and many packages select e.g. jpeg.  OpenGL will have this issue as well.  A relatively clean solution is to create virtual packages for these, where the user has a choice between the two.  The normal config option would be hidden for these packages.  This still adds complexity in some corner cases, e.g. some package that doesn't work in luajit, but that can probably be solved at the level of that package.&lt;br /&gt;
# Autobuild infrastructure. Thomas is working on scripts that parse the build result and put it in a database.  One important missing feature at the moment is visibility of evolution over time (i.e. distinguish regressions from recurring problems).  Even more important is just being able to see which packages are failing all the time, i.e. for each package how often it failed.  Ideally, we would also want to see how often a package has been built successfully, but when is it successful? Does the entire build have to succeed or that package?  Overall, however, the autobuild infrastructure is considered very useful - when something is wrong, it appears in the autobuild very quickly.&lt;br /&gt;
#* autobuild of the next branch: if only the master is autobuilt, we don't see a lot of problems until after the release. Delaying fixing bugs makes it more difficult to fix them. To support autobuild of the next branch, this should also be made visible in the database so we can distinguish master failures (more important) from next failures.&lt;br /&gt;
#* autobuild database is not suitable to track repeated builds of the same configuration.  It needs to keep track of different builds of the same configurations.  But the question is if this is really useful. We would like to check the existing defconfigs at every release, but it doesn't have to be tracked.  So it can be done manually.&lt;br /&gt;
# AVR32. It is end of life as far as Atmel is concerned, but of course there are still products out there using it.  It is not really blocking for buildroot.  For packages which fail to build, we can just add a ''depends on !BR2_avr32''.  But of course, until we have the AVAILABLE mechanism, carrying this kind of dependency can be painful.&lt;br /&gt;
# RPC support. Originally, the idea was to consider RPC support as a toolchain option, i.e. using ''depends''.  However, libtirpc is really a library, comparable to gettext, so it could be enabled automatically with ''select''.  Busybox is special, because we don't want to force RPC just because busybox is selected.  Therefore busybox has a user-selectable option to enable RPC-based applets (mount-nfs).  After discussion, this option was discarded - just remove mount-nfs from busybox (see below).  Other packages will use libtirpc if it was selected (manually or automatically). It's still a question what will happen when dynamically linking against libtirpc when libc also has rpc.&lt;br /&gt;
# A bit related: we'll disable mount-nfs in the default busybox config; if user disables RPC and enables mount-nfs in busybox, he'll get a compilation error.&lt;br /&gt;
# Support for VCS branches in packages: custom packages are often in a VCS and while developing, you want to track a branch of that VCS.  OVERRIDE_SRCDIR doesn't work very well because it means the user has to check everything out at the right version in the right location.  An alternative would be to teach OVERRIDE_SRCDIR about VCSes, so that ''make foo-rebuild'' re-syncs with the VCS.&lt;br /&gt;
# There is a general feeling (mainly from Thomas) that buildroot isn't very convenient during development of a project where several people are working on several components. But no solution was found.&lt;br /&gt;
# FP stuff: we now have a single SOFT_FLOAT option, but actually there's a lot more variation: neon, vfpv3, softfp, ....  To support this well, we can add a lot of extra config options to semi-automatically select the correct float options based on the subarchitecture.  There is some cross-dependency with the external toolchains, but it's doable.  There should still be an option to manually override the float options for exotic cases.  ARM thumb adds another layer of complexity.  Someone should take the lead on making this easier.&lt;br /&gt;
# Porting gcc to the generic package infrastructure.  Looks like this is a lot of work, and there's not so much need for it.&lt;br /&gt;
# Getting gcc from git.  It's more convenient to put a tarball somewhere public and use that as an alternative source, similar to avr32.&lt;br /&gt;
# Download helpers are getting too complex.  It should move a script so at least it's more readable.&lt;br /&gt;
# Community organization:&lt;br /&gt;
#* It can be useful to have subsystem maintainers, that are responsible for reviewing and accepting patches.  In practice, however, it is difficult to split things in a way that we don't risk duplicating work (i.e. two people in the process of merging the same patch).  However, one clearly defined subsystem is the documentation.  From now on, Samuel Martin is responsible for all documentation patches.  He'll send pull requests to Peter.&lt;br /&gt;
#* Patches should be accepted more aggressively, even if there hasn't been (much) testing of the patch.  The autobuilders will catch any issues.  However, it is still important to properly review and comment on coding style issues (i.e. how the features are implemented.&lt;br /&gt;
&lt;br /&gt;
For tomorrow:&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed.  Arriving on Fri Nov 2 20:35 at BCN airport.  Leaving Wed Nov. 8 21:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on November, 3rd at BCN airport 9:25 AM. Leaving on November 8th from BCN airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# Maxime Ripard, confirmed. Arriving on November, 1st at BCN airport. Leaving on November 8th from BCP airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed, Arriving on Fri Nov 2 21:55 at BCN airport. Leaving Sun Nov 11 17:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# Luca Ceresoli, confirmed. Arriving on November 3rd at BCN airport 10:05 AM. Leaving on November 7th from BCN airport 19:15 PM. Staying at Hotel Fira Palace. Will arrive around 11:30 AM for the meeting.&lt;br /&gt;
# Samuel Martin, confirmed. Arriving on November, 3rd at Barcelona-Franca Train Station 8:05 AM. Leaving on November 10th from Barcelona-Franca Train Station at 8:43 PM.&lt;br /&gt;
# Simon Dawson, confirmed. Arriving on November 2nd in the evening. Leaving on November 8th early morning.&lt;br /&gt;
# Mischa Jonker, confirmed. From Synopsys.com. Not contributing yet to Buildroot, but interested in using Buildroot for a brand new CPU architecture. Arriving Friday Nov 2nd BCN 21:10 CET, staying at Catalonia Barcelona Plaza (Plaza Espanya), leaving Thursday Nov 8 at 18:40 CET.&lt;br /&gt;
# Maxime Hadjinlian.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
=== Program ===&lt;br /&gt;
&lt;br /&gt;
* Saturday, 10 AM: beginning of the meeting. The first person to arrive can go directly to the front desk and ask for MARIBEL SOCIAS or anyone in the Reservations Department, and then ask for the meeting room booked for Thomas Petazzoni. [[User:ThomasPetazzoni|Thomas Petazzoni]] will only arrive at 10:30-11 AM.&lt;br /&gt;
* Saturday, 7 PM: end of the meeting&lt;br /&gt;
* Saturday, 8:30 PM: dinner sponsored by Synopsys&lt;br /&gt;
* Sunday, 10 AM: beginning of the meeting&lt;br /&gt;
* Sunday, 7 PM: end of the meeting&lt;br /&gt;
&lt;br /&gt;
=== Location ===&lt;br /&gt;
&lt;br /&gt;
The event will take place at [http://www.hotelgrumsbarcelona.com/ Hotel Grumps], in downtown Barcelona. See [http://goo.gl/maps/htYi9 this map] for the location of the hotel, and [http://goo.gl/maps/GdiaM this map] for walking directions between the Fira Palace hotel (location of the ELCE conference) and Hotel Grums.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* Autobuilder tests: needed improvements, future work. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to use a git repository as source for toolchain. This doesn't work well today. Proposed by Mischa Jonker&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Does it make sense to port the toolchains to generic-package infrastructure? Asked by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Should we remove the ability to build a toolchain on the target? And also things like development files on target, documentation on target, etc. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
&lt;br /&gt;
=== List of topics to hack on ===&lt;br /&gt;
&lt;br /&gt;
* Reduce the back log of bugs. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Reduce the back log of patches. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Work on noMMU platform support (Blackfin, Coldfire). Getting Coldfire Qemu working, adding correct support for FLAT binaries. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Package upgrades: package python3, gtk3 and latest versions of glib and al. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Triage autobuilder failures and fix them. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Improve the documentation. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Work on relocatable toolchain. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for setup.py/qmake based packages. Proposed by Samuel Martin&lt;br /&gt;
* Add some infra for make based packages (mainly using the same pattern all over). Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for Kconfig based packages (linux, barebox, busybox, uclibc, ct-ng, at91bootstrap3).  Proposed by Arnout Vandecappelle&lt;br /&gt;
* Make top-level make -j possible.  Proposed by Arnout Vandecappelle&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysELCE2012</id>
		<title>Buildroot:DeveloperDaysELCE2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysELCE2012"/>
				<updated>2012-11-03T16:06:49Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 3-4 November 2012, Barcelona Spain ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Meeting in Barcelona ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Saturday November 3rd and Sunday November 4th, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right before the Embedded Linux Conference Europe, in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
=== Event sponsored by Fluendo and Synopsys ===&lt;br /&gt;
&lt;br /&gt;
The meeting room is sponsored  by [http://www.fluendo.com Fluendo]. Thanks!&lt;br /&gt;
&lt;br /&gt;
The Saturday dinner is sponsored by [http://www.synopsys.com Synopsys]. Thanks!&lt;br /&gt;
&lt;br /&gt;
=== Report of the meeting ===&lt;br /&gt;
&lt;br /&gt;
==== Action points ====&lt;br /&gt;
* Accept perl series.&lt;br /&gt;
* Accept qemu series (after further review).&lt;br /&gt;
* Remove compiler on target.&lt;br /&gt;
* Remove development files on target.&lt;br /&gt;
* Remove documentation on target.&lt;br /&gt;
* Explain in the documentation why the above was done.&lt;br /&gt;
* Put httpd daemons outside BUSYBOX_SHOW_OTHERS.&lt;br /&gt;
* Move BUSYBOX_SHOW_OTHERS conditions to ''depends on'' inside the package Config.in&lt;br /&gt;
* busybox: disable mount-nfs in the default config.&lt;br /&gt;
* simplify patch logic: if pkg-version directory exists, use that; otherwise, use pkg-*.patch.&lt;br /&gt;
* Automate selection of correct FP and other compiler options based on subarchitecture.&lt;br /&gt;
&lt;br /&gt;
==== Details of the discussion ====&lt;br /&gt;
&lt;br /&gt;
# Perl.  The perl patch series (now at v11) looks ready to be integrated, but we have our doubts about cpanminus. The problems are: it has separate download infrastructure, which blocks some buildroot features (e.g. make source); it doesn't integrate with the legal-info.  However, CPAN is pretty important if you really want to use perl.  The decision was to accept cpanminus as well, but add some warnings that some things don't work.&lt;br /&gt;
# Qemu.  Adding this opens the door for more people to do stuff that buildroot wasn't meant for in the first place (i.e. embedded).  However, even in embedded qemu could be relevant.  Things like the compiler on the target are much worse for doing crazy things.  Giving new packages a chance is OK; we have to be much more careful with things that have global impact (like including development files on target).  Conclusion: it's OK to accept qemu.&lt;br /&gt;
# Compiler on target.  It leads to newbies using buildroot in an inappropriate way (i.e. compile on the target).  Also it only works with the internal toolchain.  And if we remove it, we can also remove &amp;quot;Development files on target&amp;quot;, which simplifies some of the build infrastructure.  Also, if you have a compiler on the target, then you can just as well use a distro.  Conclusion: we remove it.  Also a bunch of other packages can be removed (autotools, vala, ...)&lt;br /&gt;
# Documentation on target: if you need this, use a distro.  So we remove it.&lt;br /&gt;
# We need to explain in the documentation why we removed this stuff.&lt;br /&gt;
# Available stuff: i.e. solve the problem of combination of ''select'' and ''depends''. Solving it in Kconfig itself seems to be difficult: there were some patches but the kconfig people didn't like it; Yann and Thomas looked at Kconfig and it looks difficult to modify.  The AVAILABLE solution has two problems: it adds verbosity, and the recursive dependencies still should be written in the comments (&amp;quot;libfoo requires WCHAR in the toolchain&amp;quot;).  The verbosity is not considered a big issue.  For the comments: they currently don't work perfectly either.  Removing the comments altogether is an option, but then it is difficult for users to find out why a certain package isn't available.  Another possibility is to list the available packages in the documentation (automatically), and mention which toolchain dependencies they have.  Wild idea: consider Config.in as a low-level language, and define our own higher-level language from which we generate Config.in.  Alternatively, have a developer tool that verifies if everything is consistent (i.e. are the comments correct).  One more option: add a big comment in the beginning of the packages list, which says that not all toolchain options are available so not all packages are visible.  Converting the toolchain options from ''depends'' to ''select'' is not really an option, because changing toolchain options requires a make clean.  We didn't reach a conclusion, we'll come back to it tomorrow.&lt;br /&gt;
# kconfig-frontend: Yann now has a repository for Kconfig, it would be nice to branch our Kconfig from that.  The idea is to still copy it to our repository.&lt;br /&gt;
# BUSYBOX_SHOW_OTHERS: the only reason to have this is to avoid newcomers enabling things like tar etc. which are anyway already in busybox.  But for the web servers, they are clearly different from the busybox web servers (and our default busybox config doesn't even enable a web server).  Also bash is a typical one, because people write bashisms in their scripts.  This discussion is somewhat related to the discussion how to handle packages that provide the same functionality.  But for many packages, it's not even the same (httpd, bash, vim).  But actually, we're trying to solve a non-existent problem here - except for the web servers.  If we generate a list of packages in the documentation, we can add a remark to that that it's also available in busybox.  Also move the condition inside the package Config.in instead of outside and make it a ''depends on'', so it is more visible.&lt;br /&gt;
# packages with multiple variants: python2/3, Qt4/5, gtk2/3, ...  This is again similar to the expat/libxml2 issue.  Do we support both python2 and python3? We need to support both versions in most cases. Question is if we want to force that only one of the two is selected, or do we support side-by-side installation.  Conclusion: has to be looked at on a case-by-case basis.  General philosophy: don't try to be too smart, so don't try to force selecting only one of the two if it doesn't make sense to have both.  In cases where a package wants to ''select'' one of these things, convert the ''select'' into a ''depends'' with a comment.&lt;br /&gt;
# multiple packages providing the same functionality: lua/luajit, jpeg/jpegturbo, expat/libxml2.  These cannot be installed side-by-side, and many packages select e.g. jpeg.  OpenGL will have this issue as well.  A relatively clean solution is to create virtual packages for these, where the user has a choice between the two.  The normal config option would be hidden for these packages.  This still adds complexity in some corner cases, e.g. some package that doesn't work in luajit, but that can probably be solved at the level of that package.&lt;br /&gt;
# Autobuild infrastructure. Thomas is working on scripts that parse the build result and put it in a database.  One important missing feature at the moment is visibility of evolution over time (i.e. distinguish regressions from recurring problems).  Even more important is just being able to see which packages are failing all the time, i.e. for each package how often it failed.  Ideally, we would also want to see how often a package has been built successfully, but when is it successful? Does the entire build have to succeed or that package?  Overall, however, the autobuild infrastructure is considered very useful - when something is wrong, it appears in the autobuild very quickly.&lt;br /&gt;
#* autobuild of the next branch: if only the master is autobuilt, we don't see a lot of problems until after the release. Delaying fixing bugs makes it more difficult to fix them. To support autobuild of the next branch, this should also be made visible in the database so we can distinguish master failures (more important) from next failures.&lt;br /&gt;
#* autobuild database is not suitable to track repeated builds of the same configuration.  It needs to keep track of different builds of the same configurations.  But the question is if this is really useful. We would like to check the existing defconfigs at every release, but it doesn't have to be tracked.  So it can be done manually.&lt;br /&gt;
# AVR32. It is end of life as far as Atmel is concerned, but of course there are still products out there using it.  It is not really blocking for buildroot.  For packages which fail to build, we can just add a ''depends on !BR2_avr32''.  But of course, until we have the AVAILABLE mechanism, carrying this kind of dependency can be painful.&lt;br /&gt;
# RPC support. Originally, the idea was to consider RPC support as a toolchain option, i.e. using ''depends''.  However, libtirpc is really a library, comparable to gettext, so it could be enabled automatically with ''select''.  Busybox is special, because we don't want to force RPC just because busybox is selected.  Therefore busybox has a user-selectable option to enable RPC-based applets (mount-nfs).  After discussion, this option was discarded - just remove mount-nfs from busybox (see below).  Other packages will use libtirpc if it was selected (manually or automatically). It's still a question what will happen when dynamically linking against libtirpc when libc also has rpc.&lt;br /&gt;
# A bit related: we'll disable mount-nfs in the default busybox config; if user disables RPC and enables mount-nfs in busybox, he'll get a compilation error.&lt;br /&gt;
# Support for VCS branches in packages: custom packages are often in a VCS and while developing, you want to track a branch of that VCS.  OVERRIDE_SRCDIR doesn't work very well because it means the user has to check everything out at the right version in the right location.  An alternative would be to teach OVERRIDE_SRCDIR about VCSes, so that ''make foo-rebuild'' re-syncs with the VCS.&lt;br /&gt;
# There is a general feeling (mainly from Thomas) that buildroot isn't very convenient during development of a project where several people are working on several components. But no solution was found.&lt;br /&gt;
# FP stuff: we now have a single SOFT_FLOAT option, but actually there's a lot more variation: neon, vfpv3, softfp, ....  To support this well, we can add a lot of extra config options to semi-automatically select the correct float options based on the subarchitecture.  There is some cross-dependency with the external toolchains, but it's doable.  There should still be an option to manually override the float options for exotic cases.  ARM thumb adds another layer of complexity.  Someone should take the lead on making this easier.&lt;br /&gt;
# Porting gcc to the generic package infrastructure.  Looks like this is a lot of work, and there's not so much need for it.&lt;br /&gt;
# Getting gcc from git.  It's more convenient to put a tarball somewhere public and use that as an alternative source, similar to avr32.&lt;br /&gt;
&lt;br /&gt;
For tomorrow:&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed.  Arriving on Fri Nov 2 20:35 at BCN airport.  Leaving Wed Nov. 8 21:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on November, 3rd at BCN airport 9:25 AM. Leaving on November 8th from BCN airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# Maxime Ripard, confirmed. Arriving on November, 1st at BCN airport. Leaving on November 8th from BCP airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed, Arriving on Fri Nov 2 21:55 at BCN airport. Leaving Sun Nov 11 17:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# Luca Ceresoli, confirmed. Arriving on November 3rd at BCN airport 10:05 AM. Leaving on November 7th from BCN airport 19:15 PM. Staying at Hotel Fira Palace. Will arrive around 11:30 AM for the meeting.&lt;br /&gt;
# Samuel Martin, confirmed. Arriving on November, 3rd at Barcelona-Franca Train Station 8:05 AM. Leaving on November 10th from Barcelona-Franca Train Station at 8:43 PM.&lt;br /&gt;
# Simon Dawson, confirmed. Arriving on November 2nd in the evening. Leaving on November 8th early morning.&lt;br /&gt;
# Mischa Jonker, confirmed. From Synopsys.com. Not contributing yet to Buildroot, but interested in using Buildroot for a brand new CPU architecture. Arriving Friday Nov 2nd BCN 21:10 CET, staying at Catalonia Barcelona Plaza (Plaza Espanya), leaving Thursday Nov 8 at 18:40 CET.&lt;br /&gt;
# Maxime Hadjinlian.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
=== Program ===&lt;br /&gt;
&lt;br /&gt;
* Saturday, 10 AM: beginning of the meeting. The first person to arrive can go directly to the front desk and ask for MARIBEL SOCIAS or anyone in the Reservations Department, and then ask for the meeting room booked for Thomas Petazzoni. [[User:ThomasPetazzoni|Thomas Petazzoni]] will only arrive at 10:30-11 AM.&lt;br /&gt;
* Saturday, 7 PM: end of the meeting&lt;br /&gt;
* Saturday, 8:30 PM: dinner sponsored by Synopsys&lt;br /&gt;
* Sunday, 10 AM: beginning of the meeting&lt;br /&gt;
* Sunday, 7 PM: end of the meeting&lt;br /&gt;
&lt;br /&gt;
=== Location ===&lt;br /&gt;
&lt;br /&gt;
The event will take place at [http://www.hotelgrumsbarcelona.com/ Hotel Grumps], in downtown Barcelona. See [http://goo.gl/maps/htYi9 this map] for the location of the hotel, and [http://goo.gl/maps/GdiaM this map] for walking directions between the Fira Palace hotel (location of the ELCE conference) and Hotel Grums.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* Autobuilder tests: needed improvements, future work. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to use a git repository as source for toolchain. This doesn't work well today. Proposed by Mischa Jonker&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Does it make sense to port the toolchains to generic-package infrastructure? Asked by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Should we remove the ability to build a toolchain on the target? And also things like development files on target, documentation on target, etc. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
&lt;br /&gt;
=== List of topics to hack on ===&lt;br /&gt;
&lt;br /&gt;
* Reduce the back log of bugs. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Reduce the back log of patches. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Work on noMMU platform support (Blackfin, Coldfire). Getting Coldfire Qemu working, adding correct support for FLAT binaries. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Package upgrades: package python3, gtk3 and latest versions of glib and al. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Triage autobuilder failures and fix them. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Improve the documentation. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Work on relocatable toolchain. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for setup.py/qmake based packages. Proposed by Samuel Martin&lt;br /&gt;
* Add some infra for make based packages (mainly using the same pattern all over). Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for Kconfig based packages (linux, barebox, busybox, uclibc, ct-ng, at91bootstrap3).  Proposed by Arnout Vandecappelle&lt;br /&gt;
* Make top-level make -j possible.  Proposed by Arnout Vandecappelle&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysELCE2012</id>
		<title>Buildroot:DeveloperDaysELCE2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysELCE2012"/>
				<updated>2012-11-03T15:46:43Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: /* Report of the meeting */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 3-4 November 2012, Barcelona Spain ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Meeting in Barcelona ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Saturday November 3rd and Sunday November 4th, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right before the Embedded Linux Conference Europe, in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
=== Event sponsored by Fluendo and Synopsys ===&lt;br /&gt;
&lt;br /&gt;
The meeting room is sponsored  by [http://www.fluendo.com Fluendo]. Thanks!&lt;br /&gt;
&lt;br /&gt;
The Saturday dinner is sponsored by [http://www.synopsys.com Synopsys]. Thanks!&lt;br /&gt;
&lt;br /&gt;
=== Report of the meeting ===&lt;br /&gt;
&lt;br /&gt;
==== Action points ====&lt;br /&gt;
* Accept perl series.&lt;br /&gt;
* Accept qemu series (after further review).&lt;br /&gt;
* Remove compiler on target.&lt;br /&gt;
* Remove development files on target.&lt;br /&gt;
* Remove documentation on target.&lt;br /&gt;
* Explain in the documentation why the above was done.&lt;br /&gt;
* Put httpd daemons outside BUSYBOX_SHOW_OTHERS.&lt;br /&gt;
* Move BUSYBOX_SHOW_OTHERS conditions to ''depends on'' inside the package Config.in&lt;br /&gt;
* busybox: disable mount-nfs in the default config.&lt;br /&gt;
* simplify patch logic: if pkg-version directory exists, use that; otherwise, use pkg-*.patch.&lt;br /&gt;
* Automate selection of correct FP and other compiler options based on subarchitecture.&lt;br /&gt;
&lt;br /&gt;
==== Details of the discussion ====&lt;br /&gt;
&lt;br /&gt;
# Perl.  The perl patch series (now at v11) looks ready to be integrated, but we have our doubts about cpanminus. The problems are: it has separate download infrastructure, which blocks some buildroot features (e.g. make source); it doesn't integrate with the legal-info.  However, CPAN is pretty important if you really want to use perl.  The decision was to accept cpanminus as well, but add some warnings that some things don't work.&lt;br /&gt;
# Qemu.  Adding this opens the door for more people to do stuff that buildroot wasn't meant for in the first place (i.e. embedded).  However, even in embedded qemu could be relevant.  Things like the compiler on the target are much worse for doing crazy things.  Giving new packages a chance is OK; we have to be much more careful with things that have global impact (like including development files on target).  Conclusion: it's OK to accept qemu.&lt;br /&gt;
# Compiler on target.  It leads to newbies using buildroot in an inappropriate way (i.e. compile on the target).  Also it only works with the internal toolchain.  And if we remove it, we can also remove &amp;quot;Development files on target&amp;quot;, which simplifies some of the build infrastructure.  Also, if you have a compiler on the target, then you can just as well use a distro.  Conclusion: we remove it.  Also a bunch of other packages can be removed (autotools, vala, ...)&lt;br /&gt;
# Documentation on target: if you need this, use a distro.  So we remove it.&lt;br /&gt;
# We need to explain in the documentation why we removed this stuff.&lt;br /&gt;
# Available stuff: i.e. solve the problem of combination of ''select'' and ''depends''. Solving it in Kconfig itself seems to be difficult: there were some patches but the kconfig people didn't like it; Yann and Thomas looked at Kconfig and it looks difficult to modify.  The AVAILABLE solution has two problems: it adds verbosity, and the recursive dependencies still should be written in the comments (&amp;quot;libfoo requires WCHAR in the toolchain&amp;quot;).  The verbosity is not considered a big issue.  For the comments: they currently don't work perfectly either.  Removing the comments altogether is an option, but then it is difficult for users to find out why a certain package isn't available.  Another possibility is to list the available packages in the documentation (automatically), and mention which toolchain dependencies they have.  Wild idea: consider Config.in as a low-level language, and define our own higher-level language from which we generate Config.in.  Alternatively, have a developer tool that verifies if everything is consistent (i.e. are the comments correct).  One more option: add a big comment in the beginning of the packages list, which says that not all toolchain options are available so not all packages are visible.  Converting the toolchain options from ''depends'' to ''select'' is not really an option, because changing toolchain options requires a make clean.  We didn't reach a conclusion, we'll come back to it tomorrow.&lt;br /&gt;
# kconfig-frontend: Yann now has a repository for Kconfig, it would be nice to branch our Kconfig from that.  The idea is to still copy it to our repository.&lt;br /&gt;
# BUSYBOX_SHOW_OTHERS: the only reason to have this is to avoid newcomers enabling things like tar etc. which are anyway already in busybox.  But for the web servers, they are clearly different from the busybox web servers (and our default busybox config doesn't even enable a web server).  Also bash is a typical one, because people write bashisms in their scripts.  This discussion is somewhat related to the discussion how to handle packages that provide the same functionality.  But for many packages, it's not even the same (httpd, bash, vim).  But actually, we're trying to solve a non-existent problem here - except for the web servers.  If we generate a list of packages in the documentation, we can add a remark to that that it's also available in busybox.  Also move the condition inside the package Config.in instead of outside and make it a ''depends on'', so it is more visible.&lt;br /&gt;
# packages with multiple variants: python2/3, Qt4/5, gtk2/3, ...  This is again similar to the expat/libxml2 issue.  Do we support both python2 and python3? We need to support both versions in most cases. Question is if we want to force that only one of the two is selected, or do we support side-by-side installation.  Conclusion: has to be looked at on a case-by-case basis.  General philosophy: don't try to be too smart, so don't try to force selecting only one of the two if it doesn't make sense to have both.  In cases where a package wants to ''select'' one of these things, convert the ''select'' into a ''depends'' with a comment.&lt;br /&gt;
# multiple packages providing the same functionality: lua/luajit, jpeg/jpegturbo, expat/libxml2.  These cannot be installed side-by-side, and many packages select e.g. jpeg.  OpenGL will have this issue as well.  A relatively clean solution is to create virtual packages for these, where the user has a choice between the two.  The normal config option would be hidden for these packages.  This still adds complexity in some corner cases, e.g. some package that doesn't work in luajit, but that can probably be solved at the level of that package.&lt;br /&gt;
# Autobuild infrastructure. Thomas is working on scripts that parse the build result and put it in a database.  One important missing feature at the moment is visibility of evolution over time (i.e. distinguish regressions from recurring problems).  Even more important is just being able to see which packages are failing all the time, i.e. for each package how often it failed.  Ideally, we would also want to see how often a package has been built successfully, but when is it successful? Does the entire build have to succeed or that package?  Overall, however, the autobuild infrastructure is considered very useful - when something is wrong, it appears in the autobuild very quickly.&lt;br /&gt;
#* autobuild of the next branch: if only the master is autobuilt, we don't see a lot of problems until after the release. Delaying fixing bugs makes it more difficult to fix them. To support autobuild of the next branch, this should also be made visible in the database so we can distinguish master failures (more important) from next failures.&lt;br /&gt;
#* autobuild database is not suitable to track repeated builds of the same configuration.  It needs to keep track of different builds of the same configurations.  But the question is if this is really useful. We would like to check the existing defconfigs at every release, but it doesn't have to be tracked.  So it can be done manually.&lt;br /&gt;
# AVR32. It is end of life as far as Atmel is concerned, but of course there are still products out there using it.  It is not really blocking for buildroot.  For packages which fail to build, we can just add a ''depends on !BR2_avr32''.  But of course, until we have the AVAILABLE mechanism, carrying this kind of dependency can be painful.&lt;br /&gt;
# RPC support. Originally, the idea was to consider RPC support as a toolchain option, i.e. using ''depends''.  However, libtirpc is really a library, comparable to gettext, so it could be enabled automatically with ''select''.  Busybox is special, because we don't want to force RPC just because busybox is selected.  Therefore busybox has a user-selectable option to enable RPC-based applets (mount-nfs).  After discussion, this option was discarded - just remove mount-nfs from busybox (see below).  Other packages will use libtirpc if it was selected (manually or automatically). It's still a question what will happen when dynamically linking against libtirpc when libc also has rpc.&lt;br /&gt;
# A bit related: we'll disable mount-nfs in the default busybox config; if user disables RPC and enables mount-nfs in busybox, he'll get a compilation error.&lt;br /&gt;
# Support for VCS branches in packages: custom packages are often in a VCS and while developing, you want to track a branch of that VCS.  OVERRIDE_SRCDIR doesn't work very well because it means the user has to check everything out at the right version in the right location.  An alternative would be to teach OVERRIDE_SRCDIR about VCSes, so that ''make foo-rebuild'' re-syncs with the VCS.&lt;br /&gt;
# There is a general feeling (mainly from Thomas) that buildroot isn't very convenient during development of a project where several people are working on several components. But no solution was found.&lt;br /&gt;
# FP stuff: we now have a single SOFT_FLOAT option, but actually there's a lot more variation: neon, vfpv3, softfp, ....  To support this well, we can add a lot of extra config options to semi-automatically select the correct float options based on the subarchitecture.  There is some cross-dependency with the external toolchains, but it's doable.  There should still be an option to manually override the float options for exotic cases.  ARM thumb adds another layer of complexity.  Someone should take the lead on making this easier.&lt;br /&gt;
&lt;br /&gt;
For tomorrow:&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to use a git repository as source for toolchain. This doesn't work well today. Proposed by Mischa Jonker&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Does it make sense to port the toolchains to generic-package infrastructure? Asked by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed.  Arriving on Fri Nov 2 20:35 at BCN airport.  Leaving Wed Nov. 8 21:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on November, 3rd at BCN airport 9:25 AM. Leaving on November 8th from BCN airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# Maxime Ripard, confirmed. Arriving on November, 1st at BCN airport. Leaving on November 8th from BCP airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed, Arriving on Fri Nov 2 21:55 at BCN airport. Leaving Sun Nov 11 17:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# Luca Ceresoli, confirmed. Arriving on November 3rd at BCN airport 10:05 AM. Leaving on November 7th from BCN airport 19:15 PM. Staying at Hotel Fira Palace. Will arrive around 11:30 AM for the meeting.&lt;br /&gt;
# Samuel Martin, confirmed. Arriving on November, 3rd at Barcelona-Franca Train Station 8:05 AM. Leaving on November 10th from Barcelona-Franca Train Station at 8:43 PM.&lt;br /&gt;
# Simon Dawson, confirmed. Arriving on November 2nd in the evening. Leaving on November 8th early morning.&lt;br /&gt;
# Mischa Jonker, confirmed. From Synopsys.com. Not contributing yet to Buildroot, but interested in using Buildroot for a brand new CPU architecture. Arriving Friday Nov 2nd BCN 21:10 CET, staying at Catalonia Barcelona Plaza (Plaza Espanya), leaving Thursday Nov 8 at 18:40 CET.&lt;br /&gt;
# Maxime Hadjinlian.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
=== Program ===&lt;br /&gt;
&lt;br /&gt;
* Saturday, 10 AM: beginning of the meeting. The first person to arrive can go directly to the front desk and ask for MARIBEL SOCIAS or anyone in the Reservations Department, and then ask for the meeting room booked for Thomas Petazzoni. [[User:ThomasPetazzoni|Thomas Petazzoni]] will only arrive at 10:30-11 AM.&lt;br /&gt;
* Saturday, 7 PM: end of the meeting&lt;br /&gt;
* Saturday, 8:30 PM: dinner sponsored by Synopsys&lt;br /&gt;
* Sunday, 10 AM: beginning of the meeting&lt;br /&gt;
* Sunday, 7 PM: end of the meeting&lt;br /&gt;
&lt;br /&gt;
=== Location ===&lt;br /&gt;
&lt;br /&gt;
The event will take place at [http://www.hotelgrumsbarcelona.com/ Hotel Grumps], in downtown Barcelona. See [http://goo.gl/maps/htYi9 this map] for the location of the hotel, and [http://goo.gl/maps/GdiaM this map] for walking directions between the Fira Palace hotel (location of the ELCE conference) and Hotel Grums.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* Autobuilder tests: needed improvements, future work. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to use a git repository as source for toolchain. This doesn't work well today. Proposed by Mischa Jonker&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Does it make sense to port the toolchains to generic-package infrastructure? Asked by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Should we remove the ability to build a toolchain on the target? And also things like development files on target, documentation on target, etc. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
&lt;br /&gt;
=== List of topics to hack on ===&lt;br /&gt;
&lt;br /&gt;
* Reduce the back log of bugs. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Reduce the back log of patches. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Work on noMMU platform support (Blackfin, Coldfire). Getting Coldfire Qemu working, adding correct support for FLAT binaries. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Package upgrades: package python3, gtk3 and latest versions of glib and al. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Triage autobuilder failures and fix them. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Improve the documentation. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Work on relocatable toolchain. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for setup.py/qmake based packages. Proposed by Samuel Martin&lt;br /&gt;
* Add some infra for make based packages (mainly using the same pattern all over). Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for Kconfig based packages (linux, barebox, busybox, uclibc, ct-ng, at91bootstrap3).  Proposed by Arnout Vandecappelle&lt;br /&gt;
* Make top-level make -j possible.  Proposed by Arnout Vandecappelle&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysELCE2012</id>
		<title>Buildroot:DeveloperDaysELCE2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysELCE2012"/>
				<updated>2012-11-03T15:42:16Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 3-4 November 2012, Barcelona Spain ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Meeting in Barcelona ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Saturday November 3rd and Sunday November 4th, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right before the Embedded Linux Conference Europe, in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
=== Event sponsored by Fluendo and Synopsys ===&lt;br /&gt;
&lt;br /&gt;
The meeting room is sponsored  by [http://www.fluendo.com Fluendo]. Thanks!&lt;br /&gt;
&lt;br /&gt;
The Saturday dinner is sponsored by [http://www.synopsys.com Synopsys]. Thanks!&lt;br /&gt;
&lt;br /&gt;
=== Report of the meeting ===&lt;br /&gt;
&lt;br /&gt;
==== Action points ====&lt;br /&gt;
* Accept perl series.&lt;br /&gt;
* Accept qemu series (after further review).&lt;br /&gt;
* Remove compiler on target.&lt;br /&gt;
* Remove development files on target.&lt;br /&gt;
* Remove documentation on target.&lt;br /&gt;
* Explain in the documentation why the above was done.&lt;br /&gt;
* Put httpd daemons outside BUSYBOX_SHOW_OTHERS.&lt;br /&gt;
* Move BUSYBOX_SHOW_OTHERS conditions to ''depends on'' inside the package Config.in&lt;br /&gt;
* busybox: disable mount-nfs in the default config.&lt;br /&gt;
* simplify patch logic: if pkg-version directory exists, use that; otherwise, use pkg-*.patch.&lt;br /&gt;
&lt;br /&gt;
==== Details of the discussion ====&lt;br /&gt;
&lt;br /&gt;
# Perl.  The perl patch series (now at v11) looks ready to be integrated, but we have our doubts about cpanminus. The problems are: it has separate download infrastructure, which blocks some buildroot features (e.g. make source); it doesn't integrate with the legal-info.  However, CPAN is pretty important if you really want to use perl.  The decision was to accept cpanminus as well, but add some warnings that some things don't work.&lt;br /&gt;
# Qemu.  Adding this opens the door for more people to do stuff that buildroot wasn't meant for in the first place (i.e. embedded).  However, even in embedded qemu could be relevant.  Things like the compiler on the target are much worse for doing crazy things.  Giving new packages a chance is OK; we have to be much more careful with things that have global impact (like including development files on target).  Conclusion: it's OK to accept qemu.&lt;br /&gt;
# Compiler on target.  It leads to newbies using buildroot in an inappropriate way (i.e. compile on the target).  Also it only works with the internal toolchain.  And if we remove it, we can also remove &amp;quot;Development files on target&amp;quot;, which simplifies some of the build infrastructure.  Also, if you have a compiler on the target, then you can just as well use a distro.  Conclusion: we remove it.  Also a bunch of other packages can be removed (autotools, vala, ...)&lt;br /&gt;
# Documentation on target: if you need this, use a distro.  So we remove it.&lt;br /&gt;
# We need to explain in the documentation why we removed this stuff.&lt;br /&gt;
# Available stuff: i.e. solve the problem of combination of ''select'' and ''depends''. Solving it in Kconfig itself seems to be difficult: there were some patches but the kconfig people didn't like it; Yann and Thomas looked at Kconfig and it looks difficult to modify.  The AVAILABLE solution has two problems: it adds verbosity, and the recursive dependencies still should be written in the comments (&amp;quot;libfoo requires WCHAR in the toolchain&amp;quot;).  The verbosity is not considered a big issue.  For the comments: they currently don't work perfectly either.  Removing the comments altogether is an option, but then it is difficult for users to find out why a certain package isn't available.  Another possibility is to list the available packages in the documentation (automatically), and mention which toolchain dependencies they have.  Wild idea: consider Config.in as a low-level language, and define our own higher-level language from which we generate Config.in.  Alternatively, have a developer tool that verifies if everything is consistent (i.e. are the comments correct).  One more option: add a big comment in the beginning of the packages list, which says that not all toolchain options are available so not all packages are visible.  Converting the toolchain options from ''depends'' to ''select'' is not really an option, because changing toolchain options requires a make clean.  We didn't reach a conclusion, we'll come back to it tomorrow.&lt;br /&gt;
# kconfig-frontend: Yann now has a repository for Kconfig, it would be nice to branch our Kconfig from that.  The idea is to still copy it to our repository.&lt;br /&gt;
# BUSYBOX_SHOW_OTHERS: the only reason to have this is to avoid newcomers enabling things like tar etc. which are anyway already in busybox.  But for the web servers, they are clearly different from the busybox web servers (and our default busybox config doesn't even enable a web server).  Also bash is a typical one, because people write bashisms in their scripts.  This discussion is somewhat related to the discussion how to handle packages that provide the same functionality.  But for many packages, it's not even the same (httpd, bash, vim).  But actually, we're trying to solve a non-existent problem here - except for the web servers.  If we generate a list of packages in the documentation, we can add a remark to that that it's also available in busybox.  Also move the condition inside the package Config.in instead of outside and make it a ''depends on'', so it is more visible.&lt;br /&gt;
# packages with multiple variants: python2/3, Qt4/5, gtk2/3, ...  This is again similar to the expat/libxml2 issue.  Do we support both python2 and python3? We need to support both versions in most cases. Question is if we want to force that only one of the two is selected, or do we support side-by-side installation.  Conclusion: has to be looked at on a case-by-case basis.  General philosophy: don't try to be too smart, so don't try to force selecting only one of the two if it doesn't make sense to have both.  In cases where a package wants to ''select'' one of these things, convert the ''select'' into a ''depends'' with a comment.&lt;br /&gt;
# multiple packages providing the same functionality: lua/luajit, jpeg/jpegturbo, expat/libxml2.  These cannot be installed side-by-side, and many packages select e.g. jpeg.  OpenGL will have this issue as well.  A relatively clean solution is to create virtual packages for these, where the user has a choice between the two.  The normal config option would be hidden for these packages.  This still adds complexity in some corner cases, e.g. some package that doesn't work in luajit, but that can probably be solved at the level of that package.&lt;br /&gt;
# Autobuild infrastructure. Thomas is working on scripts that parse the build result and put it in a database.  One important missing feature at the moment is visibility of evolution over time (i.e. distinguish regressions from recurring problems).  Even more important is just being able to see which packages are failing all the time, i.e. for each package how often it failed.  Ideally, we would also want to see how often a package has been built successfully, but when is it successful? Does the entire build have to succeed or that package?  Overall, however, the autobuild infrastructure is considered very useful - when something is wrong, it appears in the autobuild very quickly.&lt;br /&gt;
#* autobuild of the next branch: if only the master is autobuilt, we don't see a lot of problems until after the release. Delaying fixing bugs makes it more difficult to fix them. To support autobuild of the next branch, this should also be made visible in the database so we can distinguish master failures (more important) from next failures.&lt;br /&gt;
#* autobuild database is not suitable to track repeated builds of the same configuration.  It needs to keep track of different builds of the same configurations.  But the question is if this is really useful. We would like to check the existing defconfigs at every release, but it doesn't have to be tracked.  So it can be done manually.&lt;br /&gt;
# AVR32. It is end of life as far as Atmel is concerned, but of course there are still products out there using it.  It is not really blocking for buildroot.  For packages which fail to build, we can just add a ''depends on !BR2_avr32''.  But of course, until we have the AVAILABLE mechanism, carrying this kind of dependency can be painful.&lt;br /&gt;
# RPC support. Originally, the idea was to consider RPC support as a toolchain option, i.e. using ''depends''.  However, libtirpc is really a library, comparable to gettext, so it could be enabled automatically with ''select''.  Busybox is special, because we don't want to force RPC just because busybox is selected.  Therefore busybox has a user-selectable option to enable RPC-based applets (mount-nfs).  After discussion, this option was discarded - just remove mount-nfs from busybox (see below).  Other packages will use libtirpc if it was selected (manually or automatically). It's still a question what will happen when dynamically linking against libtirpc when libc also has rpc.&lt;br /&gt;
# A bit related: we'll disable mount-nfs in the default busybox config; if user disables RPC and enables mount-nfs in busybox, he'll get a compilation error.&lt;br /&gt;
# Support for VCS branches in packages: custom packages are often in a VCS and while developing, you want to track a branch of that VCS.  OVERRIDE_SRCDIR doesn't work very well because it means the user has to check everything out at the right version in the right location.  An alternative would be to teach OVERRIDE_SRCDIR about VCSes, so that ''make foo-rebuild'' re-syncs with the VCS.&lt;br /&gt;
# There is a general feeling (mainly from Thomas) that buildroot isn't very convenient during development of a project where several people are working on several components. But no solution was found.&lt;br /&gt;
# FP stuff: we now have a single SOFT_FLOAT option, but actually there's a lot more variation: neon, vfpv3, softfp, ....  To support this well, we can add a lot of extra config options to semi-automatically select the correct float options based on the subarchitecture.  There is some cross-dependency with the external toolchains, but it's doable.  There should still be an option to manually override the float options for exotic cases.  ARM thumb adds another layer of complexity.&lt;br /&gt;
&lt;br /&gt;
For tomorrow:&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to use a git repository as source for toolchain. This doesn't work well today. Proposed by Mischa Jonker&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Does it make sense to port the toolchains to generic-package infrastructure? Asked by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed.  Arriving on Fri Nov 2 20:35 at BCN airport.  Leaving Wed Nov. 8 21:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on November, 3rd at BCN airport 9:25 AM. Leaving on November 8th from BCN airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# Maxime Ripard, confirmed. Arriving on November, 1st at BCN airport. Leaving on November 8th from BCP airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed, Arriving on Fri Nov 2 21:55 at BCN airport. Leaving Sun Nov 11 17:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# Luca Ceresoli, confirmed. Arriving on November 3rd at BCN airport 10:05 AM. Leaving on November 7th from BCN airport 19:15 PM. Staying at Hotel Fira Palace. Will arrive around 11:30 AM for the meeting.&lt;br /&gt;
# Samuel Martin, confirmed. Arriving on November, 3rd at Barcelona-Franca Train Station 8:05 AM. Leaving on November 10th from Barcelona-Franca Train Station at 8:43 PM.&lt;br /&gt;
# Simon Dawson, confirmed. Arriving on November 2nd in the evening. Leaving on November 8th early morning.&lt;br /&gt;
# Mischa Jonker, confirmed. From Synopsys.com. Not contributing yet to Buildroot, but interested in using Buildroot for a brand new CPU architecture. Arriving Friday Nov 2nd BCN 21:10 CET, staying at Catalonia Barcelona Plaza (Plaza Espanya), leaving Thursday Nov 8 at 18:40 CET.&lt;br /&gt;
# Maxime Hadjinlian.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
=== Program ===&lt;br /&gt;
&lt;br /&gt;
* Saturday, 10 AM: beginning of the meeting. The first person to arrive can go directly to the front desk and ask for MARIBEL SOCIAS or anyone in the Reservations Department, and then ask for the meeting room booked for Thomas Petazzoni. [[User:ThomasPetazzoni|Thomas Petazzoni]] will only arrive at 10:30-11 AM.&lt;br /&gt;
* Saturday, 7 PM: end of the meeting&lt;br /&gt;
* Saturday, 8:30 PM: dinner sponsored by Synopsys&lt;br /&gt;
* Sunday, 10 AM: beginning of the meeting&lt;br /&gt;
* Sunday, 7 PM: end of the meeting&lt;br /&gt;
&lt;br /&gt;
=== Location ===&lt;br /&gt;
&lt;br /&gt;
The event will take place at [http://www.hotelgrumsbarcelona.com/ Hotel Grumps], in downtown Barcelona. See [http://goo.gl/maps/htYi9 this map] for the location of the hotel, and [http://goo.gl/maps/GdiaM this map] for walking directions between the Fira Palace hotel (location of the ELCE conference) and Hotel Grums.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* Autobuilder tests: needed improvements, future work. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to use a git repository as source for toolchain. This doesn't work well today. Proposed by Mischa Jonker&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Does it make sense to port the toolchains to generic-package infrastructure? Asked by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Should we remove the ability to build a toolchain on the target? And also things like development files on target, documentation on target, etc. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
&lt;br /&gt;
=== List of topics to hack on ===&lt;br /&gt;
&lt;br /&gt;
* Reduce the back log of bugs. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Reduce the back log of patches. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Work on noMMU platform support (Blackfin, Coldfire). Getting Coldfire Qemu working, adding correct support for FLAT binaries. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Package upgrades: package python3, gtk3 and latest versions of glib and al. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Triage autobuilder failures and fix them. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Improve the documentation. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Work on relocatable toolchain. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for setup.py/qmake based packages. Proposed by Samuel Martin&lt;br /&gt;
* Add some infra for make based packages (mainly using the same pattern all over). Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for Kconfig based packages (linux, barebox, busybox, uclibc, ct-ng, at91bootstrap3).  Proposed by Arnout Vandecappelle&lt;br /&gt;
* Make top-level make -j possible.  Proposed by Arnout Vandecappelle&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysELCE2012</id>
		<title>Buildroot:DeveloperDaysELCE2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysELCE2012"/>
				<updated>2012-11-03T15:24:26Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: /* Report of the meeting */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 3-4 November 2012, Barcelona Spain ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Meeting in Barcelona ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Saturday November 3rd and Sunday November 4th, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right before the Embedded Linux Conference Europe, in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
=== Event sponsored by Fluendo and Synopsys ===&lt;br /&gt;
&lt;br /&gt;
The meeting room is sponsored  by [http://www.fluendo.com Fluendo]. Thanks!&lt;br /&gt;
&lt;br /&gt;
The Saturday dinner is sponsored by [http://www.synopsys.com Synopsys]. Thanks!&lt;br /&gt;
&lt;br /&gt;
=== Report of the meeting ===&lt;br /&gt;
&lt;br /&gt;
==== Action points ====&lt;br /&gt;
* Accept perl series.&lt;br /&gt;
* Accept qemu series (after further review).&lt;br /&gt;
* Remove compiler on target.&lt;br /&gt;
* Remove development files on target.&lt;br /&gt;
* Remove documentation on target.&lt;br /&gt;
* Explain in the documentation why the above was done.&lt;br /&gt;
* Put httpd daemons outside BUSYBOX_SHOW_OTHERS.&lt;br /&gt;
* Move BUSYBOX_SHOW_OTHERS conditions to ''depends on'' inside the package Config.in&lt;br /&gt;
* busybox: disable mount-nfs in the default config.&lt;br /&gt;
* simplify patch logic: if pkg-version directory exists, use that; otherwise, use pkg-*.patch.&lt;br /&gt;
&lt;br /&gt;
==== Details of the discussion ====&lt;br /&gt;
&lt;br /&gt;
# Perl.  The perl patch series (now at v11) looks ready to be integrated, but we have our doubts about cpanminus. The problems are: it has separate download infrastructure, which blocks some buildroot features (e.g. make source); it doesn't integrate with the legal-info.  However, CPAN is pretty important if you really want to use perl.  The decision was to accept cpanminus as well, but add some warnings that some things don't work.&lt;br /&gt;
# Qemu.  Adding this opens the door for more people to do stuff that buildroot wasn't meant for in the first place (i.e. embedded).  However, even in embedded qemu could be relevant.  Things like the compiler on the target are much worse for doing crazy things.  Giving new packages a chance is OK; we have to be much more careful with things that have global impact (like including development files on target).  Conclusion: it's OK to accept qemu.&lt;br /&gt;
# Compiler on target.  It leads to newbies using buildroot in an inappropriate way (i.e. compile on the target).  Also it only works with the internal toolchain.  And if we remove it, we can also remove &amp;quot;Development files on target&amp;quot;, which simplifies some of the build infrastructure.  Also, if you have a compiler on the target, then you can just as well use a distro.  Conclusion: we remove it.  Also a bunch of other packages can be removed (autotools, vala, ...)&lt;br /&gt;
# Documentation on target: if you need this, use a distro.  So we remove it.&lt;br /&gt;
# We need to explain in the documentation why we removed this stuff.&lt;br /&gt;
# Available stuff: i.e. solve the problem of combination of ''select'' and ''depends''. Solving it in Kconfig itself seems to be difficult: there were some patches but the kconfig people didn't like it; Yann and Thomas looked at Kconfig and it looks difficult to modify.  The AVAILABLE solution has two problems: it adds verbosity, and the recursive dependencies still should be written in the comments (&amp;quot;libfoo requires WCHAR in the toolchain&amp;quot;).  The verbosity is not considered a big issue.  For the comments: they currently don't work perfectly either.  Removing the comments altogether is an option, but then it is difficult for users to find out why a certain package isn't available.  Another possibility is to list the available packages in the documentation (automatically), and mention which toolchain dependencies they have.  Wild idea: consider Config.in as a low-level language, and define our own higher-level language from which we generate Config.in.  Alternatively, have a developer tool that verifies if everything is consistent (i.e. are the comments correct).  One more option: add a big comment in the beginning of the packages list, which says that not all toolchain options are available so not all packages are visible.  Converting the toolchain options from ''depends'' to ''select'' is not really an option, because changing toolchain options requires a make clean.  We didn't reach a conclusion, we'll come back to it tomorrow.&lt;br /&gt;
# kconfig-frontend: Yann now has a repository for Kconfig, it would be nice to branch our Kconfig from that.  The idea is to still copy it to our repository.&lt;br /&gt;
# BUSYBOX_SHOW_OTHERS: the only reason to have this is to avoid newcomers enabling things like tar etc. which are anyway already in busybox.  But for the web servers, they are clearly different from the busybox web servers (and our default busybox config doesn't even enable a web server).  Also bash is a typical one, because people write bashisms in their scripts.  This discussion is somewhat related to the discussion how to handle packages that provide the same functionality.  But for many packages, it's not even the same (httpd, bash, vim).  But actually, we're trying to solve a non-existent problem here - except for the web servers.  If we generate a list of packages in the documentation, we can add a remark to that that it's also available in busybox.  Also move the condition inside the package Config.in instead of outside and make it a ''depends on'', so it is more visible.&lt;br /&gt;
# packages with multiple variants: python2/3, Qt4/5, gtk2/3, ...  This is again similar to the expat/libxml2 issue.  Do we support both python2 and python3? We need to support both versions in most cases. Question is if we want to force that only one of the two is selected, or do we support side-by-side installation.  Conclusion: has to be looked at on a case-by-case basis.  General philosophy: don't try to be too smart, so don't try to force selecting only one of the two if it doesn't make sense to have both.  In cases where a package wants to ''select'' one of these things, convert the ''select'' into a ''depends'' with a comment.&lt;br /&gt;
# multiple packages providing the same functionality: lua/luajit, jpeg/jpegturbo, expat/libxml2.  These cannot be installed side-by-side, and many packages select e.g. jpeg.  OpenGL will have this issue as well.  A relatively clean solution is to create virtual packages for these, where the user has a choice between the two.  The normal config option would be hidden for these packages.  This still adds complexity in some corner cases, e.g. some package that doesn't work in luajit, but that can probably be solved at the level of that package.&lt;br /&gt;
# Autobuild infrastructure. Thomas is working on scripts that parse the build result and put it in a database.  One important missing feature at the moment is visibility of evolution over time (i.e. distinguish regressions from recurring problems).  Even more important is just being able to see which packages are failing all the time, i.e. for each package how often it failed.  Ideally, we would also want to see how often a package has been built successfully, but when is it successful? Does the entire build have to succeed or that package?  Overall, however, the autobuild infrastructure is considered very useful - when something is wrong, it appears in the autobuild very quickly.&lt;br /&gt;
#* autobuild of the next branch: if only the master is autobuilt, we don't see a lot of problems until after the release. Delaying fixing bugs makes it more difficult to fix them. To support autobuild of the next branch, this should also be made visible in the database so we can distinguish master failures (more important) from next failures.&lt;br /&gt;
#* autobuild database is not suitable to track repeated builds of the same configuration.  It needs to keep track of different builds of the same configurations.  But the question is if this is really useful. We would like to check the existing defconfigs at every release, but it doesn't have to be tracked.  So it can be done manually.&lt;br /&gt;
# AVR32. It is end of life as far as Atmel is concerned, but of course there are still products out there using it.  It is not really blocking for buildroot.  For packages which fail to build, we can just add a ''depends on !BR2_avr32''.  But of course, until we have the AVAILABLE mechanism, carrying this kind of dependency can be painful.&lt;br /&gt;
# RPC support. Originally, the idea was to consider RPC support as a toolchain option, i.e. using ''depends''.  However, libtirpc is really a library, comparable to gettext, so it could be enabled automatically with ''select''.  Busybox is special, because we don't want to force RPC just because busybox is selected.  Therefore busybox has a user-selectable option to enable RPC-based applets (mount-nfs).  After discussion, this option was discarded - just remove mount-nfs from busybox (see below).  Other packages will use libtirpc if it was selected (manually or automatically). It's still a question what will happen when dynamically linking against libtirpc when libc also has rpc.&lt;br /&gt;
# A bit related: we'll disable mount-nfs in the default busybox config; if user disables RPC and enables mount-nfs in busybox, he'll get a compilation error.&lt;br /&gt;
# Support for VCS branches in packages: custom packages are often in a VCS and while developing, you want to track a branch of that VCS.  OVERRIDE_SRCDIR doesn't work very well because it means the user has to check everything out at the right version in the right location.  An alternative would be to teach OVERRIDE_SRCDIR about VCSes, so that ''make foo-rebuild'' re-syncs with the VCS.&lt;br /&gt;
# There is a general feeling (mainly from Thomas) that buildroot isn't very convenient during development of a project where several people are working on several components. But no solution was found.&lt;br /&gt;
&lt;br /&gt;
For tomorrow:&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to use a git repository as source for toolchain. This doesn't work well today. Proposed by Mischa Jonker&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Does it make sense to port the toolchains to generic-package infrastructure? Asked by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed.  Arriving on Fri Nov 2 20:35 at BCN airport.  Leaving Wed Nov. 8 21:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on November, 3rd at BCN airport 9:25 AM. Leaving on November 8th from BCN airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# Maxime Ripard, confirmed. Arriving on November, 1st at BCN airport. Leaving on November 8th from BCP airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed, Arriving on Fri Nov 2 21:55 at BCN airport. Leaving Sun Nov 11 17:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# Luca Ceresoli, confirmed. Arriving on November 3rd at BCN airport 10:05 AM. Leaving on November 7th from BCN airport 19:15 PM. Staying at Hotel Fira Palace. Will arrive around 11:30 AM for the meeting.&lt;br /&gt;
# Samuel Martin, confirmed. Arriving on November, 3rd at Barcelona-Franca Train Station 8:05 AM. Leaving on November 10th from Barcelona-Franca Train Station at 8:43 PM.&lt;br /&gt;
# Simon Dawson, confirmed. Arriving on November 2nd in the evening. Leaving on November 8th early morning.&lt;br /&gt;
# Mischa Jonker, confirmed. From Synopsys.com. Not contributing yet to Buildroot, but interested in using Buildroot for a brand new CPU architecture. Arriving Friday Nov 2nd BCN 21:10 CET, staying at Catalonia Barcelona Plaza (Plaza Espanya), leaving Thursday Nov 8 at 18:40 CET.&lt;br /&gt;
# Maxime Hadjinlian.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
=== Program ===&lt;br /&gt;
&lt;br /&gt;
* Saturday, 10 AM: beginning of the meeting. The first person to arrive can go directly to the front desk and ask for MARIBEL SOCIAS or anyone in the Reservations Department, and then ask for the meeting room booked for Thomas Petazzoni. [[User:ThomasPetazzoni|Thomas Petazzoni]] will only arrive at 10:30-11 AM.&lt;br /&gt;
* Saturday, 7 PM: end of the meeting&lt;br /&gt;
* Saturday, 8:30 PM: dinner sponsored by Synopsys&lt;br /&gt;
* Sunday, 10 AM: beginning of the meeting&lt;br /&gt;
* Sunday, 7 PM: end of the meeting&lt;br /&gt;
&lt;br /&gt;
=== Location ===&lt;br /&gt;
&lt;br /&gt;
The event will take place at [http://www.hotelgrumsbarcelona.com/ Hotel Grumps], in downtown Barcelona. See [http://goo.gl/maps/htYi9 this map] for the location of the hotel, and [http://goo.gl/maps/GdiaM this map] for walking directions between the Fira Palace hotel (location of the ELCE conference) and Hotel Grums.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* Autobuilder tests: needed improvements, future work. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to use a git repository as source for toolchain. This doesn't work well today. Proposed by Mischa Jonker&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Does it make sense to port the toolchains to generic-package infrastructure? Asked by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Should we remove the ability to build a toolchain on the target? And also things like development files on target, documentation on target, etc. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
&lt;br /&gt;
=== List of topics to hack on ===&lt;br /&gt;
&lt;br /&gt;
* Reduce the back log of bugs. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Reduce the back log of patches. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Work on noMMU platform support (Blackfin, Coldfire). Getting Coldfire Qemu working, adding correct support for FLAT binaries. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Package upgrades: package python3, gtk3 and latest versions of glib and al. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Triage autobuilder failures and fix them. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Improve the documentation. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Work on relocatable toolchain. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for setup.py/qmake based packages. Proposed by Samuel Martin&lt;br /&gt;
* Add some infra for make based packages (mainly using the same pattern all over). Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for Kconfig based packages (linux, barebox, busybox, uclibc, ct-ng, at91bootstrap3).  Proposed by Arnout Vandecappelle&lt;br /&gt;
* Make top-level make -j possible.  Proposed by Arnout Vandecappelle&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysELCE2012</id>
		<title>Buildroot:DeveloperDaysELCE2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysELCE2012"/>
				<updated>2012-11-03T15:17:56Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 3-4 November 2012, Barcelona Spain ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Meeting in Barcelona ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Saturday November 3rd and Sunday November 4th, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right before the Embedded Linux Conference Europe, in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
=== Event sponsored by Fluendo and Synopsys ===&lt;br /&gt;
&lt;br /&gt;
The meeting room is sponsored  by [http://www.fluendo.com Fluendo]. Thanks!&lt;br /&gt;
&lt;br /&gt;
The Saturday dinner is sponsored by [http://www.synopsys.com Synopsys]. Thanks!&lt;br /&gt;
&lt;br /&gt;
=== Report of the meeting ===&lt;br /&gt;
&lt;br /&gt;
==== Action points ====&lt;br /&gt;
* Accept perl series.&lt;br /&gt;
* Accept qemu series (after further review).&lt;br /&gt;
* Remove compiler on target.&lt;br /&gt;
* Remove development files on target.&lt;br /&gt;
* Remove documentation on target.&lt;br /&gt;
* Explain in the documentation why the above was done.&lt;br /&gt;
* Put httpd daemons outside BUSYBOX_SHOW_OTHERS.&lt;br /&gt;
* Move BUSYBOX_SHOW_OTHERS conditions to ''depends on'' inside the package Config.in&lt;br /&gt;
* busybox: disable mount-nfs in the default config.&lt;br /&gt;
&lt;br /&gt;
==== Details of the discussion ====&lt;br /&gt;
&lt;br /&gt;
# Perl.  The perl patch series (now at v11) looks ready to be integrated, but we have our doubts about cpanminus. The problems are: it has separate download infrastructure, which blocks some buildroot features (e.g. make source); it doesn't integrate with the legal-info.  However, CPAN is pretty important if you really want to use perl.  The decision was to accept cpanminus as well, but add some warnings that some things don't work.&lt;br /&gt;
# Qemu.  Adding this opens the door for more people to do stuff that buildroot wasn't meant for in the first place (i.e. embedded).  However, even in embedded qemu could be relevant.  Things like the compiler on the target are much worse for doing crazy things.  Giving new packages a chance is OK; we have to be much more careful with things that have global impact (like including development files on target).  Conclusion: it's OK to accept qemu.&lt;br /&gt;
# Compiler on target.  It leads to newbies using buildroot in an inappropriate way (i.e. compile on the target).  Also it only works with the internal toolchain.  And if we remove it, we can also remove &amp;quot;Development files on target&amp;quot;, which simplifies some of the build infrastructure.  Also, if you have a compiler on the target, then you can just as well use a distro.  Conclusion: we remove it.  Also a bunch of other packages can be removed (autotools, vala, ...)&lt;br /&gt;
# Documentation on target: if you need this, use a distro.  So we remove it.&lt;br /&gt;
# We need to explain in the documentation why we removed this stuff.&lt;br /&gt;
# Available stuff: i.e. solve the problem of combination of ''select'' and ''depends''. Solving it in Kconfig itself seems to be difficult: there were some patches but the kconfig people didn't like it; Yann and Thomas looked at Kconfig and it looks difficult to modify.  The AVAILABLE solution has two problems: it adds verbosity, and the recursive dependencies still should be written in the comments (&amp;quot;libfoo requires WCHAR in the toolchain&amp;quot;).  The verbosity is not considered a big issue.  For the comments: they currently don't work perfectly either.  Removing the comments altogether is an option, but then it is difficult for users to find out why a certain package isn't available.  Another possibility is to list the available packages in the documentation (automatically), and mention which toolchain dependencies they have.  Wild idea: consider Config.in as a low-level language, and define our own higher-level language from which we generate Config.in.  Alternatively, have a developer tool that verifies if everything is consistent (i.e. are the comments correct).  One more option: add a big comment in the beginning of the packages list, which says that not all toolchain options are available so not all packages are visible.  Converting the toolchain options from ''depends'' to ''select'' is not really an option, because changing toolchain options requires a make clean.  We didn't reach a conclusion, we'll come back to it tomorrow.&lt;br /&gt;
# kconfig-frontend: Yann now has a repository for Kconfig, it would be nice to branch our Kconfig from that.  The idea is to still copy it to our repository.&lt;br /&gt;
# BUSYBOX_SHOW_OTHERS: the only reason to have this is to avoid newcomers enabling things like tar etc. which are anyway already in busybox.  But for the web servers, they are clearly different from the busybox web servers (and our default busybox config doesn't even enable a web server).  Also bash is a typical one, because people write bashisms in their scripts.  This discussion is somewhat related to the discussion how to handle packages that provide the same functionality.  But for many packages, it's not even the same (httpd, bash, vim).  But actually, we're trying to solve a non-existent problem here - except for the web servers.  If we generate a list of packages in the documentation, we can add a remark to that that it's also available in busybox.  Also move the condition inside the package Config.in instead of outside and make it a ''depends on'', so it is more visible.&lt;br /&gt;
# packages with multiple variants: python2/3, Qt4/5, gtk2/3, ...  This is again similar to the expat/libxml2 issue.  Do we support both python2 and python3? We need to support both versions in most cases. Question is if we want to force that only one of the two is selected, or do we support side-by-side installation.  Conclusion: has to be looked at on a case-by-case basis.  General philosophy: don't try to be too smart, so don't try to force selecting only one of the two if it doesn't make sense to have both.  In cases where a package wants to ''select'' one of these things, convert the ''select'' into a ''depends'' with a comment.&lt;br /&gt;
# multiple packages providing the same functionality: lua/luajit, jpeg/jpegturbo, expat/libxml2.  These cannot be installed side-by-side, and many packages select e.g. jpeg.  OpenGL will have this issue as well.  A relatively clean solution is to create virtual packages for these, where the user has a choice between the two.  The normal config option would be hidden for these packages.  This still adds complexity in some corner cases, e.g. some package that doesn't work in luajit, but that can probably be solved at the level of that package.&lt;br /&gt;
# Autobuild infrastructure. Thomas is working on scripts that parse the build result and put it in a database.  One important missing feature at the moment is visibility of evolution over time (i.e. distinguish regressions from recurring problems).  Even more important is just being able to see which packages are failing all the time, i.e. for each package how often it failed.  Ideally, we would also want to see how often a package has been built successfully, but when is it successful? Does the entire build have to succeed or that package?  Overall, however, the autobuild infrastructure is considered very useful - when something is wrong, it appears in the autobuild very quickly.&lt;br /&gt;
#* autobuild of the next branch: if only the master is autobuilt, we don't see a lot of problems until after the release. Delaying fixing bugs makes it more difficult to fix them. To support autobuild of the next branch, this should also be made visible in the database so we can distinguish master failures (more important) from next failures.&lt;br /&gt;
#* autobuild database is not suitable to track repeated builds of the same configuration.  It needs to keep track of different builds of the same configurations.  But the question is if this is really useful. We would like to check the existing defconfigs at every release, but it doesn't have to be tracked.  So it can be done manually.&lt;br /&gt;
# AVR32. It is end of life as far as Atmel is concerned, but of course there are still products out there using it.  It is not really blocking for buildroot.  For packages which fail to build, we can just add a ''depends on !BR2_avr32''.  But of course, until we have the AVAILABLE mechanism, carrying this kind of dependency can be painful.&lt;br /&gt;
# RPC support. Originally, the idea was to consider RPC support as a toolchain option, i.e. using ''depends''.  However, libtirpc is really a library, comparable to gettext, so it could be enabled automatically with ''select''.  Busybox is special, because we don't want to force RPC just because busybox is selected.  Therefore busybox has a user-selectable option to enable RPC-based applets (mount-nfs).  After discussion, this option was discarded - just remove mount-nfs from busybox (see below).  Other packages will use libtirpc if it was selected (manually or automatically). It's still a question what will happen when dynamically linking against libtirpc when libc also has rpc.&lt;br /&gt;
# A bit related: we'll disable mount-nfs in the default busybox config; if user disables RPC and enables mount-nfs in busybox, he'll get a compilation error.&lt;br /&gt;
# Support for VCS branches in packages: custom packages are often in a VCS and while developing, you want to track a branch of that VCS.  OVERRIDE_SRCDIR doesn't work very well because it means the user has to check everything out at the right version in the right location.  An alternative would be to teach OVERRIDE_SRCDIR about VCSes, so that ''make foo-rebuild'' re-syncs with the VCS.&lt;br /&gt;
&lt;br /&gt;
For tomorrow:&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to use a git repository as source for toolchain. This doesn't work well today. Proposed by Mischa Jonker&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Does it make sense to port the toolchains to generic-package infrastructure? Asked by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed.  Arriving on Fri Nov 2 20:35 at BCN airport.  Leaving Wed Nov. 8 21:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on November, 3rd at BCN airport 9:25 AM. Leaving on November 8th from BCN airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# Maxime Ripard, confirmed. Arriving on November, 1st at BCN airport. Leaving on November 8th from BCP airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed, Arriving on Fri Nov 2 21:55 at BCN airport. Leaving Sun Nov 11 17:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# Luca Ceresoli, confirmed. Arriving on November 3rd at BCN airport 10:05 AM. Leaving on November 7th from BCN airport 19:15 PM. Staying at Hotel Fira Palace. Will arrive around 11:30 AM for the meeting.&lt;br /&gt;
# Samuel Martin, confirmed. Arriving on November, 3rd at Barcelona-Franca Train Station 8:05 AM. Leaving on November 10th from Barcelona-Franca Train Station at 8:43 PM.&lt;br /&gt;
# Simon Dawson, confirmed. Arriving on November 2nd in the evening. Leaving on November 8th early morning.&lt;br /&gt;
# Mischa Jonker, confirmed. From Synopsys.com. Not contributing yet to Buildroot, but interested in using Buildroot for a brand new CPU architecture. Arriving Friday Nov 2nd BCN 21:10 CET, staying at Catalonia Barcelona Plaza (Plaza Espanya), leaving Thursday Nov 8 at 18:40 CET.&lt;br /&gt;
# Maxime Hadjinlian.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
=== Program ===&lt;br /&gt;
&lt;br /&gt;
* Saturday, 10 AM: beginning of the meeting. The first person to arrive can go directly to the front desk and ask for MARIBEL SOCIAS or anyone in the Reservations Department, and then ask for the meeting room booked for Thomas Petazzoni. [[User:ThomasPetazzoni|Thomas Petazzoni]] will only arrive at 10:30-11 AM.&lt;br /&gt;
* Saturday, 7 PM: end of the meeting&lt;br /&gt;
* Saturday, 8:30 PM: dinner sponsored by Synopsys&lt;br /&gt;
* Sunday, 10 AM: beginning of the meeting&lt;br /&gt;
* Sunday, 7 PM: end of the meeting&lt;br /&gt;
&lt;br /&gt;
=== Location ===&lt;br /&gt;
&lt;br /&gt;
The event will take place at [http://www.hotelgrumsbarcelona.com/ Hotel Grumps], in downtown Barcelona. See [http://goo.gl/maps/htYi9 this map] for the location of the hotel, and [http://goo.gl/maps/GdiaM this map] for walking directions between the Fira Palace hotel (location of the ELCE conference) and Hotel Grums.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* Autobuilder tests: needed improvements, future work. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to use a git repository as source for toolchain. This doesn't work well today. Proposed by Mischa Jonker&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Does it make sense to port the toolchains to generic-package infrastructure? Asked by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Should we remove the ability to build a toolchain on the target? And also things like development files on target, documentation on target, etc. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
&lt;br /&gt;
=== List of topics to hack on ===&lt;br /&gt;
&lt;br /&gt;
* Reduce the back log of bugs. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Reduce the back log of patches. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Work on noMMU platform support (Blackfin, Coldfire). Getting Coldfire Qemu working, adding correct support for FLAT binaries. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Package upgrades: package python3, gtk3 and latest versions of glib and al. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Triage autobuilder failures and fix them. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Improve the documentation. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Work on relocatable toolchain. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for setup.py/qmake based packages. Proposed by Samuel Martin&lt;br /&gt;
* Add some infra for make based packages (mainly using the same pattern all over). Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for Kconfig based packages (linux, barebox, busybox, uclibc, ct-ng, at91bootstrap3).  Proposed by Arnout Vandecappelle&lt;br /&gt;
* Make top-level make -j possible.  Proposed by Arnout Vandecappelle&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysELCE2012</id>
		<title>Buildroot:DeveloperDaysELCE2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysELCE2012"/>
				<updated>2012-11-03T14:58:52Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 3-4 November 2012, Barcelona Spain ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Meeting in Barcelona ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Saturday November 3rd and Sunday November 4th, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right before the Embedded Linux Conference Europe, in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
=== Event sponsored by Fluendo and Synopsys ===&lt;br /&gt;
&lt;br /&gt;
The meeting room is sponsored  by [http://www.fluendo.com Fluendo]. Thanks!&lt;br /&gt;
&lt;br /&gt;
The Saturday dinner is sponsored by [http://www.synopsys.com Synopsys]. Thanks!&lt;br /&gt;
&lt;br /&gt;
=== Report of the meeting ===&lt;br /&gt;
&lt;br /&gt;
==== Action points ====&lt;br /&gt;
* Accept perl series.&lt;br /&gt;
* Accept qemu series (after further review).&lt;br /&gt;
* Remove compiler on target.&lt;br /&gt;
* Remove development files on target.&lt;br /&gt;
* Remove documentation on target.&lt;br /&gt;
* Explain in the documentation why the above was done.&lt;br /&gt;
* Put httpd daemons outside BUSYBOX_SHOW_OTHERS.&lt;br /&gt;
* Move BUSYBOX_SHOW_OTHERS conditions to ''depends on'' inside the package Config.in&lt;br /&gt;
* busybox: disable mount-nfs in the default config.&lt;br /&gt;
&lt;br /&gt;
==== Details of the discussion ====&lt;br /&gt;
&lt;br /&gt;
# Perl.  The perl patch series (now at v11) looks ready to be integrated, but we have our doubts about cpanminus. The problems are: it has separate download infrastructure, which blocks some buildroot features (e.g. make source); it doesn't integrate with the legal-info.  However, CPAN is pretty important if you really want to use perl.  The decision was to accept cpanminus as well, but add some warnings that some things don't work.&lt;br /&gt;
# Qemu.  Adding this opens the door for more people to do stuff that buildroot wasn't meant for in the first place (i.e. embedded).  However, even in embedded qemu could be relevant.  Things like the compiler on the target are much worse for doing crazy things.  Giving new packages a chance is OK; we have to be much more careful with things that have global impact (like including development files on target).  Conclusion: it's OK to accept qemu.&lt;br /&gt;
# Compiler on target.  It leads to newbies using buildroot in an inappropriate way (i.e. compile on the target).  Also it only works with the internal toolchain.  And if we remove it, we can also remove &amp;quot;Development files on target&amp;quot;, which simplifies some of the build infrastructure.  Also, if you have a compiler on the target, then you can just as well use a distro.  Conclusion: we remove it.  Also a bunch of other packages can be removed (autotools, vala, ...)&lt;br /&gt;
# Documentation on target: if you need this, use a distro.  So we remove it.&lt;br /&gt;
# We need to explain in the documentation why we removed this stuff.&lt;br /&gt;
# Available stuff: i.e. solve the problem of combination of ''select'' and ''depends''. Solving it in Kconfig itself seems to be difficult: there were some patches but the kconfig people didn't like it; Yann and Thomas looked at Kconfig and it looks difficult to modify.  The AVAILABLE solution has two problems: it adds verbosity, and the recursive dependencies still should be written in the comments (&amp;quot;libfoo requires WCHAR in the toolchain&amp;quot;).  The verbosity is not considered a big issue.  For the comments: they currently don't work perfectly either.  Removing the comments altogether is an option, but then it is difficult for users to find out why a certain package isn't available.  Another possibility is to list the available packages in the documentation (automatically), and mention which toolchain dependencies they have.  Wild idea: consider Config.in as a low-level language, and define our own higher-level language from which we generate Config.in.  Alternatively, have a developer tool that verifies if everything is consistent (i.e. are the comments correct).  One more option: add a big comment in the beginning of the packages list, which says that not all toolchain options are available so not all packages are visible.  Converting the toolchain options from ''depends'' to ''select'' is not really an option, because changing toolchain options requires a make clean.  We didn't reach a conclusion, we'll come back to it tomorrow.&lt;br /&gt;
# kconfig-frontend: Yann now has a repository for Kconfig, it would be nice to branch our Kconfig from that.  The idea is to still copy it to our repository.&lt;br /&gt;
# BUSYBOX_SHOW_OTHERS: the only reason to have this is to avoid newcomers enabling things like tar etc. which are anyway already in busybox.  But for the web servers, they are clearly different from the busybox web servers (and our default busybox config doesn't even enable a web server).  Also bash is a typical one, because people write bashisms in their scripts.  This discussion is somewhat related to the discussion how to handle packages that provide the same functionality.  But for many packages, it's not even the same (httpd, bash, vim).  But actually, we're trying to solve a non-existent problem here - except for the web servers.  If we generate a list of packages in the documentation, we can add a remark to that that it's also available in busybox.  Also move the condition inside the package Config.in instead of outside and make it a ''depends on'', so it is more visible.&lt;br /&gt;
# packages with multiple variants: python2/3, Qt4/5, gtk2/3, ...  This is again similar to the expat/libxml2 issue.  Do we support both python2 and python3? We need to support both versions in most cases. Question is if we want to force that only one of the two is selected, or do we support side-by-side installation.  Conclusion: has to be looked at on a case-by-case basis.  General philosophy: don't try to be too smart, so don't try to force selecting only one of the two if it doesn't make sense to have both.  In cases where a package wants to ''select'' one of these things, convert the ''select'' into a ''depends'' with a comment.&lt;br /&gt;
# multiple packages providing the same functionality: lua/luajit, jpeg/jpegturbo, expat/libxml2.  These cannot be installed side-by-side, and many packages select e.g. jpeg.  OpenGL will have this issue as well.  A relatively clean solution is to create virtual packages for these, where the user has a choice between the two.  The normal config option would be hidden for these packages.  This still adds complexity in some corner cases, e.g. some package that doesn't work in luajit, but that can probably be solved at the level of that package.&lt;br /&gt;
# Autobuild infrastructure. Thomas is working on scripts that parse the build result and put it in a database.  One important missing feature at the moment is visibility of evolution over time (i.e. distinguish regressions from recurring problems).  Even more important is just being able to see which packages are failing all the time, i.e. for each package how often it failed.  Ideally, we would also want to see how often a package has been built successfully, but when is it successful? Does the entire build have to succeed or that package?  Overall, however, the autobuild infrastructure is considered very useful - when something is wrong, it appears in the autobuild very quickly.&lt;br /&gt;
#* autobuild of the next branch: if only the master is autobuilt, we don't see a lot of problems until after the release. Delaying fixing bugs makes it more difficult to fix them. To support autobuild of the next branch, this should also be made visible in the database so we can distinguish master failures (more important) from next failures.&lt;br /&gt;
#* autobuild database is not suitable to track repeated builds of the same configuration.  It needs to keep track of different builds of the same configurations.  But the question is if this is really useful. We would like to check the existing defconfigs at every release, but it doesn't have to be tracked.  So it can be done manually.&lt;br /&gt;
# AVR32. It is end of life as far as Atmel is concerned, but of course there are still products out there using it.  It is not really blocking for buildroot.  For packages which fail to build, we can just add a ''depends on !BR2_avr32''.  But of course, until we have the AVAILABLE mechanism, carrying this kind of dependency can be painful.&lt;br /&gt;
# RPC support. Originally, the idea was to consider RPC support as a toolchain option, i.e. using ''depends''.  However, libtirpc is really a library, comparable to gettext, so it could be enabled automatically with ''select''.  Busybox is special, because we don't want to force RPC just because busybox is selected.  Therefore busybox has a user-selectable option to enable RPC-based applets (mount-nfs).  After discussion, this option was discarded - just remove mount-nfs from busybox (see below).  Other packages will use libtirpc if it was selected (manually or automatically). It's still a question what will happen when dynamically linking against libtirpc when libc also has rpc.&lt;br /&gt;
# A bit related: we'll disable mount-nfs in the default busybox config; if user disables RPC and enables mount-nfs in busybox, he'll get a compilation error.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed.  Arriving on Fri Nov 2 20:35 at BCN airport.  Leaving Wed Nov. 8 21:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on November, 3rd at BCN airport 9:25 AM. Leaving on November 8th from BCN airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# Maxime Ripard, confirmed. Arriving on November, 1st at BCN airport. Leaving on November 8th from BCP airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed, Arriving on Fri Nov 2 21:55 at BCN airport. Leaving Sun Nov 11 17:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# Luca Ceresoli, confirmed. Arriving on November 3rd at BCN airport 10:05 AM. Leaving on November 7th from BCN airport 19:15 PM. Staying at Hotel Fira Palace. Will arrive around 11:30 AM for the meeting.&lt;br /&gt;
# Samuel Martin, confirmed. Arriving on November, 3rd at Barcelona-Franca Train Station 8:05 AM. Leaving on November 10th from Barcelona-Franca Train Station at 8:43 PM.&lt;br /&gt;
# Simon Dawson, confirmed. Arriving on November 2nd in the evening. Leaving on November 8th early morning.&lt;br /&gt;
# Mischa Jonker, confirmed. From Synopsys.com. Not contributing yet to Buildroot, but interested in using Buildroot for a brand new CPU architecture. Arriving Friday Nov 2nd BCN 21:10 CET, staying at Catalonia Barcelona Plaza (Plaza Espanya), leaving Thursday Nov 8 at 18:40 CET.&lt;br /&gt;
# Maxime Hadjinlian.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
=== Program ===&lt;br /&gt;
&lt;br /&gt;
* Saturday, 10 AM: beginning of the meeting. The first person to arrive can go directly to the front desk and ask for MARIBEL SOCIAS or anyone in the Reservations Department, and then ask for the meeting room booked for Thomas Petazzoni. [[User:ThomasPetazzoni|Thomas Petazzoni]] will only arrive at 10:30-11 AM.&lt;br /&gt;
* Saturday, 7 PM: end of the meeting&lt;br /&gt;
* Saturday, 8:30 PM: dinner sponsored by Synopsys&lt;br /&gt;
* Sunday, 10 AM: beginning of the meeting&lt;br /&gt;
* Sunday, 7 PM: end of the meeting&lt;br /&gt;
&lt;br /&gt;
=== Location ===&lt;br /&gt;
&lt;br /&gt;
The event will take place at [http://www.hotelgrumsbarcelona.com/ Hotel Grumps], in downtown Barcelona. See [http://goo.gl/maps/htYi9 this map] for the location of the hotel, and [http://goo.gl/maps/GdiaM this map] for walking directions between the Fira Palace hotel (location of the ELCE conference) and Hotel Grums.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* Autobuilder tests: needed improvements, future work. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to use a git repository as source for toolchain. This doesn't work well today. Proposed by Mischa Jonker&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Does it make sense to port the toolchains to generic-package infrastructure? Asked by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Should we remove the ability to build a toolchain on the target? And also things like development files on target, documentation on target, etc. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
&lt;br /&gt;
=== List of topics to hack on ===&lt;br /&gt;
&lt;br /&gt;
* Reduce the back log of bugs. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Reduce the back log of patches. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Work on noMMU platform support (Blackfin, Coldfire). Getting Coldfire Qemu working, adding correct support for FLAT binaries. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Package upgrades: package python3, gtk3 and latest versions of glib and al. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Triage autobuilder failures and fix them. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Improve the documentation. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Work on relocatable toolchain. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for setup.py/qmake based packages. Proposed by Samuel Martin&lt;br /&gt;
* Add some infra for make based packages (mainly using the same pattern all over). Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for Kconfig based packages (linux, barebox, busybox, uclibc, ct-ng, at91bootstrap3).  Proposed by Arnout Vandecappelle&lt;br /&gt;
* Make top-level make -j possible.  Proposed by Arnout Vandecappelle&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysELCE2012</id>
		<title>Buildroot:DeveloperDaysELCE2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysELCE2012"/>
				<updated>2012-11-03T14:35:33Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 3-4 November 2012, Barcelona Spain ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Meeting in Barcelona ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Saturday November 3rd and Sunday November 4th, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right before the Embedded Linux Conference Europe, in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
=== Event sponsored by Fluendo and Synopsys ===&lt;br /&gt;
&lt;br /&gt;
The meeting room is sponsored  by [http://www.fluendo.com Fluendo]. Thanks!&lt;br /&gt;
&lt;br /&gt;
The Saturday dinner is sponsored by [http://www.synopsys.com Synopsys]. Thanks!&lt;br /&gt;
&lt;br /&gt;
=== Report of the meeting ===&lt;br /&gt;
&lt;br /&gt;
==== Action points ====&lt;br /&gt;
* Accept perl series.&lt;br /&gt;
* Accept qemu series (after further review).&lt;br /&gt;
* Remove compiler on target.&lt;br /&gt;
* Remove development files on target.&lt;br /&gt;
* Remove documentation on target.&lt;br /&gt;
* Explain in the documentation why the above was done.&lt;br /&gt;
* Put httpd daemons outside BUSYBOX_SHOW_OTHERS.&lt;br /&gt;
* Move BUSYBOX_SHOW_OTHERS conditions to ''depends on'' inside the package Config.in&lt;br /&gt;
&lt;br /&gt;
==== Details of the discussion ====&lt;br /&gt;
&lt;br /&gt;
# Perl.  The perl patch series (now at v11) looks ready to be integrated, but we have our doubts about cpanminus. The problems are: it has separate download infrastructure, which blocks some buildroot features (e.g. make source); it doesn't integrate with the legal-info.  However, CPAN is pretty important if you really want to use perl.  The decision was to accept cpanminus as well, but add some warnings that some things don't work.&lt;br /&gt;
# Qemu.  Adding this opens the door for more people to do stuff that buildroot wasn't meant for in the first place (i.e. embedded).  However, even in embedded qemu could be relevant.  Things like the compiler on the target are much worse for doing crazy things.  Giving new packages a chance is OK; we have to be much more careful with things that have global impact (like including development files on target).  Conclusion: it's OK to accept qemu.&lt;br /&gt;
# Compiler on target.  It leads to newbies using buildroot in an inappropriate way (i.e. compile on the target).  Also it only works with the internal toolchain.  And if we remove it, we can also remove &amp;quot;Development files on target&amp;quot;, which simplifies some of the build infrastructure.  Also, if you have a compiler on the target, then you can just as well use a distro.  Conclusion: we remove it.  Also a bunch of other packages can be removed (autotools, vala, ...)&lt;br /&gt;
# Documentation on target: if you need this, use a distro.  So we remove it.&lt;br /&gt;
# We need to explain in the documentation why we removed this stuff.&lt;br /&gt;
# Available stuff: i.e. solve the problem of combination of ''select'' and ''depends''. Solving it in Kconfig itself seems to be difficult: there were some patches but the kconfig people didn't like it; Yann and Thomas looked at Kconfig and it looks difficult to modify.  The AVAILABLE solution has two problems: it adds verbosity, and the recursive dependencies still should be written in the comments (&amp;quot;libfoo requires WCHAR in the toolchain&amp;quot;).  The verbosity is not considered a big issue.  For the comments: they currently don't work perfectly either.  Removing the comments altogether is an option, but then it is difficult for users to find out why a certain package isn't available.  Another possibility is to list the available packages in the documentation (automatically), and mention which toolchain dependencies they have.  Wild idea: consider Config.in as a low-level language, and define our own higher-level language from which we generate Config.in.  Alternatively, have a developer tool that verifies if everything is consistent (i.e. are the comments correct).  One more option: add a big comment in the beginning of the packages list, which says that not all toolchain options are available so not all packages are visible.  Converting the toolchain options from ''depends'' to ''select'' is not really an option, because changing toolchain options requires a make clean.  We didn't reach a conclusion, we'll come back to it tomorrow.&lt;br /&gt;
# kconfig-frontend: Yann now has a repository for Kconfig, it would be nice to branch our Kconfig from that.  The idea is to still copy it to our repository.&lt;br /&gt;
# BUSYBOX_SHOW_OTHERS: the only reason to have this is to avoid newcomers enabling things like tar etc. which are anyway already in busybox.  But for the web servers, they are clearly different from the busybox web servers (and our default busybox config doesn't even enable a web server).  Also bash is a typical one, because people write bashisms in their scripts.  This discussion is somewhat related to the discussion how to handle packages that provide the same functionality.  But for many packages, it's not even the same (httpd, bash, vim).  But actually, we're trying to solve a non-existent problem here - except for the web servers.  If we generate a list of packages in the documentation, we can add a remark to that that it's also available in busybox.  Also move the condition inside the package Config.in instead of outside and make it a ''depends on'', so it is more visible.&lt;br /&gt;
# packages with multiple variants: python2/3, Qt4/5, gtk2/3, ...  This is again similar to the expat/libxml2 issue.  Do we support both python2 and python3? We need to support both versions in most cases. Question is if we want to force that only one of the two is selected, or do we support side-by-side installation.  Conclusion: has to be looked at on a case-by-case basis.  General philosophy: don't try to be too smart, so don't try to force selecting only one of the two if it doesn't make sense to have both.  In cases where a package wants to ''select'' one of these things, convert the ''select'' into a ''depends'' with a comment.&lt;br /&gt;
# multiple packages providing the same functionality: lua/luajit, jpeg/jpegturbo, expat/libxml2.  These cannot be installed side-by-side, and many packages select e.g. jpeg.  OpenGL will have this issue as well.  A relatively clean solution is to create virtual packages for these, where the user has a choice between the two.  The normal config option would be hidden for these packages.  This still adds complexity in some corner cases, e.g. some package that doesn't work in luajit, but that can probably be solved at the level of that package.&lt;br /&gt;
# Autobuild infrastructure. Thomas is working on scripts that parse the build result and put it in a database.  One important missing feature at the moment is visibility of evolution over time (i.e. distinguish regressions from recurring problems).  Even more important is just being able to see which packages are failing all the time, i.e. for each package how often it failed.  Ideally, we would also want to see how often a package has been built successfully, but when is it successful? Does the entire build have to succeed or that package?  Overall, however, the autobuild infrastructure is considered very useful - when something is wrong, it appears in the autobuild very quickly.&lt;br /&gt;
#* autobuild of the next branch: if only the master is autobuilt, we don't see a lot of problems until after the release. Delaying fixing bugs makes it more difficult to fix them. To support autobuild of the next branch, this should also be made visible in the database so we can distinguish master failures (more important) from next failures.&lt;br /&gt;
#* autobuild database is not suitable to track repeated builds of the same configuration.  It needs to keep track of different builds of the same configurations.  But the question is if this is really useful. We would like to check the existing defconfigs at every release, but it doesn't have to be tracked.  So it can be done manually.&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed.  Arriving on Fri Nov 2 20:35 at BCN airport.  Leaving Wed Nov. 8 21:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on November, 3rd at BCN airport 9:25 AM. Leaving on November 8th from BCN airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# Maxime Ripard, confirmed. Arriving on November, 1st at BCN airport. Leaving on November 8th from BCP airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed, Arriving on Fri Nov 2 21:55 at BCN airport. Leaving Sun Nov 11 17:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# Luca Ceresoli, confirmed. Arriving on November 3rd at BCN airport 10:05 AM. Leaving on November 7th from BCN airport 19:15 PM. Staying at Hotel Fira Palace. Will arrive around 11:30 AM for the meeting.&lt;br /&gt;
# Samuel Martin, confirmed. Arriving on November, 3rd at Barcelona-Franca Train Station 8:05 AM. Leaving on November 10th from Barcelona-Franca Train Station at 8:43 PM.&lt;br /&gt;
# Simon Dawson, confirmed. Arriving on November 2nd in the evening. Leaving on November 8th early morning.&lt;br /&gt;
# Mischa Jonker, confirmed. From Synopsys.com. Not contributing yet to Buildroot, but interested in using Buildroot for a brand new CPU architecture. Arriving Friday Nov 2nd BCN 21:10 CET, staying at Catalonia Barcelona Plaza (Plaza Espanya), leaving Thursday Nov 8 at 18:40 CET.&lt;br /&gt;
# Maxime Hadjinlian.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
=== Program ===&lt;br /&gt;
&lt;br /&gt;
* Saturday, 10 AM: beginning of the meeting. The first person to arrive can go directly to the front desk and ask for MARIBEL SOCIAS or anyone in the Reservations Department, and then ask for the meeting room booked for Thomas Petazzoni. [[User:ThomasPetazzoni|Thomas Petazzoni]] will only arrive at 10:30-11 AM.&lt;br /&gt;
* Saturday, 7 PM: end of the meeting&lt;br /&gt;
* Saturday, 8:30 PM: dinner sponsored by Synopsys&lt;br /&gt;
* Sunday, 10 AM: beginning of the meeting&lt;br /&gt;
* Sunday, 7 PM: end of the meeting&lt;br /&gt;
&lt;br /&gt;
=== Location ===&lt;br /&gt;
&lt;br /&gt;
The event will take place at [http://www.hotelgrumsbarcelona.com/ Hotel Grumps], in downtown Barcelona. See [http://goo.gl/maps/htYi9 this map] for the location of the hotel, and [http://goo.gl/maps/GdiaM this map] for walking directions between the Fira Palace hotel (location of the ELCE conference) and Hotel Grums.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* Autobuilder tests: needed improvements, future work. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to use a git repository as source for toolchain. This doesn't work well today. Proposed by Mischa Jonker&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Does it make sense to port the toolchains to generic-package infrastructure? Asked by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Should we remove the ability to build a toolchain on the target? And also things like development files on target, documentation on target, etc. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
&lt;br /&gt;
=== List of topics to hack on ===&lt;br /&gt;
&lt;br /&gt;
* Reduce the back log of bugs. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Reduce the back log of patches. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Work on noMMU platform support (Blackfin, Coldfire). Getting Coldfire Qemu working, adding correct support for FLAT binaries. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Package upgrades: package python3, gtk3 and latest versions of glib and al. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Triage autobuilder failures and fix them. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Improve the documentation. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Work on relocatable toolchain. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for setup.py/qmake based packages. Proposed by Samuel Martin&lt;br /&gt;
* Add some infra for make based packages (mainly using the same pattern all over). Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for Kconfig based packages (linux, barebox, busybox, uclibc, ct-ng, at91bootstrap3).  Proposed by Arnout Vandecappelle&lt;br /&gt;
* Make top-level make -j possible.  Proposed by Arnout Vandecappelle&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysELCE2012</id>
		<title>Buildroot:DeveloperDaysELCE2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysELCE2012"/>
				<updated>2012-11-03T14:27:44Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 3-4 November 2012, Barcelona Spain ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Meeting in Barcelona ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Saturday November 3rd and Sunday November 4th, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right before the Embedded Linux Conference Europe, in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
=== Event sponsored by Fluendo and Synopsys ===&lt;br /&gt;
&lt;br /&gt;
The meeting room is sponsored  by [http://www.fluendo.com Fluendo]. Thanks!&lt;br /&gt;
&lt;br /&gt;
The Saturday dinner is sponsored by [http://www.synopsys.com Synopsys]. Thanks!&lt;br /&gt;
&lt;br /&gt;
=== Report of the meeting ===&lt;br /&gt;
&lt;br /&gt;
==== Action points ====&lt;br /&gt;
* Accept perl series.&lt;br /&gt;
* Accept qemu series (after further review).&lt;br /&gt;
* Remove compiler on target.&lt;br /&gt;
* Remove development files on target.&lt;br /&gt;
* Remove documentation on target.&lt;br /&gt;
* Explain in the documentation why the above was done.&lt;br /&gt;
* Put httpd daemons outside BUSYBOX_SHOW_OTHERS.&lt;br /&gt;
* Move BUSYBOX_SHOW_OTHERS conditions to ''depends on'' inside the package Config.in&lt;br /&gt;
&lt;br /&gt;
==== Details of the discussion ====&lt;br /&gt;
&lt;br /&gt;
# Perl.  The perl patch series (now at v11) looks ready to be integrated, but we have our doubts about cpanminus. The problems are: it has separate download infrastructure, which blocks some buildroot features (e.g. make source); it doesn't integrate with the legal-info.  However, CPAN is pretty important if you really want to use perl.  The decision was to accept cpanminus as well, but add some warnings that some things don't work.&lt;br /&gt;
# Qemu.  Adding this opens the door for more people to do stuff that buildroot wasn't meant for in the first place (i.e. embedded).  However, even in embedded qemu could be relevant.  Things like the compiler on the target are much worse for doing crazy things.  Giving new packages a chance is OK; we have to be much more careful with things that have global impact (like including development files on target).  Conclusion: it's OK to accept qemu.&lt;br /&gt;
# Compiler on target.  It leads to newbies using buildroot in an inappropriate way (i.e. compile on the target).  Also it only works with the internal toolchain.  And if we remove it, we can also remove &amp;quot;Development files on target&amp;quot;, which simplifies some of the build infrastructure.  Also, if you have a compiler on the target, then you can just as well use a distro.  Conclusion: we remove it.  Also a bunch of other packages can be removed (autotools, vala, ...)&lt;br /&gt;
# Documentation on target: if you need this, use a distro.  So we remove it.&lt;br /&gt;
# We need to explain in the documentation why we removed this stuff.&lt;br /&gt;
# Available stuff: i.e. solve the problem of combination of ''select'' and ''depends''. Solving it in Kconfig itself seems to be difficult: there were some patches but the kconfig people didn't like it; Yann and Thomas looked at Kconfig and it looks difficult to modify.  The AVAILABLE solution has two problems: it adds verbosity, and the recursive dependencies still should be written in the comments (&amp;quot;libfoo requires WCHAR in the toolchain&amp;quot;).  The verbosity is not considered a big issue.  For the comments: they currently don't work perfectly either.  Removing the comments altogether is an option, but then it is difficult for users to find out why a certain package isn't available.  Another possibility is to list the available packages in the documentation (automatically), and mention which toolchain dependencies they have.  Wild idea: consider Config.in as a low-level language, and define our own higher-level language from which we generate Config.in.  Alternatively, have a developer tool that verifies if everything is consistent (i.e. are the comments correct).  One more option: add a big comment in the beginning of the packages list, which says that not all toolchain options are available so not all packages are visible.  Converting the toolchain options from ''depends'' to ''select'' is not really an option, because changing toolchain options requires a make clean.  We didn't reach a conclusion, we'll come back to it tomorrow.&lt;br /&gt;
# kconfig-frontend: Yann now has a repository for Kconfig, it would be nice to branch our Kconfig from that.  The idea is to still copy it to our repository.&lt;br /&gt;
# BUSYBOX_SHOW_OTHERS: the only reason to have this is to avoid newcomers enabling things like tar etc. which are anyway already in busybox.  But for the web servers, they are clearly different from the busybox web servers (and our default busybox config doesn't even enable a web server).  Also bash is a typical one, because people write bashisms in their scripts.  This discussion is somewhat related to the discussion how to handle packages that provide the same functionality.  But for many packages, it's not even the same (httpd, bash, vim).  But actually, we're trying to solve a non-existent problem here - except for the web servers.  If we generate a list of packages in the documentation, we can add a remark to that that it's also available in busybox.  Also move the condition inside the package Config.in instead of outside and make it a ''depends on'', so it is more visible.&lt;br /&gt;
# packages with multiple variants: python2/3, Qt4/5, gtk2/3, ...  This is again similar to the expat/libxml2 issue.  Do we support both python2 and python3? We need to support both versions in most cases. Question is if we want to force that only one of the two is selected, or do we support side-by-side installation.  Conclusion: has to be looked at on a case-by-case basis.  General philosophy: don't try to be too smart, so don't try to force selecting only one of the two if it doesn't make sense to have both.  In cases where a package wants to ''select'' one of these things, convert the ''select'' into a ''depends'' with a comment.&lt;br /&gt;
# multiple packages providing the same functionality: lua/luajit, jpeg/jpegturbo, expat/libxml2.  These cannot be installed side-by-side, and many packages select e.g. jpeg.  OpenGL will have this issue as well.  A relatively clean solution is to create virtual packages for these, where the user has a choice between the two.  The normal config option would be hidden for these packages.  This still adds complexity in some corner cases, e.g. some package that doesn't work in luajit, but that can probably be solved at the level of that package.&lt;br /&gt;
# Autobuild infrastructure. Thomas is working on scripts that parse the build result and put it in a database.  One important missing feature at the moment is visibility of evolution over time (i.e. distinguish regressions from recurring problems).  Even more important is just being able to see which packages are failing all the time, i.e. for each package how often it failed.  Ideally, we would also want to see how often a package has been built successfully, but when is it successful? Does the entire build have to succeed or that package?  Overall, however, the autobuild infrastructure is considered very useful - when something is wrong, it appears in the autobuild very quickly.&lt;br /&gt;
#* autobuild of the next branch: if only the master is autobuilt, we don't see a lot of problems until after the release. Delaying fixing bugs makes it more difficult to fix them. To support autobuild of the next branch, this should also be made visible in the database so we can distinguish master failures (more important) from next failures.&lt;br /&gt;
#* autobuild database is not suitable to track repeated builds of the same configuration.&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed.  Arriving on Fri Nov 2 20:35 at BCN airport.  Leaving Wed Nov. 8 21:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on November, 3rd at BCN airport 9:25 AM. Leaving on November 8th from BCN airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# Maxime Ripard, confirmed. Arriving on November, 1st at BCN airport. Leaving on November 8th from BCP airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed, Arriving on Fri Nov 2 21:55 at BCN airport. Leaving Sun Nov 11 17:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# Luca Ceresoli, confirmed. Arriving on November 3rd at BCN airport 10:05 AM. Leaving on November 7th from BCN airport 19:15 PM. Staying at Hotel Fira Palace. Will arrive around 11:30 AM for the meeting.&lt;br /&gt;
# Samuel Martin, confirmed. Arriving on November, 3rd at Barcelona-Franca Train Station 8:05 AM. Leaving on November 10th from Barcelona-Franca Train Station at 8:43 PM.&lt;br /&gt;
# Simon Dawson, confirmed. Arriving on November 2nd in the evening. Leaving on November 8th early morning.&lt;br /&gt;
# Mischa Jonker, confirmed. From Synopsys.com. Not contributing yet to Buildroot, but interested in using Buildroot for a brand new CPU architecture. Arriving Friday Nov 2nd BCN 21:10 CET, staying at Catalonia Barcelona Plaza (Plaza Espanya), leaving Thursday Nov 8 at 18:40 CET.&lt;br /&gt;
# Maxime Hadjinlian.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
=== Program ===&lt;br /&gt;
&lt;br /&gt;
* Saturday, 10 AM: beginning of the meeting. The first person to arrive can go directly to the front desk and ask for MARIBEL SOCIAS or anyone in the Reservations Department, and then ask for the meeting room booked for Thomas Petazzoni. [[User:ThomasPetazzoni|Thomas Petazzoni]] will only arrive at 10:30-11 AM.&lt;br /&gt;
* Saturday, 7 PM: end of the meeting&lt;br /&gt;
* Saturday, 8:30 PM: dinner sponsored by Synopsys&lt;br /&gt;
* Sunday, 10 AM: beginning of the meeting&lt;br /&gt;
* Sunday, 7 PM: end of the meeting&lt;br /&gt;
&lt;br /&gt;
=== Location ===&lt;br /&gt;
&lt;br /&gt;
The event will take place at [http://www.hotelgrumsbarcelona.com/ Hotel Grumps], in downtown Barcelona. See [http://goo.gl/maps/htYi9 this map] for the location of the hotel, and [http://goo.gl/maps/GdiaM this map] for walking directions between the Fira Palace hotel (location of the ELCE conference) and Hotel Grums.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* Autobuilder tests: needed improvements, future work. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to use a git repository as source for toolchain. This doesn't work well today. Proposed by Mischa Jonker&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Does it make sense to port the toolchains to generic-package infrastructure? Asked by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Should we remove the ability to build a toolchain on the target? And also things like development files on target, documentation on target, etc. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
&lt;br /&gt;
=== List of topics to hack on ===&lt;br /&gt;
&lt;br /&gt;
* Reduce the back log of bugs. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Reduce the back log of patches. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Work on noMMU platform support (Blackfin, Coldfire). Getting Coldfire Qemu working, adding correct support for FLAT binaries. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Package upgrades: package python3, gtk3 and latest versions of glib and al. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Triage autobuilder failures and fix them. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Improve the documentation. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Work on relocatable toolchain. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for setup.py/qmake based packages. Proposed by Samuel Martin&lt;br /&gt;
* Add some infra for make based packages (mainly using the same pattern all over). Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for Kconfig based packages (linux, barebox, busybox, uclibc, ct-ng, at91bootstrap3).  Proposed by Arnout Vandecappelle&lt;br /&gt;
* Make top-level make -j possible.  Proposed by Arnout Vandecappelle&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysELCE2012</id>
		<title>Buildroot:DeveloperDaysELCE2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysELCE2012"/>
				<updated>2012-11-03T12:39:13Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 3-4 November 2012, Barcelona Spain ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Meeting in Barcelona ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Saturday November 3rd and Sunday November 4th, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right before the Embedded Linux Conference Europe, in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
=== Event sponsored by Fluendo and Synopsys ===&lt;br /&gt;
&lt;br /&gt;
The meeting room is sponsored  by [http://www.fluendo.com Fluendo]. Thanks!&lt;br /&gt;
&lt;br /&gt;
The Saturday dinner is sponsored by [http://www.synopsys.com Synopsys]. Thanks!&lt;br /&gt;
&lt;br /&gt;
=== Report of the meeting ===&lt;br /&gt;
&lt;br /&gt;
==== Action points ====&lt;br /&gt;
* Accept perl series.&lt;br /&gt;
* Accept qemu series (after further review).&lt;br /&gt;
* Remove compiler on target.&lt;br /&gt;
* Remove development files on target.&lt;br /&gt;
* Remove documentation on target.&lt;br /&gt;
* Explain in the documentation why the above was done.&lt;br /&gt;
* Put httpd daemons outside BUSYBOX_SHOW_OTHERS.&lt;br /&gt;
* Move BUSYBOX_SHOW_OTHERS conditions to ''depends on'' inside the package Config.in&lt;br /&gt;
&lt;br /&gt;
==== Details of the discussion ====&lt;br /&gt;
&lt;br /&gt;
# Perl.  The perl patch series (now at v11) looks ready to be integrated, but we have our doubts about cpanminus. The problems are: it has separate download infrastructure, which blocks some buildroot features (e.g. make source); it doesn't integrate with the legal-info.  However, CPAN is pretty important if you really want to use perl.  The decision was to accept cpanminus as well, but add some warnings that some things don't work.&lt;br /&gt;
# Qemu.  Adding this opens the door for more people to do stuff that buildroot wasn't meant for in the first place (i.e. embedded).  However, even in embedded qemu could be relevant.  Things like the compiler on the target are much worse for doing crazy things.  Giving new packages a chance is OK; we have to be much more careful with things that have global impact (like including development files on target).  Conclusion: it's OK to accept qemu.&lt;br /&gt;
# Compiler on target.  It leads to newbies using buildroot in an inappropriate way (i.e. compile on the target).  Also it only works with the internal toolchain.  And if we remove it, we can also remove &amp;quot;Development files on target&amp;quot;, which simplifies some of the build infrastructure.  Also, if you have a compiler on the target, then you can just as well use a distro.  Conclusion: we remove it.  Also a bunch of other packages can be removed (autotools, vala, ...)&lt;br /&gt;
# Documentation on target: if you need this, use a distro.  So we remove it.&lt;br /&gt;
# We need to explain in the documentation why we removed this stuff.&lt;br /&gt;
# Available stuff: i.e. solve the problem of combination of ''select'' and ''depends''. Solving it in Kconfig itself seems to be difficult: there were some patches but the kconfig people didn't like it; Yann and Thomas looked at Kconfig and it looks difficult to modify.  The AVAILABLE solution has two problems: it adds verbosity, and the recursive dependencies still should be written in the comments (&amp;quot;libfoo requires WCHAR in the toolchain&amp;quot;).  The verbosity is not considered a big issue.  For the comments: they currently don't work perfectly either.  Removing the comments altogether is an option, but then it is difficult for users to find out why a certain package isn't available.  Another possibility is to list the available packages in the documentation (automatically), and mention which toolchain dependencies they have.  Wild idea: consider Config.in as a low-level language, and define our own higher-level language from which we generate Config.in.  Alternatively, have a developer tool that verifies if everything is consistent (i.e. are the comments correct).  One more option: add a big comment in the beginning of the packages list, which says that not all toolchain options are available so not all packages are visible.  Converting the toolchain options from ''depends'' to ''select'' is not really an option, because changing toolchain options requires a make clean.  We didn't reach a conclusion, we'll come back to it tomorrow.&lt;br /&gt;
# kconfig-frontend: Yann now has a repository for Kconfig, it would be nice to branch our Kconfig from that.  The idea is to still copy it to our repository.&lt;br /&gt;
# BUSYBOX_SHOW_OTHERS: the only reason to have this is to avoid newcomers enabling things like tar etc. which are anyway already in busybox.  But for the web servers, they are clearly different from the busybox web servers (and our default busybox config doesn't even enable a web server).  Also bash is a typical one, because people write bashisms in their scripts.  This discussion is somewhat related to the discussion how to handle packages that provide the same functionality.  But for many packages, it's not even the same (httpd, bash, vim).  But actually, we're trying to solve a non-existent problem here - except for the web servers.  If we generate a list of packages in the documentation, we can add a remark to that that it's also available in busybox.  Also move the condition inside the package Config.in instead of outside and make it a ''depends on'', so it is more visible.&lt;br /&gt;
# packages with multiple variants: python2/3, Qt4/5, gtk2/3, ...  This is again similar to the expat/libxml2 issue.  Do we support both python2 and python3? We need to support both versions in most cases. Question is if we want to force that only one of the two is selected, or do we support side-by-side installation.  Conclusion: has to be looked at on a case-by-case basis.  General philosophy: don't try to be too smart, so don't try to force selecting only one of the two if it doesn't make sense to have both.  In cases where a package wants to ''select'' one of these things, convert the ''select'' into a ''depends'' with a comment.&lt;br /&gt;
# multiple packages providing the same functionality: lua/luajit, jpeg/jpegturbo, expat/libxml2.  These cannot be installed side-by-side, and many packages select e.g. jpeg.  OpenGL will have this issue as well.  A relatively clean solution is to create virtual packages for these, where the user has a choice between the two.  The normal config option would be hidden for these packages.  This still adds complexity in some corner cases, e.g. some package that doesn't work in luajit, but that can probably be solved at the level of that package.&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed.  Arriving on Fri Nov 2 20:35 at BCN airport.  Leaving Wed Nov. 8 21:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on November, 3rd at BCN airport 9:25 AM. Leaving on November 8th from BCN airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# Maxime Ripard, confirmed. Arriving on November, 1st at BCN airport. Leaving on November 8th from BCP airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed, Arriving on Fri Nov 2 21:55 at BCN airport. Leaving Sun Nov 11 17:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# Luca Ceresoli, confirmed. Arriving on November 3rd at BCN airport 10:05 AM. Leaving on November 7th from BCN airport 19:15 PM. Staying at Hotel Fira Palace. Will arrive around 11:30 AM for the meeting.&lt;br /&gt;
# Samuel Martin, confirmed. Arriving on November, 3rd at Barcelona-Franca Train Station 8:05 AM. Leaving on November 10th from Barcelona-Franca Train Station at 8:43 PM.&lt;br /&gt;
# Simon Dawson, confirmed. Arriving on November 2nd in the evening. Leaving on November 8th early morning.&lt;br /&gt;
# Mischa Jonker, confirmed. From Synopsys.com. Not contributing yet to Buildroot, but interested in using Buildroot for a brand new CPU architecture. Arriving Friday Nov 2nd BCN 21:10 CET, staying at Catalonia Barcelona Plaza (Plaza Espanya), leaving Thursday Nov 8 at 18:40 CET.&lt;br /&gt;
# Maxime Hadjinlian.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
=== Program ===&lt;br /&gt;
&lt;br /&gt;
* Saturday, 10 AM: beginning of the meeting. The first person to arrive can go directly to the front desk and ask for MARIBEL SOCIAS or anyone in the Reservations Department, and then ask for the meeting room booked for Thomas Petazzoni. [[User:ThomasPetazzoni|Thomas Petazzoni]] will only arrive at 10:30-11 AM.&lt;br /&gt;
* Saturday, 7 PM: end of the meeting&lt;br /&gt;
* Saturday, 8:30 PM: dinner sponsored by Synopsys&lt;br /&gt;
* Sunday, 10 AM: beginning of the meeting&lt;br /&gt;
* Sunday, 7 PM: end of the meeting&lt;br /&gt;
&lt;br /&gt;
=== Location ===&lt;br /&gt;
&lt;br /&gt;
The event will take place at [http://www.hotelgrumsbarcelona.com/ Hotel Grumps], in downtown Barcelona. See [http://goo.gl/maps/htYi9 this map] for the location of the hotel, and [http://goo.gl/maps/GdiaM this map] for walking directions between the Fira Palace hotel (location of the ELCE conference) and Hotel Grums.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* Autobuilder tests: needed improvements, future work. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to use a git repository as source for toolchain. This doesn't work well today. Proposed by Mischa Jonker&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Does it make sense to port the toolchains to generic-package infrastructure? Asked by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Should we remove the ability to build a toolchain on the target? And also things like development files on target, documentation on target, etc. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
&lt;br /&gt;
=== List of topics to hack on ===&lt;br /&gt;
&lt;br /&gt;
* Reduce the back log of bugs. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Reduce the back log of patches. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Work on noMMU platform support (Blackfin, Coldfire). Getting Coldfire Qemu working, adding correct support for FLAT binaries. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Package upgrades: package python3, gtk3 and latest versions of glib and al. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Triage autobuilder failures and fix them. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Improve the documentation. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Work on relocatable toolchain. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for setup.py/qmake based packages. Proposed by Samuel Martin&lt;br /&gt;
* Add some infra for make based packages (mainly using the same pattern all over). Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for Kconfig based packages (linux, barebox, busybox, uclibc, ct-ng, at91bootstrap3).  Proposed by Arnout Vandecappelle&lt;br /&gt;
* Make top-level make -j possible.  Proposed by Arnout Vandecappelle&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysELCE2012</id>
		<title>Buildroot:DeveloperDaysELCE2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysELCE2012"/>
				<updated>2012-11-03T11:56:58Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: /* Report of the meeting */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 3-4 November 2012, Barcelona Spain ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Meeting in Barcelona ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Saturday November 3rd and Sunday November 4th, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right before the Embedded Linux Conference Europe, in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
=== Event sponsored by Fluendo and Synopsys ===&lt;br /&gt;
&lt;br /&gt;
The meeting room is sponsored  by [http://www.fluendo.com Fluendo]. Thanks!&lt;br /&gt;
&lt;br /&gt;
The Saturday dinner is sponsored by [http://www.synopsys.com Synopsys]. Thanks!&lt;br /&gt;
&lt;br /&gt;
=== Report of the meeting ===&lt;br /&gt;
&lt;br /&gt;
==== Action points ====&lt;br /&gt;
* Accept perl series.&lt;br /&gt;
* Accept qemu series (after further review).&lt;br /&gt;
* Remove compiler on target.&lt;br /&gt;
* Remove development files on target.&lt;br /&gt;
* Remove documentation on target.&lt;br /&gt;
* Explain in the documentation why the above was done.&lt;br /&gt;
* Put httpd daemons outside BUSYBOX_SHOW_OTHERS.&lt;br /&gt;
* Move BUSYBOX_SHOW_OTHERS conditions to ''depends on'' inside the package Config.in&lt;br /&gt;
&lt;br /&gt;
==== Details of the discussion ====&lt;br /&gt;
&lt;br /&gt;
# Perl.  The perl patch series (now at v11) looks ready to be integrated, but we have our doubts about cpanminus. The problems are: it has separate download infrastructure, which blocks some buildroot features (e.g. make source); it doesn't integrate with the legal-info.  However, CPAN is pretty important if you really want to use perl.  The decision was to accept cpanminus as well, but add some warnings that some things don't work.&lt;br /&gt;
# Qemu.  Adding this opens the door for more people to do stuff that buildroot wasn't meant for in the first place (i.e. embedded).  However, even in embedded qemu could be relevant.  Things like the compiler on the target are much worse for doing crazy things.  Giving new packages a chance is OK; we have to be much more careful with things that have global impact (like including development files on target).  Conclusion: it's OK to accept qemu.&lt;br /&gt;
# Compiler on target.  It leads to newbies using buildroot in an inappropriate way (i.e. compile on the target).  Also it only works with the internal toolchain.  And if we remove it, we can also remove &amp;quot;Development files on target&amp;quot;, which simplifies some of the build infrastructure.  Also, if you have a compiler on the target, then you can just as well use a distro.  Conclusion: we remove it.  Also a bunch of other packages can be removed (autotools, vala, ...)&lt;br /&gt;
# Documentation on target: if you need this, use a distro.  So we remove it.&lt;br /&gt;
# We need to explain in the documentation why we removed this stuff.&lt;br /&gt;
# Available stuff: i.e. solve the problem of combination of ''select'' and ''depends''. Solving it in Kconfig itself seems to be difficult: there were some patches but the kconfig people didn't like it; Yann and Thomas looked at Kconfig and it looks difficult to modify.  The AVAILABLE solution has two problems: it adds verbosity, and the recursive dependencies still should be written in the comments (&amp;quot;libfoo requires WCHAR in the toolchain&amp;quot;).  The verbosity is not considered a big issue.  For the comments: they currently don't work perfectly either.  Removing the comments altogether is an option, but then it is difficult for users to find out why a certain package isn't available.  Another possibility is to list the available packages in the documentation (automatically), and mention which toolchain dependencies they have.  Wild idea: consider Config.in as a low-level language, and define our own higher-level language from which we generate Config.in.  Alternatively, have a developer tool that verifies if everything is consistent (i.e. are the comments correct).  One more option: add a big comment in the beginning of the packages list, which says that not all toolchain options are available so not all packages are visible.  Converting the toolchain options from ''depends'' to ''select'' is not really an option, because changing toolchain options requires a make clean.  We didn't reach a conclusion, we'll come back to it tomorrow.&lt;br /&gt;
# kconfig-frontend: Yann now has a repository for Kconfig, it would be nice to branch our Kconfig from that.  The idea is to still copy it to our repository.&lt;br /&gt;
# BUSYBOX_SHOW_OTHERS: the only reason to have this is to avoid newcomers enabling things like tar etc. which are anyway already in busybox.  But for the web servers, they are clearly different from the busybox web servers (and our default busybox config doesn't even enable a web server).  Also bash is a typical one, because people write bashisms in their scripts.  This discussion is somewhat related to the discussion how to handle packages that provide the same functionality.  But for many packages, it's not even the same (httpd, bash, vim).  But actually, we're trying to solve a non-existent problem here - except for the web servers.  If we generate a list of packages in the documentation, we can add a remark to that that it's also available in busybox.  Also move the condition inside the package Config.in instead of outside and make it a ''depends on'', so it is more visible.&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed.  Arriving on Fri Nov 2 20:35 at BCN airport.  Leaving Wed Nov. 8 21:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on November, 3rd at BCN airport 9:25 AM. Leaving on November 8th from BCN airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# Maxime Ripard, confirmed. Arriving on November, 1st at BCN airport. Leaving on November 8th from BCP airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed, Arriving on Fri Nov 2 21:55 at BCN airport. Leaving Sun Nov 11 17:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# Luca Ceresoli, confirmed. Arriving on November 3rd at BCN airport 10:05 AM. Leaving on November 7th from BCN airport 19:15 PM. Staying at Hotel Fira Palace. Will arrive around 11:30 AM for the meeting.&lt;br /&gt;
# Samuel Martin, confirmed. Arriving on November, 3rd at Barcelona-Franca Train Station 8:05 AM. Leaving on November 10th from Barcelona-Franca Train Station at 8:43 PM.&lt;br /&gt;
# Simon Dawson, confirmed. Arriving on November 2nd in the evening. Leaving on November 8th early morning.&lt;br /&gt;
# Mischa Jonker, confirmed. From Synopsys.com. Not contributing yet to Buildroot, but interested in using Buildroot for a brand new CPU architecture. Arriving Friday Nov 2nd BCN 21:10 CET, staying at Catalonia Barcelona Plaza (Plaza Espanya), leaving Thursday Nov 8 at 18:40 CET.&lt;br /&gt;
# Maxime Hadjinlian.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
=== Program ===&lt;br /&gt;
&lt;br /&gt;
* Saturday, 10 AM: beginning of the meeting. The first person to arrive can go directly to the front desk and ask for MARIBEL SOCIAS or anyone in the Reservations Department, and then ask for the meeting room booked for Thomas Petazzoni. [[User:ThomasPetazzoni|Thomas Petazzoni]] will only arrive at 10:30-11 AM.&lt;br /&gt;
* Saturday, 7 PM: end of the meeting&lt;br /&gt;
* Saturday, 8:30 PM: dinner sponsored by Synopsys&lt;br /&gt;
* Sunday, 10 AM: beginning of the meeting&lt;br /&gt;
* Sunday, 7 PM: end of the meeting&lt;br /&gt;
&lt;br /&gt;
=== Location ===&lt;br /&gt;
&lt;br /&gt;
The event will take place at [http://www.hotelgrumsbarcelona.com/ Hotel Grumps], in downtown Barcelona. See [http://goo.gl/maps/htYi9 this map] for the location of the hotel, and [http://goo.gl/maps/GdiaM this map] for walking directions between the Fira Palace hotel (location of the ELCE conference) and Hotel Grums.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* Autobuilder tests: needed improvements, future work. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to use a git repository as source for toolchain. This doesn't work well today. Proposed by Mischa Jonker&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Does it make sense to port the toolchains to generic-package infrastructure? Asked by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Should we remove the ability to build a toolchain on the target? And also things like development files on target, documentation on target, etc. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
&lt;br /&gt;
=== List of topics to hack on ===&lt;br /&gt;
&lt;br /&gt;
* Reduce the back log of bugs. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Reduce the back log of patches. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Work on noMMU platform support (Blackfin, Coldfire). Getting Coldfire Qemu working, adding correct support for FLAT binaries. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Package upgrades: package python3, gtk3 and latest versions of glib and al. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Triage autobuilder failures and fix them. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Improve the documentation. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Work on relocatable toolchain. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for setup.py/qmake based packages. Proposed by Samuel Martin&lt;br /&gt;
* Add some infra for make based packages (mainly using the same pattern all over). Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for Kconfig based packages (linux, barebox, busybox, uclibc, ct-ng, at91bootstrap3).  Proposed by Arnout Vandecappelle&lt;br /&gt;
* Make top-level make -j possible.  Proposed by Arnout Vandecappelle&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysELCE2012</id>
		<title>Buildroot:DeveloperDaysELCE2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysELCE2012"/>
				<updated>2012-11-03T11:54:54Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: /* Report of the meeting */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 3-4 November 2012, Barcelona Spain ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Meeting in Barcelona ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Saturday November 3rd and Sunday November 4th, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right before the Embedded Linux Conference Europe, in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
=== Event sponsored by Fluendo and Synopsys ===&lt;br /&gt;
&lt;br /&gt;
The meeting room is sponsored  by [http://www.fluendo.com Fluendo]. Thanks!&lt;br /&gt;
&lt;br /&gt;
The Saturday dinner is sponsored by [http://www.synopsys.com Synopsys]. Thanks!&lt;br /&gt;
&lt;br /&gt;
=== Report of the meeting ===&lt;br /&gt;
&lt;br /&gt;
==== Action points ====&lt;br /&gt;
* Accept perl series.&lt;br /&gt;
* Accept qemu series (after further review).&lt;br /&gt;
* Remove compiler on target.&lt;br /&gt;
* Remove development files on target.&lt;br /&gt;
* Remove documentation on target.&lt;br /&gt;
* Explain in the documentation why the above was done.&lt;br /&gt;
* Put httpd daemons outside BUSYBOX_SHOW_OTHERS.&lt;br /&gt;
* Move BUSYBOX_SHOW_OTHERS conditions to depends on inside the package Config.in&lt;br /&gt;
&lt;br /&gt;
==== Details of the discussion ====&lt;br /&gt;
&lt;br /&gt;
# Perl.  The perl patch series (now at v11) looks ready to be integrated, but we have our doubts about cpanminus. The problems are: it has separate download infrastructure, which blocks some buildroot features (e.g. make source); it doesn't integrate with the legal-info.  However, CPAN is pretty important if you really want to use perl.  The decision was to accept cpanminus as well, but add some warnings that some things don't work.&lt;br /&gt;
# Qemu.  Adding this opens the door for more people to do stuff that buildroot wasn't meant for in the first place (i.e. embedded).  However, even in embedded qemu could be relevant.  Things like the compiler on the target are much worse for doing crazy things.  Giving new packages a chance is OK; we have to be much more careful with things that have global impact (like including development files on target).  Conclusion: it's OK to accept qemu.&lt;br /&gt;
# Compiler on target.  It leads to newbies using buildroot in an inappropriate way (i.e. compile on the target).  Also it only works with the internal toolchain.  And if we remove it, we can also remove &amp;quot;Development files on target&amp;quot;, which simplifies some of the build infrastructure.  Also, if you have a compiler on the target, then you can just as well use a distro.  Conclusion: we remove it.  Also a bunch of other packages can be removed (autotools, vala, ...)&lt;br /&gt;
# Documentation on target: if you need this, use a distro.  So we remove it.&lt;br /&gt;
# We need to explain in the documentation why we removed this stuff.&lt;br /&gt;
# Available stuff: i.e. solve the problem of combination of select and depends. Solving it in Kconfig itself seems to be difficult: there were some patches but the kconfig people didn't like it; Yann and Thomas looked at Kconfig and it looks difficult to modify.  The AVAILABLE solution has two problems: it adds verbosity, and the recursive dependencies still should be written in the comments (&amp;quot;libfoo requires WCHAR in the toolchain&amp;quot;).  The verbosity is not considered a big issue.  For the comments: they currently don't work perfectly either.  Removing the comments altogether is an option, but then it is difficult for users to find out why a certain package isn't available.  Another possibility is to list the available packages in the documentation (automatically), and mention which toolchain dependencies they have.  Wild idea: consider Config.in as a low-level language, and define our own higher-level language from which we generate Config.in.  Alternatively, have a developer tool that verifies if everything is consistent (i.e. are the comments correct).  One more option: add a big comment in the beginning of the packages list, which says that not all toolchain options are available so not all packages are visible.  Converting the toolchain options from depends to select is not really an option, because changing toolchain options requires a make clean.  We didn't reach a conclusion, we'll come back to it tomorrow.&lt;br /&gt;
# kconfig-frontend: Yann now has a repository for Kconfig, it would be nice to branch our Kconfig from that.  The idea is to still copy it to our repository.&lt;br /&gt;
# BUSYBOX_SHOW_OTHERS: the only reason to have this is to avoid newcomers enabling things like tar etc. which are anyway already in busybox.  But for the web servers, they are clearly different from the busybox web servers (and our default busybox config doesn't even enable a web server).  Also bash is a typical one, because people write bashisms in their scripts.  This discussion is somewhat related to the discussion how to handle packages that provide the same functionality.  But for many packages, it's not even the same (httpd, bash, vim).  But actually, we're trying to solve a non-existent problem here - except for the web servers.  If we generate a list of packages in the documentation, we can add a remark to that that it's also available in busybox.  Also move the condition inside the package Config.in instead of outside and make it a DEPENDS_ON, so it is more visible.&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed.  Arriving on Fri Nov 2 20:35 at BCN airport.  Leaving Wed Nov. 8 21:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on November, 3rd at BCN airport 9:25 AM. Leaving on November 8th from BCN airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# Maxime Ripard, confirmed. Arriving on November, 1st at BCN airport. Leaving on November 8th from BCP airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed, Arriving on Fri Nov 2 21:55 at BCN airport. Leaving Sun Nov 11 17:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# Luca Ceresoli, confirmed. Arriving on November 3rd at BCN airport 10:05 AM. Leaving on November 7th from BCN airport 19:15 PM. Staying at Hotel Fira Palace. Will arrive around 11:30 AM for the meeting.&lt;br /&gt;
# Samuel Martin, confirmed. Arriving on November, 3rd at Barcelona-Franca Train Station 8:05 AM. Leaving on November 10th from Barcelona-Franca Train Station at 8:43 PM.&lt;br /&gt;
# Simon Dawson, confirmed. Arriving on November 2nd in the evening. Leaving on November 8th early morning.&lt;br /&gt;
# Mischa Jonker, confirmed. From Synopsys.com. Not contributing yet to Buildroot, but interested in using Buildroot for a brand new CPU architecture. Arriving Friday Nov 2nd BCN 21:10 CET, staying at Catalonia Barcelona Plaza (Plaza Espanya), leaving Thursday Nov 8 at 18:40 CET.&lt;br /&gt;
# Maxime Hadjinlian.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
=== Program ===&lt;br /&gt;
&lt;br /&gt;
* Saturday, 10 AM: beginning of the meeting. The first person to arrive can go directly to the front desk and ask for MARIBEL SOCIAS or anyone in the Reservations Department, and then ask for the meeting room booked for Thomas Petazzoni. [[User:ThomasPetazzoni|Thomas Petazzoni]] will only arrive at 10:30-11 AM.&lt;br /&gt;
* Saturday, 7 PM: end of the meeting&lt;br /&gt;
* Saturday, 8:30 PM: dinner sponsored by Synopsys&lt;br /&gt;
* Sunday, 10 AM: beginning of the meeting&lt;br /&gt;
* Sunday, 7 PM: end of the meeting&lt;br /&gt;
&lt;br /&gt;
=== Location ===&lt;br /&gt;
&lt;br /&gt;
The event will take place at [http://www.hotelgrumsbarcelona.com/ Hotel Grumps], in downtown Barcelona. See [http://goo.gl/maps/htYi9 this map] for the location of the hotel, and [http://goo.gl/maps/GdiaM this map] for walking directions between the Fira Palace hotel (location of the ELCE conference) and Hotel Grums.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* Autobuilder tests: needed improvements, future work. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to use a git repository as source for toolchain. This doesn't work well today. Proposed by Mischa Jonker&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Does it make sense to port the toolchains to generic-package infrastructure? Asked by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Should we remove the ability to build a toolchain on the target? And also things like development files on target, documentation on target, etc. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
&lt;br /&gt;
=== List of topics to hack on ===&lt;br /&gt;
&lt;br /&gt;
* Reduce the back log of bugs. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Reduce the back log of patches. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Work on noMMU platform support (Blackfin, Coldfire). Getting Coldfire Qemu working, adding correct support for FLAT binaries. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Package upgrades: package python3, gtk3 and latest versions of glib and al. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Triage autobuilder failures and fix them. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Improve the documentation. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Work on relocatable toolchain. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for setup.py/qmake based packages. Proposed by Samuel Martin&lt;br /&gt;
* Add some infra for make based packages (mainly using the same pattern all over). Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for Kconfig based packages (linux, barebox, busybox, uclibc, ct-ng, at91bootstrap3).  Proposed by Arnout Vandecappelle&lt;br /&gt;
* Make top-level make -j possible.  Proposed by Arnout Vandecappelle&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysELCE2012</id>
		<title>Buildroot:DeveloperDaysELCE2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysELCE2012"/>
				<updated>2012-11-03T11:52:22Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: /* Report of the meeting */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 3-4 November 2012, Barcelona Spain ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Meeting in Barcelona ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Saturday November 3rd and Sunday November 4th, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right before the Embedded Linux Conference Europe, in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
=== Event sponsored by Fluendo and Synopsys ===&lt;br /&gt;
&lt;br /&gt;
The meeting room is sponsored  by [http://www.fluendo.com Fluendo]. Thanks!&lt;br /&gt;
&lt;br /&gt;
The Saturday dinner is sponsored by [http://www.synopsys.com Synopsys]. Thanks!&lt;br /&gt;
&lt;br /&gt;
=== Report of the meeting ===&lt;br /&gt;
&lt;br /&gt;
==== Action points ====&lt;br /&gt;
* Accept perl series.&lt;br /&gt;
* Accept qemu series (after further review).&lt;br /&gt;
* Remove compiler on target.&lt;br /&gt;
* Remove development files on target.&lt;br /&gt;
* Remove documentation on target.&lt;br /&gt;
* Explain in the documentation why the above was done.&lt;br /&gt;
* Put httpd daemons outside BUSYBOX_SHOW_OTHERS&lt;br /&gt;
&lt;br /&gt;
==== Details of the discussion ====&lt;br /&gt;
&lt;br /&gt;
1. Perl.  The perl patch series (now at v11) looks ready to be integrated, but we have our doubts about cpanminus. The problems are: it has separate download infrastructure, which blocks some buildroot features (e.g. make source); it doesn't integrate with the legal-info.  However, CPAN is pretty important if you really want to use perl.  The decision was to accept cpanminus as well, but add some warnings that some things don't work.&lt;br /&gt;
1. Qemu.  Adding this opens the door for more people to do stuff that buildroot wasn't meant for in the first place (i.e. embedded).  However, even in embedded qemu could be relevant.  Things like the compiler on the target are much worse for doing crazy things.  Giving new packages a chance is OK; we have to be much more careful with things that have global impact (like including development files on target).  Conclusion: it's OK to accept qemu.&lt;br /&gt;
1. Compiler on target.  It leads to newbies using buildroot in an inappropriate way (i.e. compile on the target).  Also it only works with the internal toolchain.  And if we remove it, we can also remove &amp;quot;Development files on target&amp;quot;, which simplifies some of the build infrastructure.  Also, if you have a compiler on the target, then you can just as well use a distro.  Conclusion: we remove it.  Also a bunch of other packages can be removed (autotools, vala, ...)&lt;br /&gt;
1. Documentation on target: if you need this, use a distro.  So we remove it.&lt;br /&gt;
1. We need to explain in the documentation why we removed this stuff.&lt;br /&gt;
1. Available stuff: i.e. solve the problem of combination of select and depends. Solving it in Kconfig itself seems to be difficult: there were some patches but the kconfig people didn't like it; Yann and Thomas looked at Kconfig and it looks difficult to modify.  The AVAILABLE solution has two problems: it adds verbosity, and the recursive dependencies still should be written in the comments (&amp;quot;libfoo requires WCHAR in the toolchain&amp;quot;).  The verbosity is not considered a big issue.  For the comments: they currently don't work perfectly either.  Removing the comments altogether is an option, but then it is difficult for users to find out why a certain package isn't available.  Another possibility is to list the available packages in the documentation (automatically), and mention which toolchain dependencies they have.  Wild idea: consider Config.in as a low-level language, and define our own higher-level language from which we generate Config.in.  Alternatively, have a developer tool that verifies if everything is consistent (i.e. are the comments correct).  One more option: add a big comment in the beginning of the packages list, which says that not all toolchain options are available so not all packages are visible.  Converting the toolchain options from depends to select is not really an option, because changing toolchain options requires a make clean.  We didn't reach a conclusion, we'll come back to it tomorrow.&lt;br /&gt;
1. kconfig-frontend: Yann now has a repository for Kconfig, it would be nice to branch our Kconfig from that.  The idea is to still copy it to our repository.&lt;br /&gt;
1. BUSYBOX_SHOW_OTHERS: the only reason to have this is to avoid newcomers enabling things like tar etc. which are anyway already in busybox.  But for the web servers, they are clearly different from the busybox web servers (and our default busybox config doesn't even enable a web server).  Also bash is a typical one, because people write bashisms in their scripts.  This discussion is somewhat related to the discussion how to handle packages that provide the same functionality.  But for many packages, it's not even the same (httpd, bash, vim).  But actually, we're trying to solve a non-existent problem here - except for the web servers.  If we generate a list of packages in the documentation, we can add a remark to that that it's also available in busybox.&lt;br /&gt;
&lt;br /&gt;
1. Big packages&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed.  Arriving on Fri Nov 2 20:35 at BCN airport.  Leaving Wed Nov. 8 21:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on November, 3rd at BCN airport 9:25 AM. Leaving on November 8th from BCN airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# Maxime Ripard, confirmed. Arriving on November, 1st at BCN airport. Leaving on November 8th from BCP airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed, Arriving on Fri Nov 2 21:55 at BCN airport. Leaving Sun Nov 11 17:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# Luca Ceresoli, confirmed. Arriving on November 3rd at BCN airport 10:05 AM. Leaving on November 7th from BCN airport 19:15 PM. Staying at Hotel Fira Palace. Will arrive around 11:30 AM for the meeting.&lt;br /&gt;
# Samuel Martin, confirmed. Arriving on November, 3rd at Barcelona-Franca Train Station 8:05 AM. Leaving on November 10th from Barcelona-Franca Train Station at 8:43 PM.&lt;br /&gt;
# Simon Dawson, confirmed. Arriving on November 2nd in the evening. Leaving on November 8th early morning.&lt;br /&gt;
# Mischa Jonker, confirmed. From Synopsys.com. Not contributing yet to Buildroot, but interested in using Buildroot for a brand new CPU architecture. Arriving Friday Nov 2nd BCN 21:10 CET, staying at Catalonia Barcelona Plaza (Plaza Espanya), leaving Thursday Nov 8 at 18:40 CET.&lt;br /&gt;
# Maxime Hadjinlian.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
=== Program ===&lt;br /&gt;
&lt;br /&gt;
* Saturday, 10 AM: beginning of the meeting. The first person to arrive can go directly to the front desk and ask for MARIBEL SOCIAS or anyone in the Reservations Department, and then ask for the meeting room booked for Thomas Petazzoni. [[User:ThomasPetazzoni|Thomas Petazzoni]] will only arrive at 10:30-11 AM.&lt;br /&gt;
* Saturday, 7 PM: end of the meeting&lt;br /&gt;
* Saturday, 8:30 PM: dinner sponsored by Synopsys&lt;br /&gt;
* Sunday, 10 AM: beginning of the meeting&lt;br /&gt;
* Sunday, 7 PM: end of the meeting&lt;br /&gt;
&lt;br /&gt;
=== Location ===&lt;br /&gt;
&lt;br /&gt;
The event will take place at [http://www.hotelgrumsbarcelona.com/ Hotel Grumps], in downtown Barcelona. See [http://goo.gl/maps/htYi9 this map] for the location of the hotel, and [http://goo.gl/maps/GdiaM this map] for walking directions between the Fira Palace hotel (location of the ELCE conference) and Hotel Grums.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* Autobuilder tests: needed improvements, future work. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to use a git repository as source for toolchain. This doesn't work well today. Proposed by Mischa Jonker&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Does it make sense to port the toolchains to generic-package infrastructure? Asked by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Should we remove the ability to build a toolchain on the target? And also things like development files on target, documentation on target, etc. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
&lt;br /&gt;
=== List of topics to hack on ===&lt;br /&gt;
&lt;br /&gt;
* Reduce the back log of bugs. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Reduce the back log of patches. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Work on noMMU platform support (Blackfin, Coldfire). Getting Coldfire Qemu working, adding correct support for FLAT binaries. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Package upgrades: package python3, gtk3 and latest versions of glib and al. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Triage autobuilder failures and fix them. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Improve the documentation. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Work on relocatable toolchain. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for setup.py/qmake based packages. Proposed by Samuel Martin&lt;br /&gt;
* Add some infra for make based packages (mainly using the same pattern all over). Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for Kconfig based packages (linux, barebox, busybox, uclibc, ct-ng, at91bootstrap3).  Proposed by Arnout Vandecappelle&lt;br /&gt;
* Make top-level make -j possible.  Proposed by Arnout Vandecappelle&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysELCE2012</id>
		<title>Buildroot:DeveloperDaysELCE2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysELCE2012"/>
				<updated>2012-11-03T11:23:05Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: /* Report of the meeting */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 3-4 November 2012, Barcelona Spain ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Meeting in Barcelona ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Saturday November 3rd and Sunday November 4th, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right before the Embedded Linux Conference Europe, in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
=== Event sponsored by Fluendo and Synopsys ===&lt;br /&gt;
&lt;br /&gt;
The meeting room is sponsored  by [http://www.fluendo.com Fluendo]. Thanks!&lt;br /&gt;
&lt;br /&gt;
The Saturday dinner is sponsored by [http://www.synopsys.com Synopsys]. Thanks!&lt;br /&gt;
&lt;br /&gt;
=== Report of the meeting ===&lt;br /&gt;
&lt;br /&gt;
==== Action points ====&lt;br /&gt;
* Accept perl series.&lt;br /&gt;
* Accept qemu series (after further review).&lt;br /&gt;
* Remove compiler on target.&lt;br /&gt;
* Remove development files on target.&lt;br /&gt;
* Remove documentation on target.&lt;br /&gt;
* Explain in the documentation why the above was done.&lt;br /&gt;
&lt;br /&gt;
==== Details of the discussion ====&lt;br /&gt;
&lt;br /&gt;
1. Perl.  The perl patch series (now at v11) looks ready to be integrated, but we have our doubts about cpanminus. The problems are: it has separate download infrastructure, which blocks some buildroot features (e.g. make source); it doesn't integrate with the legal-info.  However, CPAN is pretty important if you really want to use perl.  The decision was to accept cpanminus as well, but add some warnings that some things don't work.&lt;br /&gt;
1. Qemu.  Adding this opens the door for more people to do stuff that buildroot wasn't meant for in the first place (i.e. embedded).  However, even in embedded qemu could be relevant.  Things like the compiler on the target are much worse for doing crazy things.  Giving new packages a chance is OK; we have to be much more careful with things that have global impact (like including development files on target).  Conclusion: it's OK to accept qemu.&lt;br /&gt;
1. Compiler on target.  It leads to newbies using buildroot in an inappropriate way (i.e. compile on the target).  Also it only works with the internal toolchain.  And if we remove it, we can also remove &amp;quot;Development files on target&amp;quot;, which simplifies some of the build infrastructure.  Also, if you have a compiler on the target, then you can just as well use a distro.  Conclusion: we remove it.&lt;br /&gt;
1. Documentation on target: if you need this, use a distro.  So we remove it.&lt;br /&gt;
1. We need to explain in the documentation why we removed this stuff.&lt;br /&gt;
1. Available stuff: i.e. solve the problem of combination of select and depends. Solving it in Kconfig itself seems to be difficult: there were some patches but the kconfig people didn't like it; Yann and Thomas looked at Kconfig and it looks difficult to modify.  The AVAILABLE solution has two problems: it adds verbosity, and the recursive dependencies still should be written in the comments (&amp;quot;libfoo requires WCHAR in the toolchain&amp;quot;).  The verbosity is not considered a big issue.  For the comments: they currently don't work perfectly either.  Removing the comments altogether is an option, but then it is difficult for users to find out why a certain package isn't available.  Another possibility is to list the available packages in the documentation (automatically), and mention which toolchain dependencies they have.  Wild idea: consider Config.in as a low-level language, and define our own higher-level language from which we generate Config.in.  Alternatively, have a developer tool that verifies if everything is consistent (i.e. are the comments correct).  One more option: add a big comment in the beginning of the packages list, which says that not all toolchain options are available so not all packages are visible.  Converting the toolchain options from depends to select is not really an option, because changing toolchain options requires a make clean.  We didn't reach a conclusion, we'll come back to it tomorrow.&lt;br /&gt;
1. Big packages&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed.  Arriving on Fri Nov 2 20:35 at BCN airport.  Leaving Wed Nov. 8 21:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on November, 3rd at BCN airport 9:25 AM. Leaving on November 8th from BCN airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# Maxime Ripard, confirmed. Arriving on November, 1st at BCN airport. Leaving on November 8th from BCP airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed, Arriving on Fri Nov 2 21:55 at BCN airport. Leaving Sun Nov 11 17:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# Luca Ceresoli, confirmed. Arriving on November 3rd at BCN airport 10:05 AM. Leaving on November 7th from BCN airport 19:15 PM. Staying at Hotel Fira Palace. Will arrive around 11:30 AM for the meeting.&lt;br /&gt;
# Samuel Martin, confirmed. Arriving on November, 3rd at Barcelona-Franca Train Station 8:05 AM. Leaving on November 10th from Barcelona-Franca Train Station at 8:43 PM.&lt;br /&gt;
# Simon Dawson, confirmed. Arriving on November 2nd in the evening. Leaving on November 8th early morning.&lt;br /&gt;
# Mischa Jonker, confirmed. From Synopsys.com. Not contributing yet to Buildroot, but interested in using Buildroot for a brand new CPU architecture. Arriving Friday Nov 2nd BCN 21:10 CET, staying at Catalonia Barcelona Plaza (Plaza Espanya), leaving Thursday Nov 8 at 18:40 CET.&lt;br /&gt;
# Maxime Hadjinlian.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
=== Program ===&lt;br /&gt;
&lt;br /&gt;
* Saturday, 10 AM: beginning of the meeting. The first person to arrive can go directly to the front desk and ask for MARIBEL SOCIAS or anyone in the Reservations Department, and then ask for the meeting room booked for Thomas Petazzoni. [[User:ThomasPetazzoni|Thomas Petazzoni]] will only arrive at 10:30-11 AM.&lt;br /&gt;
* Saturday, 7 PM: end of the meeting&lt;br /&gt;
* Saturday, 8:30 PM: dinner sponsored by Synopsys&lt;br /&gt;
* Sunday, 10 AM: beginning of the meeting&lt;br /&gt;
* Sunday, 7 PM: end of the meeting&lt;br /&gt;
&lt;br /&gt;
=== Location ===&lt;br /&gt;
&lt;br /&gt;
The event will take place at [http://www.hotelgrumsbarcelona.com/ Hotel Grumps], in downtown Barcelona. See [http://goo.gl/maps/htYi9 this map] for the location of the hotel, and [http://goo.gl/maps/GdiaM this map] for walking directions between the Fira Palace hotel (location of the ELCE conference) and Hotel Grums.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* Autobuilder tests: needed improvements, future work. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to use a git repository as source for toolchain. This doesn't work well today. Proposed by Mischa Jonker&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Does it make sense to port the toolchains to generic-package infrastructure? Asked by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Should we remove the ability to build a toolchain on the target? And also things like development files on target, documentation on target, etc. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
&lt;br /&gt;
=== List of topics to hack on ===&lt;br /&gt;
&lt;br /&gt;
* Reduce the back log of bugs. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Reduce the back log of patches. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Work on noMMU platform support (Blackfin, Coldfire). Getting Coldfire Qemu working, adding correct support for FLAT binaries. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Package upgrades: package python3, gtk3 and latest versions of glib and al. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Triage autobuilder failures and fix them. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Improve the documentation. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Work on relocatable toolchain. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for setup.py/qmake based packages. Proposed by Samuel Martin&lt;br /&gt;
* Add some infra for make based packages (mainly using the same pattern all over). Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for Kconfig based packages (linux, barebox, busybox, uclibc, ct-ng, at91bootstrap3).  Proposed by Arnout Vandecappelle&lt;br /&gt;
* Make top-level make -j possible.  Proposed by Arnout Vandecappelle&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysELCE2012</id>
		<title>Buildroot:DeveloperDaysELCE2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysELCE2012"/>
				<updated>2012-11-03T10:58:21Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: /* Report of the meeting */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 3-4 November 2012, Barcelona Spain ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Meeting in Barcelona ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Saturday November 3rd and Sunday November 4th, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right before the Embedded Linux Conference Europe, in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
=== Event sponsored by Fluendo and Synopsys ===&lt;br /&gt;
&lt;br /&gt;
The meeting room is sponsored  by [http://www.fluendo.com Fluendo]. Thanks!&lt;br /&gt;
&lt;br /&gt;
The Saturday dinner is sponsored by [http://www.synopsys.com Synopsys]. Thanks!&lt;br /&gt;
&lt;br /&gt;
=== Report of the meeting ===&lt;br /&gt;
&lt;br /&gt;
==== Action points ====&lt;br /&gt;
* Accept perl series.&lt;br /&gt;
* Accept qemu series (after further review).&lt;br /&gt;
* Remove compiler on target.&lt;br /&gt;
* Remove development files on target.&lt;br /&gt;
* Remove documentation on target.&lt;br /&gt;
* Explain in the documentation why the above was done.&lt;br /&gt;
&lt;br /&gt;
==== Details of the discussion ====&lt;br /&gt;
&lt;br /&gt;
1. Perl.  The perl patch series (now at v11) looks ready to be integrated, but we have our doubts about cpanminus. The problems are: it has separate download infrastructure, which blocks some buildroot features (e.g. make source); it doesn't integrate with the legal-info.  However, CPAN is pretty important if you really want to use perl.  The decision was to accept cpanminus as well, but add some warnings that some things don't work.&lt;br /&gt;
1. Qemu.  Adding this opens the door for more people to do stuff that buildroot wasn't meant for in the first place (i.e. embedded).  However, even in embedded qemu could be relevant.  Things like the compiler on the target are much worse for doing crazy things.  Giving new packages a chance is OK; we have to be much more careful with things that have global impact (like including development files on target).  Conclusion: it's OK to accept qemu.&lt;br /&gt;
1. Compiler on target.  It leads to newbies using buildroot in an inappropriate way (i.e. compile on the target).  Also it only works with the internal toolchain.  And if we remove it, we can also remove &amp;quot;Development files on target&amp;quot;, which simplifies some of the build infrastructure.  Also, if you have a compiler on the target, then you can just as well use a distro.  Conclusion: we remove it.&lt;br /&gt;
1. Documentation on target: if you need this, use a distro.  So we remove it.&lt;br /&gt;
1. We need to explain in the documentation why we removed this stuff.&lt;br /&gt;
1. Available stuff: i.e. solve the problem of combination of select and depends. Solving it in Kconfig itself seems to be difficult: there were some patches but the kconfig people didn't like it; Yann and Thomas looked at Kconfig and it looks difficult to modify.  The AVAILABLE solution has two problems: it adds verbosity, and the recursive dependencies still should be written in the comments (&amp;quot;libfoo requires WCHAR in the toolchain&amp;quot;).  The verbosity is not considered a big issue.  For the comments: they currently don't work perfectly either.  Removing the comments altogether is an option, but then it is difficult for users to find out why a certain package isn't available.  Another possibility is to list the available packages in the documentation (automatically), and mention which toolchain dependencies they have.  Wild idea: consider Config.in as a low-level language, and define our own higher-level language from which we generate Config.in.  Alternatively, have a developer tool that verifies if everything is consistent (i.e. are the comments correct).&lt;br /&gt;
1. Big packages&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed.  Arriving on Fri Nov 2 20:35 at BCN airport.  Leaving Wed Nov. 8 21:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on November, 3rd at BCN airport 9:25 AM. Leaving on November 8th from BCN airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# Maxime Ripard, confirmed. Arriving on November, 1st at BCN airport. Leaving on November 8th from BCP airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed, Arriving on Fri Nov 2 21:55 at BCN airport. Leaving Sun Nov 11 17:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# Luca Ceresoli, confirmed. Arriving on November 3rd at BCN airport 10:05 AM. Leaving on November 7th from BCN airport 19:15 PM. Staying at Hotel Fira Palace. Will arrive around 11:30 AM for the meeting.&lt;br /&gt;
# Samuel Martin, confirmed. Arriving on November, 3rd at Barcelona-Franca Train Station 8:05 AM. Leaving on November 10th from Barcelona-Franca Train Station at 8:43 PM.&lt;br /&gt;
# Simon Dawson, confirmed. Arriving on November 2nd in the evening. Leaving on November 8th early morning.&lt;br /&gt;
# Mischa Jonker, confirmed. From Synopsys.com. Not contributing yet to Buildroot, but interested in using Buildroot for a brand new CPU architecture. Arriving Friday Nov 2nd BCN 21:10 CET, staying at Catalonia Barcelona Plaza (Plaza Espanya), leaving Thursday Nov 8 at 18:40 CET.&lt;br /&gt;
# Maxime Hadjinlian.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
=== Program ===&lt;br /&gt;
&lt;br /&gt;
* Saturday, 10 AM: beginning of the meeting. The first person to arrive can go directly to the front desk and ask for MARIBEL SOCIAS or anyone in the Reservations Department, and then ask for the meeting room booked for Thomas Petazzoni. [[User:ThomasPetazzoni|Thomas Petazzoni]] will only arrive at 10:30-11 AM.&lt;br /&gt;
* Saturday, 7 PM: end of the meeting&lt;br /&gt;
* Saturday, 8:30 PM: dinner sponsored by Synopsys&lt;br /&gt;
* Sunday, 10 AM: beginning of the meeting&lt;br /&gt;
* Sunday, 7 PM: end of the meeting&lt;br /&gt;
&lt;br /&gt;
=== Location ===&lt;br /&gt;
&lt;br /&gt;
The event will take place at [http://www.hotelgrumsbarcelona.com/ Hotel Grumps], in downtown Barcelona. See [http://goo.gl/maps/htYi9 this map] for the location of the hotel, and [http://goo.gl/maps/GdiaM this map] for walking directions between the Fira Palace hotel (location of the ELCE conference) and Hotel Grums.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* Autobuilder tests: needed improvements, future work. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to use a git repository as source for toolchain. This doesn't work well today. Proposed by Mischa Jonker&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Does it make sense to port the toolchains to generic-package infrastructure? Asked by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Should we remove the ability to build a toolchain on the target? And also things like development files on target, documentation on target, etc. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
&lt;br /&gt;
=== List of topics to hack on ===&lt;br /&gt;
&lt;br /&gt;
* Reduce the back log of bugs. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Reduce the back log of patches. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Work on noMMU platform support (Blackfin, Coldfire). Getting Coldfire Qemu working, adding correct support for FLAT binaries. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Package upgrades: package python3, gtk3 and latest versions of glib and al. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Triage autobuilder failures and fix them. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Improve the documentation. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Work on relocatable toolchain. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for setup.py/qmake based packages. Proposed by Samuel Martin&lt;br /&gt;
* Add some infra for make based packages (mainly using the same pattern all over). Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for Kconfig based packages (linux, barebox, busybox, uclibc, ct-ng, at91bootstrap3).  Proposed by Arnout Vandecappelle&lt;br /&gt;
* Make top-level make -j possible.  Proposed by Arnout Vandecappelle&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysELCE2012</id>
		<title>Buildroot:DeveloperDaysELCE2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysELCE2012"/>
				<updated>2012-11-03T10:33:42Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 3-4 November 2012, Barcelona Spain ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Meeting in Barcelona ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Saturday November 3rd and Sunday November 4th, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right before the Embedded Linux Conference Europe, in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
=== Event sponsored by Fluendo and Synopsys ===&lt;br /&gt;
&lt;br /&gt;
The meeting room is sponsored  by [http://www.fluendo.com Fluendo]. Thanks!&lt;br /&gt;
&lt;br /&gt;
The Saturday dinner is sponsored by [http://www.synopsys.com Synopsys]. Thanks!&lt;br /&gt;
&lt;br /&gt;
=== Report of the meeting ===&lt;br /&gt;
&lt;br /&gt;
==== Action points ====&lt;br /&gt;
* Accept perl series.&lt;br /&gt;
* Accept qemu series (after further review).&lt;br /&gt;
* Remove compiler on target.&lt;br /&gt;
* Remove development files on target.&lt;br /&gt;
* Remove documentation on target.&lt;br /&gt;
* Explain in the documentation why the above was done.&lt;br /&gt;
&lt;br /&gt;
==== Details of the discussion ====&lt;br /&gt;
&lt;br /&gt;
1. Perl.  The perl patch series (now at v11) looks ready to be integrated, but we have our doubts about cpanminus. The problems are: it has separate download infrastructure, which blocks some buildroot features (e.g. make source); it doesn't integrate with the legal-info.  However, CPAN is pretty important if you really want to use perl.  The decision was to accept cpanminus as well, but add some warnings that some things don't work.&lt;br /&gt;
1. Qemu.  Adding this opens the door for more people to do stuff that buildroot wasn't meant for in the first place (i.e. embedded).  However, even in embedded qemu could be relevant.  Things like the compiler on the target are much worse for doing crazy things.  Giving new packages a chance is OK; we have to be much more careful with things that have global impact (like including development files on target).  Conclusion: it's OK to accept qemu.&lt;br /&gt;
1. Compiler on target.  It leads to newbies using buildroot in an inappropriate way (i.e. compile on the target).  Also it only works with the internal toolchain.  And if we remove it, we can also remove &amp;quot;Development files on target&amp;quot;, which simplifies some of the build infrastructure.  Also, if you have a compiler on the target, then you can just as well use a distro.  Conclusion: we remove it.&lt;br /&gt;
1. Documentation on target: if you need this, use a distro.  So we remove it.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed.  Arriving on Fri Nov 2 20:35 at BCN airport.  Leaving Wed Nov. 8 21:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on November, 3rd at BCN airport 9:25 AM. Leaving on November 8th from BCN airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# Maxime Ripard, confirmed. Arriving on November, 1st at BCN airport. Leaving on November 8th from BCP airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed, Arriving on Fri Nov 2 21:55 at BCN airport. Leaving Sun Nov 11 17:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# Luca Ceresoli, confirmed. Arriving on November 3rd at BCN airport 10:05 AM. Leaving on November 7th from BCN airport 19:15 PM. Staying at Hotel Fira Palace. Will arrive around 11:30 AM for the meeting.&lt;br /&gt;
# Samuel Martin, confirmed. Arriving on November, 3rd at Barcelona-Franca Train Station 8:05 AM. Leaving on November 10th from Barcelona-Franca Train Station at 8:43 PM.&lt;br /&gt;
# Simon Dawson, confirmed. Arriving on November 2nd in the evening. Leaving on November 8th early morning.&lt;br /&gt;
# Mischa Jonker, confirmed. From Synopsys.com. Not contributing yet to Buildroot, but interested in using Buildroot for a brand new CPU architecture. Arriving Friday Nov 2nd BCN 21:10 CET, staying at Catalonia Barcelona Plaza (Plaza Espanya), leaving Thursday Nov 8 at 18:40 CET.&lt;br /&gt;
# Maxime Hadjinlian.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
=== Program ===&lt;br /&gt;
&lt;br /&gt;
* Saturday, 10 AM: beginning of the meeting. The first person to arrive can go directly to the front desk and ask for MARIBEL SOCIAS or anyone in the Reservations Department, and then ask for the meeting room booked for Thomas Petazzoni. [[User:ThomasPetazzoni|Thomas Petazzoni]] will only arrive at 10:30-11 AM.&lt;br /&gt;
* Saturday, 7 PM: end of the meeting&lt;br /&gt;
* Saturday, 8:30 PM: dinner sponsored by Synopsys&lt;br /&gt;
* Sunday, 10 AM: beginning of the meeting&lt;br /&gt;
* Sunday, 7 PM: end of the meeting&lt;br /&gt;
&lt;br /&gt;
=== Location ===&lt;br /&gt;
&lt;br /&gt;
The event will take place at [http://www.hotelgrumsbarcelona.com/ Hotel Grumps], in downtown Barcelona. See [http://goo.gl/maps/htYi9 this map] for the location of the hotel, and [http://goo.gl/maps/GdiaM this map] for walking directions between the Fira Palace hotel (location of the ELCE conference) and Hotel Grums.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* Autobuilder tests: needed improvements, future work. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to use a git repository as source for toolchain. This doesn't work well today. Proposed by Mischa Jonker&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Does it make sense to port the toolchains to generic-package infrastructure? Asked by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Should we remove the ability to build a toolchain on the target? And also things like development files on target, documentation on target, etc. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
&lt;br /&gt;
=== List of topics to hack on ===&lt;br /&gt;
&lt;br /&gt;
* Reduce the back log of bugs. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Reduce the back log of patches. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Work on noMMU platform support (Blackfin, Coldfire). Getting Coldfire Qemu working, adding correct support for FLAT binaries. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Package upgrades: package python3, gtk3 and latest versions of glib and al. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Triage autobuilder failures and fix them. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Improve the documentation. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Work on relocatable toolchain. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for setup.py/qmake based packages. Proposed by Samuel Martin&lt;br /&gt;
* Add some infra for make based packages (mainly using the same pattern all over). Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for Kconfig based packages (linux, barebox, busybox, uclibc, ct-ng, at91bootstrap3).  Proposed by Arnout Vandecappelle&lt;br /&gt;
* Make top-level make -j possible.  Proposed by Arnout Vandecappelle&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysELCE2012</id>
		<title>Buildroot:DeveloperDaysELCE2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysELCE2012"/>
				<updated>2012-11-03T10:32:46Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 3-4 November 2012, Barcelona Spain ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Meeting in Barcelona ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Saturday November 3rd and Sunday November 4th, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right before the Embedded Linux Conference Europe, in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
=== Event sponsored by Fluendo and Synopsys ===&lt;br /&gt;
&lt;br /&gt;
The meeting room is sponsored  by [http://www.fluendo.com Fluendo]. Thanks!&lt;br /&gt;
&lt;br /&gt;
The saturday dinner is sponsored by [http://www.synopsys.com Synopsys]. Thanks!&lt;br /&gt;
&lt;br /&gt;
=== Action points ===&lt;br /&gt;
* Accept perl series.&lt;br /&gt;
* Accept qemu series (after further review).&lt;br /&gt;
* Remove compiler on target.&lt;br /&gt;
* Remove development files on target.&lt;br /&gt;
* Remove documentation on target.&lt;br /&gt;
* Explain in the documentation why the above was done.&lt;br /&gt;
&lt;br /&gt;
=== Report of the meeting ===&lt;br /&gt;
&lt;br /&gt;
1. Perl.  The perl patch series (now at v11) looks ready to be integrated, but we have our doubts about cpanminus. The problems are: it has separate download infrastructure, which blocks some buildroot features (e.g. make source); it doesn't integrate with the legal-info.  However, CPAN is pretty important if you really want to use perl.  The decision was to accept cpanminus as well, but add some warnings that some things don't work.&lt;br /&gt;
1. Qemu.  Adding this opens the door for more people to do stuff that buildroot wasn't meant for in the first place (i.e. embedded).  However, even in embedded qemu could be relevant.  Things like the compiler on the target are much worse for doing crazy things.  Giving new packages a chance is OK; we have to be much more careful with things that have global impact (like including development files on target).  Conclusion: it's OK to accept qemu.&lt;br /&gt;
1. Compiler on target.  It leads to newbies using buildroot in an inappropriate way (i.e. compile on the target).  Also it only works with the internal toolchain.  And if we remove it, we can also remove &amp;quot;Development files on target&amp;quot;, which simplifies some of the build infrastructure.  Also, if you have a compiler on the target, then you can just as well use a distro.  Conclusion: we remove it.&lt;br /&gt;
1. Documentation on target: if you need this, use a distro.  So we remove it.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed.  Arriving on Fri Nov 2 20:35 at BCN airport.  Leaving Wed Nov. 8 21:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on November, 3rd at BCN airport 9:25 AM. Leaving on November 8th from BCN airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# Maxime Ripard, confirmed. Arriving on November, 1st at BCN airport. Leaving on November 8th from BCP airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed, Arriving on Fri Nov 2 21:55 at BCN airport. Leaving Sun Nov 11 17:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# Luca Ceresoli, confirmed. Arriving on November 3rd at BCN airport 10:05 AM. Leaving on November 7th from BCN airport 19:15 PM. Staying at Hotel Fira Palace. Will arrive around 11:30 AM for the meeting.&lt;br /&gt;
# Samuel Martin, confirmed. Arriving on November, 3rd at Barcelona-Franca Train Station 8:05 AM. Leaving on November 10th from Barcelona-Franca Train Station at 8:43 PM.&lt;br /&gt;
# Simon Dawson, confirmed. Arriving on November 2nd in the evening. Leaving on November 8th early morning.&lt;br /&gt;
# Mischa Jonker, confirmed. From Synopsys.com. Not contributing yet to Buildroot, but interested in using Buildroot for a brand new CPU architecture. Arriving Friday Nov 2nd BCN 21:10 CET, staying at Catalonia Barcelona Plaza (Plaza Espanya), leaving Thursday Nov 8 at 18:40 CET.&lt;br /&gt;
# Maxime Hadjinlian.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
=== Program ===&lt;br /&gt;
&lt;br /&gt;
* Saturday, 10 AM: beginning of the meeting. The first person to arrive can go directly to the front desk and ask for MARIBEL SOCIAS or anyone in the Reservations Department, and then ask for the meeting room booked for Thomas Petazzoni. [[User:ThomasPetazzoni|Thomas Petazzoni]] will only arrive at 10:30-11 AM.&lt;br /&gt;
* Saturday, 7 PM: end of the meeting&lt;br /&gt;
* Saturday, 8:30 PM: dinner sponsored by Synopsys&lt;br /&gt;
* Sunday, 10 AM: beginning of the meeting&lt;br /&gt;
* Sunday, 7 PM: end of the meeting&lt;br /&gt;
&lt;br /&gt;
=== Location ===&lt;br /&gt;
&lt;br /&gt;
The event will take place at [http://www.hotelgrumsbarcelona.com/ Hotel Grumps], in downtown Barcelona. See [http://goo.gl/maps/htYi9 this map] for the location of the hotel, and [http://goo.gl/maps/GdiaM this map] for walking directions between the Fira Palace hotel (location of the ELCE conference) and Hotel Grums.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* Autobuilder tests: needed improvements, future work. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to use a git repository as source for toolchain. This doesn't work well today. Proposed by Mischa Jonker&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Does it make sense to port the toolchains to generic-package infrastructure? Asked by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Should we remove the ability to build a toolchain on the target? And also things like development files on target, documentation on target, etc. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
&lt;br /&gt;
=== List of topics to hack on ===&lt;br /&gt;
&lt;br /&gt;
* Reduce the back log of bugs. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Reduce the back log of patches. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Work on noMMU platform support (Blackfin, Coldfire). Getting Coldfire Qemu working, adding correct support for FLAT binaries. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Package upgrades: package python3, gtk3 and latest versions of glib and al. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Triage autobuilder failures and fix them. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Improve the documentation. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Work on relocatable toolchain. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for setup.py/qmake based packages. Proposed by Samuel Martin&lt;br /&gt;
* Add some infra for make based packages (mainly using the same pattern all over). Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for Kconfig based packages (linux, barebox, busybox, uclibc, ct-ng, at91bootstrap3).  Proposed by Arnout Vandecappelle&lt;br /&gt;
* Make top-level make -j possible.  Proposed by Arnout Vandecappelle&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysELCE2012</id>
		<title>Buildroot:DeveloperDaysELCE2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysELCE2012"/>
				<updated>2012-10-30T21:24:04Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 3-4 November 2012, Barcelona Spain ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Meeting in Barcelona ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Saturday November 3rd and Sunday November 4th, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right before the Embedded Linux Conference Europe, in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
=== Event sponsored by Fluendo and Synopsys ===&lt;br /&gt;
&lt;br /&gt;
The meeting room is sponsored  by [http://www.fluendo.com Fluendo]. Thanks!&lt;br /&gt;
&lt;br /&gt;
The saturday dinner is sponsored by [http://www.synopsys.com Synopsys]. Thanks!&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed.  Arriving on Fri Nov 2 20:35 at BCN airport.  Leaving Wed Nov. 8 21:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on November, 3rd at BCN airport 9:25 AM. Leaving on November 8th from BCN airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# Maxime Ripard, confirmed. Arriving on November, 1st at BCN airport. Leaving on November 8th from BCP airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed, Arriving on Fri Nov 2 21:55 at BCN airport. Leaving Sun Nov 11 17:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# Luca Ceresoli, confirmed. Arriving on November 3rd at BCN airport 10:05 AM. Leaving on November 7th from BCN airport 19:15 PM. Staying at Hotel Fira Palace. Will arrive around 11:30 AM for the meeting.&lt;br /&gt;
# Samuel Martin, confirmed. Arriving on November, 3rd at Barcelona-Franca Train Station 8:05 AM. Leaving on November 10th from Barcelona-Franca Train Station at 8:43 PM.&lt;br /&gt;
# Simon Dawson, confirmed. Arriving on November 2nd in the evening. Leaving on November 8th early morning.&lt;br /&gt;
# Mischa Jonker, confirmed. From Synopsys.com. Not contributing yet to Buildroot, but interested in using Buildroot for a brand new CPU architecture. Arriving Friday Nov 2nd BCN 21:10 CET, staying at Catalonia Barcelona Plaza (Plaza Espanya), leaving Thursday Nov 8 at 18:40 CET.&lt;br /&gt;
# Maxime Hadjinlian.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
=== Program ===&lt;br /&gt;
&lt;br /&gt;
* Saturday, 10 AM: beginning of the meeting. The first person to arrive can go directly to the front desk and ask for MARIBEL SOCIAS or anyone in the Reservations Department, and then ask for the meeting room booked for Thomas Petazzoni. [[User:ThomasPetazzoni|Thomas Petazzoni]] will only arrive at 10:30-11 AM.&lt;br /&gt;
* Saturday, 7 PM: end of the meeting&lt;br /&gt;
* Saturday, 8:30 PM: dinner sponsored by Synopsys&lt;br /&gt;
* Sunday, 10 AM: beginning of the meeting&lt;br /&gt;
* Sunday, 7 PM: end of the meeting&lt;br /&gt;
&lt;br /&gt;
=== Location ===&lt;br /&gt;
&lt;br /&gt;
The event will take place at [http://www.hotelgrumsbarcelona.com/ Hotel Grumps], in downtown Barcelona. See [http://goo.gl/maps/htYi9 this map] for the location of the hotel, and [http://goo.gl/maps/GdiaM this map] for walking directions between the Fira Palace hotel (location of the ELCE conference) and Hotel Grums.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* Autobuilder tests: needed improvements, future work. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to use a git repository as source for toolchain. This doesn't work well today. Proposed by Mischa Jonker&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Does it make sense to port the toolchains to generic-package infrastructure? Asked by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
&lt;br /&gt;
=== List of topics to hack on ===&lt;br /&gt;
&lt;br /&gt;
* Reduce the back log of bugs. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Reduce the back log of patches. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Work on noMMU platform support (Blackfin, Coldfire). Getting Coldfire Qemu working, adding correct support for FLAT binaries. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Package upgrades: package python3, gtk3 and latest versions of glib and al. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Triage autobuilder failures and fix them. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Improve the documentation. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Work on relocatable toolchain. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for setup.py/qmake based packages. Proposed by Samuel Martin&lt;br /&gt;
* Add some infra for make based packages (mainly using the same pattern all over). Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for Kconfig based packages (linux, barebox, busybox, uclibc, ct-ng, at91bootstrap3).  Proposed by Arnout Vandecappelle&lt;br /&gt;
* Make top-level make -j possible.  Proposed by Arnout Vandecappelle&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysELCE2012</id>
		<title>Buildroot:DeveloperDaysELCE2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysELCE2012"/>
				<updated>2012-10-30T21:18:46Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: More discussion and hacking topics&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 3-4 November 2012, Barcelona Spain ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Meeting in Barcelona ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Saturday November 3rd and Sunday November 4th, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right before the Embedded Linux Conference Europe, in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
=== Event sponsored by Fluendo and Synopsys ===&lt;br /&gt;
&lt;br /&gt;
The meeting room is sponsored  by [http://www.fluendo.com Fluendo]. Thanks!&lt;br /&gt;
&lt;br /&gt;
The saturday dinner is sponsored by [http://www.synopsys.com Synopsys]. Thanks!&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed.  Arriving on Fri Nov 2 20:35 at BCN airport.  Leaving Wed Nov. 8 21:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on November, 3rd at BCN airport 9:25 AM. Leaving on November 8th from BCN airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# Maxime Ripard, confirmed. Arriving on November, 1st at BCN airport. Leaving on November 8th from BCP airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed, Arriving on Fri Nov 2 21:55 at BCN airport. Leaving Sun Nov 11 17:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# Luca Ceresoli, confirmed. Arriving on November 3rd at BCN airport 10:05 AM. Leaving on November 7th from BCN airport 19:15 PM. Staying at Hotel Fira Palace. Will arrive around 11:30 AM for the meeting.&lt;br /&gt;
# Samuel Martin, confirmed. Arriving on November, 3rd at Barcelona-Franca Train Station 8:05 AM. Leaving on November 10th from Barcelona-Franca Train Station at 8:43 PM.&lt;br /&gt;
# Simon Dawson, confirmed. Arriving on November 2nd in the evening. Leaving on November 8th early morning.&lt;br /&gt;
# Mischa Jonker, confirmed. From Synopsys.com. Not contributing yet to Buildroot, but interested in using Buildroot for a brand new CPU architecture. Arriving Friday Nov 2nd BCN 21:10 CET, staying at Catalonia Barcelona Plaza (Plaza Espanya), leaving Thursday Nov 8 at 18:40 CET.&lt;br /&gt;
# Maxime Hadjinlian.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
=== Program ===&lt;br /&gt;
&lt;br /&gt;
* Saturday, 10 AM: beginning of the meeting. The first person to arrive can go directly to the front desk and ask for MARIBEL SOCIAS or anyone in the Reservations Department, and then ask for the meeting room booked for Thomas Petazzoni. [[User:ThomasPetazzoni|Thomas Petazzoni]] will only arrive at 10:30-11 AM.&lt;br /&gt;
* Saturday, 7 PM: end of the meeting&lt;br /&gt;
* Saturday, 8:30 PM: dinner sponsored by Synopsys&lt;br /&gt;
* Sunday, 10 AM: beginning of the meeting&lt;br /&gt;
* Sunday, 7 PM: end of the meeting&lt;br /&gt;
&lt;br /&gt;
=== Location ===&lt;br /&gt;
&lt;br /&gt;
The event will take place at [http://www.hotelgrumsbarcelona.com/ Hotel Grumps], in downtown Barcelona. See [http://goo.gl/maps/htYi9 this map] for the location of the hotel, and [http://goo.gl/maps/GdiaM this map] for walking directions between the Fira Palace hotel (location of the ELCE conference) and Hotel Grums.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* Autobuilder tests: needed improvements, future work. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to use a git repository as source for toolchain. This doesn't work well today. Proposed by Mischa Jonker&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Does it make sense to port the toolchains to generic-package infrastructure? Asked by Arnout Vandecappelle&lt;br /&gt;
* How to provide licensing info for packages that have more than one license. The main use cases are: a) different parts of the source code have different licenses, b) a file (or the whole project) is distributed under two or more licenses or c) a mix of the two. See the recent thoughts about this issue by Yann Morin: http://lists.busybox.net/pipermail/buildroot/2012-October/060475.html&lt;br /&gt;
* Support for board stuff outside the buildroot tree. Proposed by Arnout Vandecappelle&lt;br /&gt;
&lt;br /&gt;
=== List of topics to hack on ===&lt;br /&gt;
&lt;br /&gt;
* Reduce the back log of bugs. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Reduce the back log of patches. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Work on noMMU platform support (Blackfin, Coldfire). Getting Coldfire Qemu working, adding correct support for FLAT binaries. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Package upgrades: package python3, gtk3 and latest versions of glib and al. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Triage autobuilder failures and fix them. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Improve the documentation. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Work on relocatable toolchain. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for setup.py/qmake based packages. Proposed by Samuel Martin&lt;br /&gt;
* Add some infra for make based packages (mainly using the same pattern all over). Proposed by Arnout Vandecappelle&lt;br /&gt;
* Add some infra for Kconfig based packages (linux, barebox, busybox, uclibc, ct-ng, at91bootstrap3).  Proposed by Arnout Vandecappelle&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysELCE2012</id>
		<title>Buildroot:DeveloperDaysELCE2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysELCE2012"/>
				<updated>2012-10-24T20:01:48Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 3-4 November 2012, Barcelona Spain ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Meeting in Barcelona ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Saturday November 3rd and Sunday November 4th, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right before the Embedded Linux Conference Europe, in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
=== Event sponsored by Fluendo and Synopsys ===&lt;br /&gt;
&lt;br /&gt;
The meeting room is sponsored  by [http://www.fluendo.com Fluendo]. Thanks!&lt;br /&gt;
&lt;br /&gt;
The saturday dinner is sponsored by [http://www.synopsys.com Synopsys]. Thanks!&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
# [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed.  Arriving on Fri Nov 2 20:35 at BCN airport.  Leaving Wed Nov. 8 21:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on November, 3rd at BCN airport 9:25 AM. Leaving on November 8th from BCN airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# Maxime Ripard, confirmed. Arriving on November, 1st at BCN airport. Leaving on November 8th from BCP airport at 3:45 PM. Staying at Hotel Fira Palace.&lt;br /&gt;
# [[User:PeterKorsgaard|Peter Korsgaard]], confirmed, Arriving on Fri Nov 2 21:55 at BCN airport. Leaving Sun Nov 11 17:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
# Luca Ceresoli, confirmed. Arriving on November 3rd at BCN airport 10:05 AM. Leaving on November 7th from BCN airport 19:15 PM. Staying at Hotel Fira Palace. Will arrive around 11:30 AM for the meeting.&lt;br /&gt;
# Samuel Martin, confirmed. Arriving on November, 3rd at Barcelona-Franca Train Station 8:05 AM. Leaving on November 10th from Barcelona-Franca Train Station at 8:43 PM.&lt;br /&gt;
# Simon Dawson, confirmed. Arriving on November 2nd in the evening. Leaving on November 8th early morning.&lt;br /&gt;
# Mischa Jonker, confirmed. From Synopsys.com. Not contributing yet to Buildroot, but interested in using Buildroot for a brand new CPU architecture. Arriving Friday Nov 2nd BCN 21:10 CET, staying at Catalonia Barcelona Plaza (Plaza Espanya), leaving Thursday Nov 8 at 18:40 CET.&lt;br /&gt;
# Maxime Hadjinlian.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
=== Program ===&lt;br /&gt;
&lt;br /&gt;
* Saturday, 10 AM: beginning of the meeting. The first person to arrive can go directly to the front desk and ask for MARIBEL SOCIAS or anyone in the Reservations Department, and then ask for the meeting room booked for Thomas Petazzoni. [[User:ThomasPetazzoni|Thomas Petazzoni]] will only arrive at 10:30-11 AM.&lt;br /&gt;
* Saturday, 7 PM: end of the meeting&lt;br /&gt;
* Saturday, 8:30 PM: dinner sponsored by Synopsys&lt;br /&gt;
* Sunday, 10 AM: beginning of the meeting&lt;br /&gt;
* Sunday, 7 PM: end of the meeting&lt;br /&gt;
&lt;br /&gt;
=== Location ===&lt;br /&gt;
&lt;br /&gt;
The event will take place at [http://www.hotelgrumsbarcelona.com/ Hotel Grumps], in downtown Barcelona. See [http://goo.gl/maps/htYi9 this map] for the location of the hotel, and [http://goo.gl/maps/GdiaM this map] for walking directions between the Fira Palace hotel (location of the ELCE conference) and Hotel Grums.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Documentation refactoring? Proposed by Samuel Martin.&lt;br /&gt;
* Autobuilder tests: needed improvements, future work. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* The _AVAILABLE mechanism, and how to properly handle dependency on toolchain options (discuss the proposal made by Yann E. Morin). Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Discuss (and, if approved, implement) the split between _LICENSE and _REDISTRIBUTE for legal-info. I think this won't take much more than 10 minutes chat + 10 minutes hack. Proposed by Luca Ceresoli.&lt;br /&gt;
* Make it possible to use a git repository as source for toolchain. This doesn't work well today. Proposed by Mischa Jonker&lt;br /&gt;
* Make it possible to do a 'target-clean', as a replacement of uninstall. Will this even work at all? Proposed by Arnout Vandecappelle&lt;br /&gt;
* Does it make sense to port the toolchains to generic-package infrastructure? Asked by Arnout Vandecappelle&lt;br /&gt;
&lt;br /&gt;
=== List of topics to hack on ===&lt;br /&gt;
&lt;br /&gt;
* Reduce the back log of bugs. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Reduce the back log of patches. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Work on noMMU platform support (Blackfin, Coldfire). Getting Coldfire Qemu working, adding correct support for FLAT binaries. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Package upgrades: package python3, gtk3 and latest versions of glib and al. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Triage autobuilder failures and fix them. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Improve the documentation. Proposed by Arnout Vandecappelle&lt;br /&gt;
* Work on relocatable toolchain. Proposed by Arnout Vandecappelle&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot:DeveloperDaysELCE2012</id>
		<title>Buildroot:DeveloperDaysELCE2012</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot:DeveloperDaysELCE2012"/>
				<updated>2012-09-27T07:38:22Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Buildroot Developers Meeting, 3-4 November 2012, Barcelona Spain ==&lt;br /&gt;
&lt;br /&gt;
=== What is Buildroot ? ===&lt;br /&gt;
&lt;br /&gt;
[http://buildroot.org Buildroot] is a set of Makefiles and patches that makes it easy to generate a complete embedded Linux system. Buildroot can generate any or all of a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. Buildroot is useful mainly for people working with small or embedded systems, using various CPU architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the building process of your embedded system and eases the cross-compilation process.&lt;br /&gt;
&lt;br /&gt;
=== Meeting in Barcelona ===&lt;br /&gt;
&lt;br /&gt;
The Buildroot community is organizing a meeting on Saturday November 3rd and Sunday November 4th, for Buildroot developers and contributors. This meeting will be a mixture of discussion and hacking session around the Buildroot project. This meeting takes place right before the Embedded Linux Conference Europe, in order to make it easy for participants to attend both events.&lt;br /&gt;
&lt;br /&gt;
=== Participants ===&lt;br /&gt;
&lt;br /&gt;
* [[User:Arnout_Vandecappelle|Arnout Vandecappelle]], confirmed.  Arriving on Fri Nov 2 20:35 at BCN airport.  Leaving Wed Nov. 8 21:15 at BCN. Staying at [http://www.hcchotels.es/en/hotel/12/hcc-lugano HCC Lugano]&lt;br /&gt;
* [[User:ThomasPetazzoni|Thomas Petazzoni]], confirmed. Arriving on November, 3th at BCN airport 9:25 AM. Leaving on November 8th from BCN airport at 3:45 PM.&lt;br /&gt;
* Maxime Ripard, confirmed. Arriving on November, 1st at BCN airport. Leaving on November 8th from BCP airport at 3:45 PM.&lt;br /&gt;
* Peter Korsgaard, confirmed.&lt;br /&gt;
* Luca Ceresoli, confirmed.&lt;br /&gt;
* Samuel Martin, confirmed. Arriving on November, 3th at Barcelona-Franca Train Station 8:05 AM. Leaving on November 10th from Barcelona-Franca Train Station at 8:43 PM.&lt;br /&gt;
* Simon Dawson, confirmed. Arriving on November 2nd in the evening. Leaving on November 8th early morning.&lt;br /&gt;
* Mischa Jonker, confirmed. From Synopsys.com. Not contributing yet to Buildroot, but interested in using Buildroot for a brand new CPU architecture.&lt;br /&gt;
&lt;br /&gt;
=== Registration ===&lt;br /&gt;
&lt;br /&gt;
Please contact Thomas Petazzoni (thomas.petazzoni@free-electrons.com) if you would like to attend.&lt;br /&gt;
&lt;br /&gt;
Attending the event is free, but registration is required.&lt;br /&gt;
&lt;br /&gt;
=== List of topics to discuss ===&lt;br /&gt;
&lt;br /&gt;
* Interaction between Buildroot configuration options to select architecture specifities (architecture variant, soft-float vs. hard-float, etc.) and the multilib variants available in external toolchains. Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* Status on the community organization. Has patchwork improved things? Are patches taken into account in a faster way? Proposed by [[User:ThomasPetazzoni]].&lt;br /&gt;
* What are the next &amp;quot;big&amp;quot; things for Buildroot? Proposed by [[User:ThomasPetazzoni]].&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Buildroot</id>
		<title>Buildroot</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Buildroot"/>
				<updated>2012-03-03T18:54:48Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Buildroot is a nice, simple, and efficient embedded Linux build system. [http://www.buildroot.org Buildroot main page]&lt;br /&gt;
&lt;br /&gt;
==Todo list==&lt;br /&gt;
&lt;br /&gt;
This is a list of improvements that we would like to see in buildroot.  Feel free to add suggestions here.  If you're working on one of these items, put your name and the date behind it, to avoid duplicate work.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Document how to contribute (patches to list instead of bugzilla, SOB, formatting rules, acked-by and tested-by, how often to repost, what to expect, CC's, ...)&lt;br /&gt;
* Document how a package patch should be formatted (Comment, SOB, file naming rules, ...) + send upstream + CC sendpatches&lt;br /&gt;
* Peter sets up a planet on whatever server and links to it from buildroot website&lt;br /&gt;
* Peter sets up a cgi script on the website where test results can be POST-ed&lt;br /&gt;
* Peter adds a script to the website to generate on-line documentation from asciidoc&lt;br /&gt;
* Add the generated manual to the release tarball in the ''release'' target&lt;br /&gt;
* Peter contacts ozlabs.org to request hosting a patchwork for buildroot&lt;br /&gt;
* Finalize legal-info&lt;br /&gt;
* Clean up infrastructure for applying patches: modify apply-patches script to support new naming scheme, migrate existing patches, remove architecture-specific patch support&lt;br /&gt;
* In documentation, explain how to report a bug&lt;br /&gt;
* Add rsync to target-finalize, document this as the preferred method of customizing the target rootfs&lt;br /&gt;
* The CMake toolchain file should be moved somewhere into host/ to be part of the SDK, maybe host/usr/share/cmake or host/usr/share/buildroot.&lt;br /&gt;
* It would be nice to add a br-configure script in host/usr/bin for autotools-based packages.  Run ...BUILDROOTSDK/usr/bin/br-configure --enable-foo --disable-bar, and the br-configure script would call the ./configure script in the current directory passing all the right options (--host, and all environment variables CC, LD, AS, AR and such).&lt;br /&gt;
&lt;br /&gt;
Here is what needs to be done to make the HOST-directory a relocatable SDK:&lt;br /&gt;
* Make sure that all binaries and libraries built for the host are built with a rpath pointing to host/usr/lib. Normally, this should already be the case, but it's worth checking.&lt;br /&gt;
* Change the rpath value to $ORIGIN/../lib instead of the current absolute path $(O)/host/usr/lib.&lt;br /&gt;
* Modify the compiler wrapper program of external toolchains so that instead of using a fixed location for the compiler tools, it deduces their location in a relative manner from its current location.&lt;br /&gt;
* Modify/patch pkg-config so that instead of having a fixed location for the PKG_CONFIG_PATH and PKG_CONFIG_SYSROOT_DIR, those are deduced from the location of the pkg-config binary. This will allow a pkg-config binary that has been moved to still operate properly, without having to set any environment variable.&lt;br /&gt;
* Write a shell script, installed in host/usr/bin, which would mungle the libtool .la files, the qmake.conf file and the CMake toolchain file to set the correct path. This script reads a file (can be host/usr/share/buildroot/location) which contains the original location of the SDK. This allows the script to do the right modifications on all the libtool, qmake.conf and cmake files. Once this is done, the script changes the host/usr/share/buildroot/location file so that it contains the new location.&lt;br /&gt;
* Modify the external toolchain wrapper so that it bails out and warns the user if the directory it is executed in doesn't match the location of host/usr/share/buildroot/location. We haven't discussed how this could work with internal and crosstool-NG toolchains, though.&lt;br /&gt;
&lt;br /&gt;
Here are some nice-to-have's for which it is not entirely clear if and how they could be implemented:&lt;br /&gt;
* Out-of-tree builds, which allows the package source to be shared between different output directories and between host and target compiles.&lt;br /&gt;
* It would be nice if you could run a buildroot command that prepares a local copy of a package's source, and allows you to generate patches for it later. This could use git or quilt to keep track of the patches.&lt;br /&gt;
* It would be nice if there was a make target to reinstall everything to the target (i.e. remove all the target-installed stamps, remove the root stamp, maybe remove the target too).  However, what is missing is the copying of the toolchain support files (libc.so etc.).  It's not obvious that this can be done in a reliable way.&lt;br /&gt;
* It would be nice if there was some common infrastructure to combine the images into one final flash or SD card or whatever image.  However, it is probably difficult to find the commonality of all the different use cases.  And we don't even see all these use cases.&lt;br /&gt;
* SoC-specific architectures: it would be nice if the user could select e.g. OMAP3 instead of Cortex-A8.  It's a bit unclear what granularity would be needed here (OMAP? OMAP3? OMAP3530?).  Also, it seems to be too much maintenance work to support all that, and the list of SoCs or SoC families could grow very long.&lt;br /&gt;
* The uninstall targets are pretty useless because they don't really work. Should we remove support for uninstall?&lt;br /&gt;
* It would be nice to have support for neon, vfp, thumb2, ...  Tricky for external compilers, because we must know if it matches the options we want to give it.&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Category:Buildroot</id>
		<title>Category:Buildroot</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Category:Buildroot"/>
				<updated>2012-02-15T20:05:17Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: Created page with &amp;quot;Buildroot is a nice, simple, and efficient embedded Linux build system. [http://www.buildroot.org Buildroot main page]&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Buildroot is a nice, simple, and efficient embedded Linux build system. [http://www.buildroot.org Buildroot main page]&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Build_Systems</id>
		<title>Build Systems</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Build_Systems"/>
				<updated>2012-02-15T20:04:34Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: Convert Buildroot page into a category&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [[Yocto Project]] - Project for multiple embedded Linux technologies&lt;br /&gt;
* [[Open Embedded]] - System for building full embedded images from scratch&lt;br /&gt;
* [[:Category:Buildroot]] is a set of Makefiles and patches that makes it easy generate a cross-compilation toolchain and root filesystem for your target Linux system using the uClibc C library.&lt;br /&gt;
* [http://www.pengutronix.de/software/ptxdist/index_en.html PTXdist]&lt;br /&gt;
** Kconfig based build system developed by [http://www.pengutronix.de/index_en.html Pengutronix] &lt;br /&gt;
** GPL licensed&lt;br /&gt;
** [http://free-electrons.com/pub/video/2009/fosdem/fosdem2009-schwebel-ptxdist.ogv Video] of a talk given by PTXdist maintainer Robert Schwebel at [http://www.fosdem.org FOSDEM 2009]&lt;br /&gt;
* [http://www.linuxfromscratch.org/ Linux From Scratch]&lt;br /&gt;
* LTIB - Linux Target Image Builder (by Stuart Hughes of FreeScale) - see http://savannah.nongnu.org/projects/ltib&lt;br /&gt;
** [http://www.bitshrine.org/celf_ltib_bof_v1.2.pdf Slides] and [http://free-electrons.com/pub/video/2008/ols/ols2008-stuart-hughes-ltib.ogg video] of a talk on LTIB at the Ottawa Linux Symposium 2008&lt;br /&gt;
* [[OpenBricks]] - Embedded Linux Framework&lt;br /&gt;
** OpenBricks provides a set of packages, patches and shell-based rules that creates a toolchain and a rootfs with customized packages and features selection.&lt;br /&gt;
** Currently supports x86_32, x86_64, PowerPC, PowerPC64 and ARM architectures with either uClibc, Glibc or eGlibc C library.&lt;br /&gt;
* [http://www.mvista.com/download/fetchdoc.php?docid=342 Building Embedded Userlands] - Presentation by Ned Miljevic &amp;amp; Klaas van Gend at the ELC 2008 which compares different configuration and build systems. [http://free-electrons.com/pub/video/2008/elce/elce2008-miljevic-van-gend-embedded-userlands.ogv Video] of the conference available.&lt;br /&gt;
* [[Scratchbox]] Cross-Compilation Toolkit, with support for x86 and arm.&lt;br /&gt;
* [[OpenWRT]] Cross-Compilation Toolkit mainly geared towards wireless routers but can be extended to other platforms, with support for x86, MIPS and ARM.&lt;br /&gt;
See also [[Toolchains]]&lt;br /&gt;
[[Category:Development Tools]]&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	<entry>
		<id>http://elinux.org/Build_Systems</id>
		<title>Build Systems</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/Build_Systems"/>
				<updated>2012-02-15T20:02:42Z</updated>
		
		<summary type="html">&lt;p&gt;Arnout Vandecappelle: Internal link for buildroot&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [[Yocto Project]] - Project for multiple embedded Linux technologies&lt;br /&gt;
* [[Open Embedded]] - System for building full embedded images from scratch&lt;br /&gt;
* [[Buildroot]] is a set of Makefiles and patches that makes it easy generate a cross-compilation toolchain and root filesystem for your target Linux system using the uClibc C library.&lt;br /&gt;
* [http://www.pengutronix.de/software/ptxdist/index_en.html PTXdist]&lt;br /&gt;
** Kconfig based build system developed by [http://www.pengutronix.de/index_en.html Pengutronix] &lt;br /&gt;
** GPL licensed&lt;br /&gt;
** [http://free-electrons.com/pub/video/2009/fosdem/fosdem2009-schwebel-ptxdist.ogv Video] of a talk given by PTXdist maintainer Robert Schwebel at [http://www.fosdem.org FOSDEM 2009]&lt;br /&gt;
* [http://www.linuxfromscratch.org/ Linux From Scratch]&lt;br /&gt;
* LTIB - Linux Target Image Builder (by Stuart Hughes of FreeScale) - see http://savannah.nongnu.org/projects/ltib&lt;br /&gt;
** [http://www.bitshrine.org/celf_ltib_bof_v1.2.pdf Slides] and [http://free-electrons.com/pub/video/2008/ols/ols2008-stuart-hughes-ltib.ogg video] of a talk on LTIB at the Ottawa Linux Symposium 2008&lt;br /&gt;
* [[OpenBricks]] - Embedded Linux Framework&lt;br /&gt;
** OpenBricks provides a set of packages, patches and shell-based rules that creates a toolchain and a rootfs with customized packages and features selection.&lt;br /&gt;
** Currently supports x86_32, x86_64, PowerPC, PowerPC64 and ARM architectures with either uClibc, Glibc or eGlibc C library.&lt;br /&gt;
* [http://www.mvista.com/download/fetchdoc.php?docid=342 Building Embedded Userlands] - Presentation by Ned Miljevic &amp;amp; Klaas van Gend at the ELC 2008 which compares different configuration and build systems. [http://free-electrons.com/pub/video/2008/elce/elce2008-miljevic-van-gend-embedded-userlands.ogv Video] of the conference available.&lt;br /&gt;
* [[Scratchbox]] Cross-Compilation Toolkit, with support for x86 and arm.&lt;br /&gt;
* [[OpenWRT]] Cross-Compilation Toolkit mainly geared towards wireless routers but can be extended to other platforms, with support for x86, MIPS and ARM.&lt;br /&gt;
See also [[Toolchains]]&lt;br /&gt;
[[Category:Development Tools]]&lt;/div&gt;</summary>
		<author><name>Arnout Vandecappelle</name></author>	</entry>

	</feed>