Skip to contentSkip to conversation

Facilitate saving of configuration files for board developers

PATCH New Thomas De Schampheleire 2 participants 6 messages Feb 27, 2011 – Apr 1, 2011 Kbuild

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Facilitate saving of configuration files for board developers

This patch series intends to make the development life of board developers working with buildroot easier, by providing two extra -update build targets that copy over configuration files to their version-controlled counterparts. The new targets, linux-update and config-update have the same behavior as the already existing uclibc-update and busybox-update.

---
 linux/linux.mk |   7 +++++++
 Config.in      |  11 +++++++++++
 Makefile       |   9 +++++++++
 3 files changed, 27 insertions(+), 0 deletions(-)
#1 lore raw

PATCH 1/1 linux: add linux-update target to save configuration

In analogy to build targets uclibc-update and busybox-update, add linux-update that copies the current configuration to the custom configuration file set in buildroot.
This facilitates the work of developers adding support for a specific board to buildroot.

---
 linux/linux.mk |  7 +++++++
 1 files changed, 7 insertions(+), 0 deletions(-)
linux/linux.mk +7 -0
@@ -163,6 +163,13 @@
 	$(MAKE) $(LINUX26_MAKE_FLAGS) -C $(LINUX26_DIR) \
 		$(subst linux-,,$(subst linux26-,,$@))
 
+ifeq ($(BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG),y)
+linux-update linux26-update: $(LINUX26_DIR)/.config
+	cp -f $(LINUX26_DIR)/.config $(BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE)
+else
+linux-update linux26-update: ;
+endif
+
 # Support for rebuilding the kernel after the initramfs file list has
 # been generated in $(BINARIES_DIR)/rootfs.initramfs.
 $(LINUX26_DIR)/.stamp_initramfs_rebuilt: $(LINUX26_DIR)/.stamp_installed $(BINARIES_DIR)/rootfs.initramfs
#2 lore raw

PATCH 1/1 Add config-update target to save buildroot configuration, e.g. to defconfig

In reply to Thomas De Schampheleire

Add build target config-update that allows saving a buildroot configuration to a backup location, e.g. the appropriate defconfig. The location to backup to is specified with a new buildroot configuration option.
This facilitates the work of developers adding support for a specific board to buildroot.

---
 Config.in |  11 +++++++++++
 Makefile  |   9 +++++++++
 2 files changed, 20 insertions(+), 0 deletions(-)
Config.in +11 -0
@@ -10,6 +10,17 @@
 	string
 	option env="BR2_VERSION_FULL"
 
+config BR2_BACKUP_CONFIG
+	string "Backup configuration file"
+	default ""
+	help
+	  If you set a configuration file here and run 'make config-update',
+	  the buildroot configuration will be copied to that file.
+	  This can be useful if you want to put the buildroot configuration
+	  under version control.
+	  If you are working on a specific board, it may be a good idea to
+	  specify the board_defconfig file here.
+
 source "target/Config.in.arch"
 
 menu "Build options"
Makefile +9 -0
@@ -598,6 +598,7 @@
 %_defconfig: $(BUILD_DIR)/buildroot-config/conf $(TOPDIR)/configs/%_defconfig outputmakefile
 	@mkdir -p $(BUILD_DIR)/buildroot-config
 	@$(COMMON_CONFIG_ENV) $< --defconfig=$(TOPDIR)/configs/$@ $(CONFIG_CONFIG_IN)
+	@sed -i 's,BR2_BACKUP_CONFIG.*,BR2_BACKUP_CONFIG="$(TOPDIR)/configs/$@",' $(CONFIG_DIR)/.config
 
 savedefconfig: $(BUILD_DIR)/buildroot-config/conf outputmakefile
 	@mkdir -p $(BUILD_DIR)/buildroot-config
@@ -609,6 +610,14 @@
 
 endif # ifeq ($(BR2_HAVE_DOT_CONFIG),y)
 
+ifneq ($(BR2_BACKUP_CONFIG),"")
+config-update: $(CONFIG_DIR)/.config
+	cp -f $(CONFIG_DIR)/.config $(BR2_BACKUP_CONFIG)
+else
+config-update: ;
+endif
+
+
 #############################################################
 #
 # Cleanup and misc junk
#3 lore raw

PATCH 1/1 Facilitate saving of configuration files for board developers

In reply to Thomas De Schampheleire

2011/2/27 Thomas De Schampheleire <[email protected]>:

Quoted 7 lines

This patch series intends to make the development life of board developers working with buildroot easier, by providing two extra -update build targets that copy over configuration files to their version-controlled counterparts. The new targets, linux-update and config-update have the same behavior as the already existing uclibc-update and busybox-update.

Great contribution! My thumbs-up for this patchset. :)

#4 lore raw

PATCH 1/1 Facilitate saving of configuration files for board developers

2011/2/28 Daniel Nystr?m <[email protected]>:

Quoted 11 lines

2011/2/27 Thomas De Schampheleire <[email protected]>:

Quoted 7 lines

This patch series intends to make the development life of board developers working with buildroot easier, by providing two extra -update build targets that copy over configuration files to their version-controlled counterparts. The new targets, linux-update and config-update have the same behavior as the already existing uclibc-update and busybox-update.

Great contribution! My thumbs-up for this patchset. :)

Thanks Daniel!

Do others have any comments regarding this patch series? Could it be included in buildroot?

Thanks, Thomas

#5 lore raw

PATCH 1/1 Facilitate saving of configuration files for board developers

2011/3/6 Thomas De Schampheleire <[email protected]>:

Quoted 10 lines

2011/2/28 Daniel Nystr?m <[email protected]>:

Quoted 9 lines

2011/2/27 Thomas De Schampheleire <[email protected]>:

Quoted 7 lines

This patch series intends to make the development life of board developers working with buildroot easier, by providing two extra -update build targets that copy over configuration files to their version-controlled counterparts. The new targets, linux-update and config-update have the same behavior as the already existing uclibc-update and busybox-update.

Quoted 7 lines
Quoted 2 lines

Great contribution! My thumbs-up for this patchset. :)

Thanks Daniel!

Do others have any comments regarding this patch series? Could it be included in buildroot?

Thomas, Peter,

Any objections against these patches?

Thanks,
Thomas