All of lore.kernel.org
 help / color / mirror / Atom feed
From: Peter Korsgaard <jacmet@sunsite.dk>
To: buildroot@busybox.net
Subject: [Buildroot] [git commit] pkg-infra: introduce errors for legacy API
Date: Sat, 01 Dec 2012 18:27:21 -0800	[thread overview]
Message-ID: <87hao56vee.fsf@dell.be.48ers.dk> (raw)
In-Reply-To: <20121201174909.1d52aad3@skate> (Thomas Petazzoni's message of "Sat, 1 Dec 2012 17:49:09 +0100")

>>>>> "Thomas" == Thomas Petazzoni <thomas.petazzoni@free-electrons.com> writes:

Hi,

 >> As discussed in the BR developer days, we want to be more strict about API
 >> changes in buildroot. I.e., we want to make it less likely that a user's
 >> customizations break down after upgrading buildroot.
 >> 
 >> A first step is to make sure that the user is warned about API changes.
 >> This patch introduces Makefile.legacy and Config.in.legacy, which will
 >> issue clear error messages for such situations.
 >> 
 >> Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
 >> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>

 Thomas> This doesn't really work well with randpackageconfig, and therefore
 Thomas> breaks the autobuilders badly.

 Thomas> For example, randpackageconfig can enable BR2_PACKAGE_GETTEXT_STATIC,
 Thomas> because it matches BR2_PACKAGE_<foo>, this will select BR2_LEGACY,
 Thomas> which will abort the build.

 Thomas> Should it be fixed just in the autobuilders scripts, or do we consider
 Thomas> the fact that "make randpackageconfig" generates un-buildable
 Thomas> configuration is a bug by itself?

I would call it a bug. I've fixed it like this:

[PATCH] {rand,allyes}packageconfig: ensure legacy test options don't
 get enabled

The legacy BR2_PACKAGE_* options in Config.in.legacy are not supposed to
be user selectable, so {rand,allyes}packageconfig shouldn't enable them.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
---
 Makefile |    6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/Makefile b/Makefile
index d3f9b40..b394fd5 100644
--- a/Makefile
+++ b/Makefile
@@ -619,6 +619,9 @@ allnoconfig: $(BUILD_DIR)/buildroot-config/conf outputmakefile
 randpackageconfig: $(BUILD_DIR)/buildroot-config/conf outputmakefile
 	@mkdir -p $(BUILD_DIR)/buildroot-config
 	@grep -v BR2_PACKAGE_ $(CONFIG_DIR)/.config > $(CONFIG_DIR)/.config.nopkg
+	@grep '^config BR2_PACKAGE_' Config.in.legacy | \
+		while read config pkg; do \
+		echo "# $$pkg is not set" >> $(CONFIG_DIR)/.config.nopkg; done
 	@$(COMMON_CONFIG_ENV) \
 		KCONFIG_ALLCONFIG=$(CONFIG_DIR)/.config.nopkg \
 		$< --randconfig $(CONFIG_CONFIG_IN)
@@ -627,6 +630,9 @@ randpackageconfig: $(BUILD_DIR)/buildroot-config/conf outputmakefile
 allyespackageconfig: $(BUILD_DIR)/buildroot-config/conf outputmakefile
 	@mkdir -p $(BUILD_DIR)/buildroot-config
 	@grep -v BR2_PACKAGE_ $(CONFIG_DIR)/.config > $(CONFIG_DIR)/.config.nopkg
+	@grep '^config BR2_PACKAGE_' Config.in.legacy | \
+		while read config pkg; do \
+		echo "# $$pkg is not set" >> $(CONFIG_DIR)/.config.nopkg; done
 	@$(COMMON_CONFIG_ENV) \
 		KCONFIG_ALLCONFIG=$(CONFIG_DIR)/.config.nopkg \
 		$< --allyesconfig $(CONFIG_CONFIG_IN)

-- 
Bye, Peter Korsgaard

  reply	other threads:[~2012-12-02  2:27 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-11-30 20:06 [Buildroot] [git commit] pkg-infra: introduce errors for legacy API Peter Korsgaard
2012-12-01 16:49 ` Thomas Petazzoni
2012-12-02  2:27   ` Peter Korsgaard [this message]
2012-12-02 18:31     ` Thomas Petazzoni

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87hao56vee.fsf@dell.be.48ers.dk \
    --to=jacmet@sunsite.dk \
    --cc=buildroot@busybox.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.