Buildroot Mainline integration
From ArmadeusWiki
Page under construction... Informations on this page are not guaranteed !!
Contents
Changes since BR version used in armadeus 3.x
default packages
- uClibc: 0.9.29 -> 0.9.30 -> 0.9.33.2
- gcc: 4.2.1-> 4.4.5 -> 4.7.2
- busybox: 1.6.2 -> 1.20.2 -> 1.21
- U-Boot: 2012.10 -> 2013.04
build directories
- build_arm_xxx/ project_build_xxx/ toolchain_build_arm_xxx/ have been removed and replaced by output/:
build host images stamps target toolchain
configs
- buildroot default configs are now stored in buildroot/configs/apfxx_defconfig and no more in buildroot/target/device/armadeus/apfxx/apfxx_defconfig
- uClibc config should be named with version number to not overwrite the old one -->
buildroot/target/device/armadeus/apf27/uClibc-0.9.30.config.arm
- idem for U-Boot config:
buildroot/target/device/armadeus/apf27/apf27-u-boot-2010.03.h
Changes since BR version used in armadeus 4.x
- TBDL
How to use new BR in armadeus
- checkout a recent clean GIT view and before any other command edit the main Makefile to change the BUILDROOT_VERSION flag from 2012.02 to 20121030
- comment line 29
- uncomment the line 30
- then you can use it as old BR:
$ make apf27_defconfig $ make
- new patches dirrectory:
patches/buildroot/2012.11/
Patches that can be sent to BR
(Some will require some cleanup)
Instructions
- Patches to port: patches/buildroot/2010.11
- when working on a patch mark it with:
- ** <span style="color:orange">'''In progress'''</span> ~~~~
- --> In progress JulienB 14:14, 9 November 2010 (UTC)
- Strike the one that are no more needed:
-
000-xxxxxxx.patch
-
- Write OK in bold green and your name (automatic with 4x'~') when corresponding patch has been ported:
- ** <span style="color:green">'''OK'''</span> ~~~~
- --> 000-xxxxxxx.patch: OK JulienB 07:06, 21 October 2010 (UTC)
- How to:
- get a BR git
- try to apply patch with patch -p1 --dry-run < patch_name.patch
- when it applies remove --dry-run, commit, generates patch with GIT and send it to BR
001 -> 059
- 001-add_armadeus_device.patch -- armadeus specific
- 002-add_armadeus_specific_packages.patch -- armadeus specific
- 003-armadeus-ltrace-fix-download-url.patch
- 004-gilliland-ti-utils-fix-github-tarball-to-use-commit-id.patch
- 005-armadeus-gpsd-add-options-setting-in-menuconfig.patch
- 021-sdl-water-config.patch -- broken
- 034-slideshow.patch -- broken
- 045-openssh-add_passwd_expire.patch
- 050-U-Boot-add_support_for_custom_configuration_file.patch
- Submission not accepted --jorasse 08:04, 5 December 2013 (UTC)
- 051-U-Boot-add_support_for_custom_binary_file_format.patch -- will be present in BR next release
- 052-U-Boot-add_support_for_Safe_Boot_file_format.patch
060 -> 085
- 072-xenomai-package.patch
- 081-adds_quake_package.patch ( 2nd priority package to push on the BR mainline )
- 083-pygame-armadeus_addons.patch
- 085-adds_gpm_package.patch -- broken
095 -> 119
- 097-adds_flite_package.patch (to push on the BR mainline - need some refactoring )
- In progress SamuelM 20:25, 3 December 2012 (UTC)
- 099-mplayer-add_patch_for_pld_asm_instruction_on_non_armv5_arch.patch
- 107-games-add_wolf4sdl.patch -- broken
- 110-bluez-add_package.patch
- bluez-utils-4.x (currently 4.101) already in BR (since 2011.08) with bluez3 compat knob -- SamuelM 10:49, 1 November 2012 (UTC)
- 111-bluez-hacks.patch
- bluez-utils-4.x (currently 4.101) already in BR (since 2011.08) with bluez3 compat knob -- SamuelM 10:49, 1 November 2012 (UTC)
- 118-snes9x-add_package.patch -- broken
120 -> 179
- 120-cwiid-add_package.patch (to push on the BR mainline - need some refactoring to be more generic)
- In progress SamuelM 12:11, 1 November 2012 (UTC)
- 121-target-arm926t_is_arm926ej-s.patch
- 123-pywebradio-add_package.patch -- broken
- 124-e-uae-add_package.patch
- 125-opentyrian-add_package.patch -- broken
- 130-lbreakout-add_package.patch -- broken ( 2nd priority package to push on the BR mainline )
- In progress JulienB 21:36, 20 December 2010 (UTC)
- 131-ltetris-add_package.patch -- broken
- 132-qt-full_integration_with_cross_compiling.patch
- 142-ncurses-fix_compilation_with_old_hosts.patch
- 146-busybox-disable_ip_busybox_if_iproute2_buildroot.patch
- 147-busybox-ifplugd-fixes-netlink-buffer.patch
- 150-alsa-utils-fix_installation_bug_on_some_host_systems.patch
- 157-buildroot-allow_generic_device_selection_even_when_custom_rootfs_is_chosen.patch
- 158-setserial-bump_version.patch
- 168-libcanfestival-add_package.patch (to push on the BR mainline )
- In progress SamuelM 19:42, 1 November 2012 (UTC)
- 172-gsmmux-add_package.patch
- 174-imx-lib-add_package.patch
- partially included in BR
- 176-imx-test-add_package.patch
- 178-uboot-add-missing-UBOOT_CLEAN_CMDS.patch
- 179-e2fsprog-allow_e4defrag_build_against_old_kernel_headers.patch
180 -> end
- 181-qtcreator-add_package.patch
- 182-uclibc-add_accept4_declaration_fix.patch
- 183-openwrt-uclibc-add-kernel_long-declaration.patch
- 184-fsl-mm-codeclib-add_package.patch
- 186-uboot-tools-2011.03-Ignore-env_sectors-on-NOR-and-SPI-dataflash.patch
- 188-marble-add_package.patch -- broken
- 189-dbus-fix_installation.patch
- 191-madplay-requires_libintl.patch -- to fix : the legacy libintl is not supported anymore
- 196-python-crc16-add_package.patch (to push on the BR mainline )
- In progress SamuelM 20:18, 3 December 2012 (UTC)
- 197-cunit-add_package.patch (to push on the BR mainline )
- In progress SamuelM 20:18, 3 December 2012 (UTC)
- 201-armadeus-add_gnokii.patch
- 203-armadeus-add_sms_server_tools_3_package.patch
- 204-busybox-fix-snapshot.patch
- 204-wpa-supplicant-add-option-ieee80211w.patch
- 205-busybox-coreutils-stty-add-rs485-config-options.patch
- 206-joe-add_package.patch
- 207-armadeus-add_python_pyro_3.14.patch
- 208-armadeus-add_beremiz.patch
- 209-armadeus-add_matiec.patch
- 210-poppler-qt_compiling.patch
- 211-cups-fix_site_url.patch
- 212-fbgrab-fix_site_url.patch
- 213-tslib-bump_to_v1.1.patch
- 214-mplayer-fix-compilation.patch
How to send patches to BR
(see the Buildroot - How to contribute page)
- GIT should be installed and configured on your PC like stated here
- clone buildroot GIT:
$ git clone xxxxx buildroot_git_dev/ (TBDL) $ cd buildroot_git_dev/
- take patch from armadeus:
$ cp /path_to_armadeus_bsp/patches/buildroot/2011.05/0xx-name.patch .
- create a branch to work (here my_work):
$ git branch my_work $ git checkout my_work Switched to branch 'my_work' $ git branch master * my_work
- try patch:
$ patch -p1 --dry-run < 0xx-name.patch
- if it works, apply it for real:
$ patch -p1 < 0xx-name.patch
- list changes:
$ git status
- do some more changes if needed and then save them:
... do changes ... $ git add files_changed ... test changes ... $ git commit -m "Summary of your work"
- generate patch to send to BR:
$ git format-patch -M master..my_work -s
- this will give:
0001-Summary_of_your_work.patch
- send patch to BR:
$ git send-email --from=xxx.xxx@xxx.xx --to=buildroot@busybox.net --smtp-server=smtp.xxx.xx 0001-Summary_of_your_work.patch
- depending on the feedbacks from BR, modify your patch:
... do changes ... $ git diff $ git add files_changed $ git commit --amend $ git format-patch -M master..my_work -s
- adds version inside [PATCH] ex: [PATCH v2]
- adds comments after ---, ex:
From a2413db058ac3c515337102690ba12a746831f7e Mon Sep 17 00:00:00 2001 From: Julien Boibessot <julien.boibessot@armadeus.com> Date: Wed, 19 Oct 2011 10:39:26 +0200 Subject: [PATCH v2] Add libmodbus package Signed-off-by: Julien Boibessot <julien.boibessot@armadeus.com> --- Changes since v1: - Took Yegor Yefremov remarks about "call AUTOTARGETS' into account. Based on previous work of Marek Belisko and comments of Thomas Petazzoni. package/Config.in | 1 + package/libmodbus/Config.in | 8 ++++++++ package/libmodbus/libmodbus.mk | 11 +++++++++++ 3 files changed, 20 insertions(+), 0 deletions(-) create mode 100644 package/libmodbus/Config.in create mode 100644 package/libmodbus/libmodbus.mk diff --git a/package/Config.in b/package/Config.in ......
- retry ;-)
After patch has been accepted
- Delete branch & co:
$ rm xxxx.patch $ git checkout master $ git branch -D my_work $ git branch * master
Links
Status for BR2013.05 patches
0 to 100
Name | Comment |
---|---|
001-add_armadeus_device.patch | Specific to armadeus |
002-add_armadeus_specific_packages.patch | Specific to armadeus |
003-armadeus-ltrace-fix-download-url.patch | available upstream for ltrace 0.7.3 |
004-gilliland-ti-utils-fix-github-tarball-to-use-commit-id.patch | already available upstream |
005-armadeus-gpsd-add-options-setting-in-menuconfig.patch | unused by armadeus but can be contributed upstream |
021-armadeus-add-sdl_water-package.patch | can be sent upstream (demo) with modifications : LICENSE... |
034-armadeus-add-slideshow-package.patch | can be sent upstream with modifications : LICENSE... |
045-openssh-add_passwd_expire.patch | Need to be reviewed |
050-U-Boot-add_support_for_custom_configuration_file.patch | ??? |
051-U-Boot-add_support_for_custom_binary_file_format.patch | ??? |
052-U-Boot-add_support_for_Safe_Boot_file_format.patch | ??? |
072-xenomai-package.patch | cannot be sent upstream |
081-adds_quake_package.patch | can be sent upstream with modifications : LICENSE... |
083-pygame-armadeus_addons.patch | cannot be sent upstream due to missing dependencies |
085-armadeus-add-gpm-package.patch | can be sent upstream with modifications : LICENSE... |
097-adds_flite_package.patch | can be sent upstream with modifications : LICENSE... |
099-mplayer-add_patch_for_pld_asm_instruction_on_non_armv5_arch.patch | to send to mplayer instead of BR |
100 to 200
Name | Comment |
---|---|
107-armadeus-games-add-wolf4sdl-package.patch | |
110-bluez3-add_package.patch | |
111-bluez3-hacks.patch | |
118-armadeus-snes9x-add-package.patch | |
120-cwiid-add_package.patch | |
121-target-arm926t_is_arm926ej-s.patch | |
123-armadeus-pywebradio-add-package.patch | |
124-e-uae-add_package.patch | |
125-armadeus-opentyrian-add-package.patch | |
130-armadeus-lbreakout2-add-package.patch | |
131-armadeus-ltetris-add-package.patch | |
132-qt-full_integration_with_cross_compiling.patch | |
142-ncurses-fix_compilation_with_old_hosts.patch | |
146-busybox-disable_ip_busybox_if_iproute2_buildroot.patch | |
147-busybox-ifplugd-fixes-netlink-buffer.patch | |
150-alsa-utils-fix_installation_bug_on_some_host_systems.patch | |
157-buildroot-allow_generic_device_selection_even_when_custom_rootfs_is_chosen.patch | |
158-setserial-bump_version.patch | |
168-libcanfestival-add_package.patch | |
172-gsmmux-add_package.patch | |
174-imx-lib-customize_package.patch | |
176-imx-test-add_package.patch | |
178-uboot-add-missing-UBOOT_CLEAN_CMDS.patch | |
179-e2fsprog-allow_e4defrag_build_against_old_kernel_headers.patch | |
181-qtcreator-add_package.patch | |
182-uclibc-add_accept4_declaration_fix.patch | |
183-openwrt-uclibc-add-kernel_long-declaration.patch | |
184-fsl-mm-codeclib-add_package.patch | |
186-uboot-tools-2011.03-Ignore-env_sectors-on-NOR-and-SPI-dataflash.patch | |
188-marble-add_package.patch | |
189-dbus-fix_installation.patch | |
191-armadeus-madplay-fixes-libintl-dependency.patch | |
196-python-crc16-add_package.patch | |
197-cunit-add_package.patch | |
201-armadeus-add_gnokii.patch | |
203-armadeus-add_sms_server_tools_3_package.patch | |
204-busybox-fix-snapshot.patch | |
204-wpa-supplicant-add-option-ieee80211w.patch | |
205-busybox-coreutils-stty-add-rs485-config-options.patch | |
206-joe-add_package.patch | |
207-armadeus-add_python_pyro_3.14.patch | |
208-armadeus-add_beremiz.patch | |
209-armadeus-add_matiec.patch | |
210-poppler-qt_compiling.patch | |
211-cups-fix_site_url.patch | |
212-fbgrab-fix_site_url.patch | |
213-tslib-bump_to_v1.1.patch | |
214-mplayer-fix-compilation.patch |