[Buildroot] [PATCH 1 of 6 v2] Config.in.legacy: update description
Thomas De Schampheleire
patrickdepinguin+buildroot at gmail.com
Wed Jul 24 07:22:58 UTC 2013
The existing comments in Config.in.legacy are not entirely in-line with
current practice. The comments implies that BR2_LEGACY should not be set when
the conversion from old-to-new symbol can be done automatically using the
appropriate 'select' statements. However, none of the existing legacy options
does it this way. Moreover, I think it's intentional that the user is notified
of the change, so that the removal of the legacy options in later buildroot
versions no longer poses a problem.
Additionally, I have added an example of how to handle the renaming of a string
config option. Because a string option cannot 'select' something else, a wrapper
symbol is needed of type bool.
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire at gmail.com>
(v2): new patch in this series
Config.in.legacy | 22 +++++++++++++++++-----
1 files changed, 17 insertions(+), 5 deletions(-)
diff --git a/Config.in.legacy b/Config.in.legacy
@@ -3,11 +3,10 @@
# When an existing Config.in symbol is removed, it should be added again in this
# file, and take appropriate action to approximate backward compatibility. If
-# there is an equivalent (set of) new symbols, these can just be select'ed by
-# the old symbol. This makes sure that running 'make oldconfig' will make things
-# "just work" when upgrading to a new buildroot version. If the change is too
-# fundamental and cannot be fixed by a simple select, then the old symbol should
-# select BR2_LEGACY. If that symbol is set, the build will issue an error.
+# there is an equivalent (set of) new symbols, these should be select'ed by
+# the old symbol. This will make the transition for the user more convenient.
+# The old symbol should select BR2_LEGACY, so that the user is informed at
+# build-time about selected legacy options.
# When adding legacy symbols to this file, add them to the front. The oldest
# symbols will be removed again after about two years.
@@ -15,6 +14,19 @@
# The symbol should be copied as-is from the place where it was previously
# defined, but the help text should be removed or replaced with something that
# explains how to fix it.
+# If the old symbol is of type string, and the symbol has been renamed, you
+# should add it as a bool with another name (BR2_<foo>_WRAP), that defaults
+# to y if the old string is not set at its default value. For example:
+# config BR2_FOO_STRING
+# string "Some foo string"
+# would become:
+# config BR2_FOO_STRING_WRAP
+# bool "Foo string option has been renamed."
+# default y if BR2_FOO_STRING != ""
+# depends on BR2_LEGACY
+# <suitable help text>
More information about the buildroot