Introduce new deprecation symbols, and remove squashfs3/ttcp
PATCH v3 1/1 Introduce new deprecation symbols, and remove squashfs3/ttcp
In this third version I have stopped using the feature-removal-schedule.txt file, and moved to an alternate strategy: introduce symbols BR2_DEPRECATED_SINCE_xxxx_xx, which also provide an indication of when features can be removed.
--- Config.in | 42 +++++++++++++- Config.in.legacy | 24 ++++++++ arch/Config.in.mips | 8 +- docs/manual/appendix.txt | 8 ++- fs/squashfs/Config.in | 16 ----- fs/squashfs/squashfs.mk | 12 ---- package/Config.in | 2 - package/autoconf/Config.in | 2 +- package/automake/Config.in | 2 +- package/bison/Config.in | 4 +- package/busybox/Config.in | 2 +- package/ccache/Config.in | 2 +- package/flex/Config.in | 3 +- package/gcc/Config.in.host | 4 +- package/gdb/Config.in.host | 4 +- package/gob2/Config.in | 3 +- package/linux-headers/Config.in.host | 14 ++-- package/lzma/Config.in | 4 +- package/m4/Config.in | 3 +- package/squashfs3/Config.in | 12 ---- package/squashfs3/squashfs3-3.4-build-system-fix.patch | 37 ------------ package/squashfs3/squashfs3-3.4-get_nprocs.patch | 33 ----------- package/squashfs3/squashfs3.mk | 34 ----------- package/ttcp/Config.in | 7 -- package/ttcp/ttcp-0001-replace-deprecated-bcopy.patch | 15 ----- package/ttcp/ttcp.mk | 25 -------- package/vala/Config.in | 4 +- package/xstroke/Config.in | 2 +- support/scripts/gen-manual-lists.py | 21 ++++--- toolchain/toolchain-external/Config.in | 8 +- 30 files changed, 121 insertions(+), 236 deletions(-)
PATCH v3 1/1 deprecated handling: introduce BR2_DEPRECATED_SINCE_xxxx_xx
In order to keep better track of when a feature got deprecated, and hence when it can be removed, a new set of symbols BR2_DEPRECATED_SINCE_xxxx_xx is introduced. These symbols are automatically selected when BR2_DEPRECATED is selected, and thus are transparent to the user.
A deprecated feature will no longer depend on BR2_DEPRECATED directly, but rather on the appropriate BR2_DEPRECATED_SINCE_xxxx_xx. If that symbol does not yet exist, it has to be created in Config.in.
When removing a deprecated feature, one should also check whether this was the last feature using the BR2_DEPRECATED_SINCE_xxxx_xx symbol, in which case the latter can be removed from Config.in.
A followup patch will make sure the overview is added to the list of deprecated features in the manual, so that a buildroot core developer can easily determine which features to remove in a given development cycle.
--- Config.in | 42 +++++++++++++++++++++++++++++- arch/Config.in.mips | 8 ++-- fs/squashfs/Config.in | 2 +- package/autoconf/Config.in | 2 +- package/automake/Config.in | 2 +- package/bison/Config.in | 4 ++- package/busybox/Config.in | 2 +- package/ccache/Config.in | 2 +- package/flex/Config.in | 3 +- package/gcc/Config.in.host | 4 +- package/gdb/Config.in.host | 4 +- package/gob2/Config.in | 3 +- package/linux-headers/Config.in.host | 14 +++++----- package/lzma/Config.in | 4 +- package/m4/Config.in | 3 +- package/squashfs3/Config.in | 4 +- package/ttcp/Config.in | 2 +- package/vala/Config.in | 4 +- package/xstroke/Config.in | 2 +- toolchain/toolchain-external/Config.in | 8 ++-- 20 files changed, 82 insertions(+), 37 deletions(-)
Config.in +41 -1
@@ -254,6 +254,46 @@ config BR2_DEPRECATED help This option hides outdated/obsolete versions of packages. +if BR2_DEPRECATED + +config BR2_DEPRECATED_SINCE_2010_05 + bool + default y + +config BR2_DEPRECATED_SINCE_2010_11 + bool + default y + +config BR2_DEPRECATED_SINCE_2012_05 + bool + default y + +config BR2_DEPRECATED_SINCE_2012_11 + bool + default y + +config BR2_DEPRECATED_SINCE_2013_02 + bool + default y + +config BR2_DEPRECATED_SINCE_2013_05 + bool + default y + +config BR2_DEPRECATED_SINCE_2013_08 + bool + default y + +config BR2_DEPRECATED_SINCE_2013_11 + bool + default y + +config BR2_DEPRECATED_SINCE_2014_02 + bool + default y + +endif + config BR2_ENABLE_DEBUG bool "build packages with debugging symbols" help
@@ -443,7 +483,7 @@ config BR2_PREFER_STATIC_LIB config BR2_HAVE_DOCUMENTATION bool "documentation on the target" # We no longer want to support a toolchain on the target - depends on BR2_DEPRECATED + depends on BR2_DEPRECATED_SINCE_2012_11 help Install the documentation, including manual pages and info pages, on the target.
arch/Config.in.mips +4 -4
@@ -11,16 +11,16 @@ choice config BR2_mips_1 bool "mips I (generic)" - depends on !BR2_ARCH_IS_64 && BR2_DEPRECATED + depends on !BR2_ARCH_IS_64 && BR2_DEPRECATED_SINCE_2013_11 config BR2_mips_2 bool "mips II" - depends on !BR2_ARCH_IS_64 && BR2_DEPRECATED + depends on !BR2_ARCH_IS_64 && BR2_DEPRECATED_SINCE_2013_11 config BR2_mips_3 bool "mips III" - depends on BR2_DEPRECATED + depends on BR2_DEPRECATED_SINCE_2013_11 config BR2_mips_4 bool "mips IV" - depends on BR2_DEPRECATED + depends on BR2_DEPRECATED_SINCE_2013_11 config BR2_mips_32 bool "mips 32" depends on !BR2_ARCH_IS_64
fs/squashfs/Config.in +1 -1
@@ -15,7 +15,7 @@ config BR2_TARGET_ROOTFS_SQUASHFS4 bool "4.x" config BR2_TARGET_ROOTFS_SQUASHFS3 - depends on BR2_DEPRECATED + depends on BR2_DEPRECATED_SINCE_2010_05 bool "3.x" endchoice
package/autoconf/Config.in +1 -1
@@ -1,7 +1,7 @@ config BR2_PACKAGE_AUTOCONF bool "autoconf" # We no longer support a toolchain on the target - depends on BR2_DEPRECATED + depends on BR2_DEPRECATED_SINCE_2012_11 select BR2_PACKAGE_PERL help Extensible program for developing configure scripts. These
package/automake/Config.in +1 -1
@@ -1,7 +1,7 @@ config BR2_PACKAGE_AUTOMAKE bool "automake" # We no longer support a toolchain on the target - depends on BR2_DEPRECATED + depends on BR2_DEPRECATED_SINCE_2012_11 select BR2_PACKAGE_AUTOCONF select BR2_PACKAGE_PERL help
package/bison/Config.in +3 -1
@@ -5,7 +5,7 @@ config BR2_PACKAGE_BISON # m4 uses fork() depends on BR2_USE_MMU # development tool, useless on the target - depends on BR2_DEPRECATED + depends on BR2_DEPRECATED_SINCE_2014_02 help General-purpose parser generator that converts a grammar description for an LALR context-free grammar into a C
@@ -14,4 +14,6 @@ config BR2_PACKAGE_BISON http://www.gnu.org/software/bison/ comment "bison needs a toolchain w/ wchar" + depends on BR2_DEPRECATED_SINCE_2014_02 + depends on BR2_USE_MMU depends on !BR2_USE_WCHAR
package/busybox/Config.in +1 -1
@@ -19,7 +19,7 @@ choice config BR2_BUSYBOX_VERSION_1_19_X bool "BusyBox 1.19.x" - depends on BR2_DEPRECATED + depends on BR2_DEPRECATED_SINCE_2014_02 config BR2_BUSYBOX_VERSION_1_20_X bool "BusyBox 1.20.x"
package/ccache/Config.in +1 -1
@@ -3,7 +3,7 @@ config BR2_PACKAGE_CCACHE # needs fork() depends on BR2_USE_MMU # We no longer support a toolchain on the target - depends on BR2_DEPRECATED + depends on BR2_DEPRECATED_SINCE_2013_02 help ccache is a compiler cache. It speeds up recompilation by caching previous compilations and detecting when the same
package/flex/Config.in +2 -1
@@ -16,12 +16,13 @@ config BR2_PACKAGE_FLEX_BINARY # runtime dependency select BR2_PACKAGE_M4 # development tool, useless on the target - depends on BR2_DEPRECATED + depends on BR2_DEPRECATED_SINCE_2014_02 depends on BR2_USE_WCHAR # m4 help Install the flex binary tool in the target filesystem. comment "flex binary needs a toolchain w/ wchar" + depends on BR2_DEPRECATED_SINCE_2014_02 depends on BR2_USE_MMU depends on !BR2_USE_WCHAR
package/gcc/Config.in.host +2 -2
@@ -124,7 +124,7 @@ comment "C++ support broken in uClibc wi config BR2_INSTALL_OBJC bool "Enable Objective-C support" depends on !BR2_avr32 - depends on BR2_DEPRECATED + depends on BR2_DEPRECATED_SINCE_2013_11 help Enable the support for the Objective-C language in the cross-compiler, and install the Objective-C runtime to the
@@ -133,7 +133,7 @@ config BR2_INSTALL_OBJC config BR2_INSTALL_FORTRAN bool "Enable Fortran support" depends on !BR2_avr32 - depends on BR2_DEPRECATED + depends on BR2_DEPRECATED_SINCE_2013_11 select BR2_PACKAGE_LIBMPFR help Enable the support for the Fortran language in the
package/gdb/Config.in.host +2 -2
@@ -34,12 +34,12 @@ choice config BR2_GDB_VERSION_7_2 bool "gdb 7.2.x" depends on !BR2_bfin - depends on BR2_DEPRECATED + depends on BR2_DEPRECATED_SINCE_2013_02 config BR2_GDB_VERSION_7_3 bool "gdb 7.3.x" depends on !BR2_bfin - depends on BR2_DEPRECATED + depends on BR2_DEPRECATED_SINCE_2013_02 config BR2_GDB_VERSION_7_4 bool "gdb 7.4.x"
package/gob2/Config.in +2 -1
@@ -7,7 +7,7 @@ config BR2_PACKAGE_GOB2 select BR2_PACKAGE_FLEX select BR2_PACKAGE_BISON # development tool, useless on the target - depends on BR2_DEPRECATED + depends on BR2_DEPRECATED_SINCE_2014_02 help GOB (GTK+ Object Builder) is a preprocessor which simplifies the writing of GObjects in C.
@@ -16,4 +16,5 @@ config BR2_PACKAGE_GOB2 comment "gob2 needs a toolchain w/ wchar" depends on BR2_USE_MMU + depends on BR2_DEPRECATED_SINCE_2014_02 depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS
package/linux-headers/Config.in.host +7 -7
@@ -20,7 +20,7 @@ choice config BR2_KERNEL_HEADERS_3_1 bool "Linux 3.1.x kernel headers" - depends on BR2_DEPRECATED && !BR2_arc + depends on BR2_DEPRECATED_SINCE_2013_02 && !BR2_arc config BR2_KERNEL_HEADERS_3_2 bool "Linux 3.2.x kernel headers"
@@ -28,7 +28,7 @@ choice config BR2_KERNEL_HEADERS_3_3 bool "Linux 3.3.x kernel headers" - depends on BR2_DEPRECATED && !BR2_arc + depends on BR2_DEPRECATED_SINCE_2013_02 && !BR2_arc config BR2_KERNEL_HEADERS_3_4 bool "Linux 3.4.x kernel headers"
@@ -36,23 +36,23 @@ choice config BR2_KERNEL_HEADERS_3_5 bool "Linux 3.5.x kernel headers" - depends on BR2_DEPRECATED && !BR2_arc + depends on BR2_DEPRECATED_SINCE_2013_02 && !BR2_arc config BR2_KERNEL_HEADERS_3_6 bool "Linux 3.6.x kernel headers" - depends on BR2_DEPRECATED && !BR2_arc + depends on BR2_DEPRECATED_SINCE_2013_05 && !BR2_arc config BR2_KERNEL_HEADERS_3_7 bool "Linux 3.7.x kernel headers" - depends on BR2_DEPRECATED && !BR2_arc + depends on BR2_DEPRECATED_SINCE_2013_05 && !BR2_arc config BR2_KERNEL_HEADERS_3_8 bool "Linux 3.8.x kernel headers" - depends on BR2_DEPRECATED && !BR2_arc + depends on BR2_DEPRECATED_SINCE_2013_08 && !BR2_arc config BR2_KERNEL_HEADERS_3_9 bool "Linux 3.9.x kernel headers" - depends on BR2_DEPRECATED + depends on BR2_DEPRECATED_SINCE_2013_11 config BR2_KERNEL_HEADERS_3_10 bool "Linux 3.10.x kernel headers"
package/lzma/Config.in +2 -2
@@ -1,7 +1,7 @@ config BR2_PACKAGE_LZMA bool "lzma" depends on BR2_INSTALL_LIBSTDCPP - depends on BR2_DEPRECATED + depends on BR2_DEPRECATED_SINCE_2010_11 help Lempel Ziv compression method (LZMA) is a compression algorithm with high compression ratio.
@@ -9,5 +9,5 @@ config BR2_PACKAGE_LZMA http://tukaani.org/lzma/ comment "lzma needs a toolchain w/ C++" - depends on BR2_DEPRECATED + depends on BR2_DEPRECATED_SINCE_2010_11 depends on !BR2_INSTALL_LIBSTDCPP
package/m4/Config.in +2 -1
@@ -4,12 +4,13 @@ config BR2_PACKAGE_M4 # uses fork() depends on BR2_USE_MMU # development tool, useless on the target - depends on BR2_DEPRECATED + depends on BR2_DEPRECATED_SINCE_2014_02 help An implementation of the traditional Unix macro processor. http://www.gnu.org/software/m4/m4.html comment "m4 needs a toolchain w/ wchar" + depends on BR2_DEPRECATED_SINCE_2014_02 depends on BR2_USE_MMU depends on !BR2_USE_WCHAR
package/squashfs3/Config.in +2 -2
@@ -1,6 +1,6 @@ config BR2_PACKAGE_SQUASHFS3 bool "squashfs3" - depends on BR2_DEPRECATED + depends on BR2_DEPRECATED_SINCE_2010_05 depends on BR2_LARGEFILE help Tools to generate SquashFS 3.x filesystems.
@@ -8,5 +8,5 @@ config BR2_PACKAGE_SQUASHFS3 http://squashfs.sourceforge.net/ comment "squashfs3 needs a toolchain w/ largefile" - depends on BR2_DEPRECATED + depends on BR2_DEPRECATED_SINCE_2010_05 depends on !BR2_LARGEFILE
package/ttcp/Config.in +1 -1
@@ -1,6 +1,6 @@ config BR2_PACKAGE_TTCP bool "ttcp" - depends on BR2_DEPRECATED + depends on BR2_DEPRECATED_SINCE_2012_05 help Benchmarking tool for determining TCP and UDP performance.
package/vala/Config.in +2 -2
@@ -1,7 +1,7 @@ config BR2_PACKAGE_VALA bool "vala" # We no longer support a toolchain on the target - depends on BR2_DEPRECATED + depends on BR2_DEPRECATED_SINCE_2013_05 depends on BR2_USE_WCHAR # glib2 depends on BR2_TOOLCHAIN_HAS_THREADS # glib2 depends on BR2_USE_MMU # glib2
@@ -14,6 +14,6 @@ config BR2_PACKAGE_VALA http://live.gnome.org/Vala comment "vala needs a toolchain w/ wchar, threads" - depends on BR2_DEPRECATED + depends on BR2_DEPRECATED_SINCE_2013_05 depends on BR2_USE_MMU depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS
package/xstroke/Config.in +1 -1
@@ -2,7 +2,7 @@ config BR2_PACKAGE_XSTROKE bool "xstroke" depends on BR2_PACKAGE_XORG7 # dead upstream, probably not many users - depends on BR2_DEPRECATED + depends on BR2_DEPRECATED_SINCE_2013_02 select BR2_PACKAGE_XLIB_LIBXFT select BR2_PACKAGE_XLIB_LIBXTST select BR2_PACKAGE_XLIB_LIBXPM
support/scripts/gen-manual-lists.py +3 -1
@@ -234,7 +234,9 @@ class Buildroot: """ Return True if the symbol is marked as deprecated, otherwise False. """ - return self._deprecated in symbol.get_referenced_symbols() + # This also catches BR2_DEPRECATED_SINCE_xxxx_xx + return bool([ symbol for x in symbol.get_referenced_symbols() + if x.get_name().startswith(self._deprecated.get_name()) ]) def _is_package(self, symbol): """ Return True if the symbol is a package or a host package, otherwise
toolchain/toolchain-external/Config.in +4 -4
@@ -721,7 +721,7 @@ config BR2_TOOLCHAIN_EXTERNAL_XILINX_MIC depends on BR2_microblazeel depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" depends on !BR2_PREFER_STATIC_LIB - depends on BR2_DEPRECATED + depends on BR2_DEPRECATED_SINCE_2014_02 select BR2_TOOLCHAIN_EXTERNAL_GLIBC select BR2_TOOLCHAIN_HAS_NATIVE_RPC select BR2_HOSTARCH_NEEDS_IA32_LIBS
@@ -735,7 +735,7 @@ config BR2_TOOLCHAIN_EXTERNAL_XILINX_MIC depends on BR2_microblazeel depends on BR2_HOSTARCH = "x86_64" depends on !BR2_PREFER_STATIC_LIB - depends on BR2_DEPRECATED + depends on BR2_DEPRECATED_SINCE_2014_02 select BR2_TOOLCHAIN_EXTERNAL_GLIBC select BR2_TOOLCHAIN_HAS_NATIVE_RPC help
@@ -747,7 +747,7 @@ config BR2_TOOLCHAIN_EXTERNAL_XILINX_MIC depends on BR2_microblazebe depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" depends on !BR2_PREFER_STATIC_LIB - depends on BR2_DEPRECATED + depends on BR2_DEPRECATED_SINCE_2014_02 select BR2_TOOLCHAIN_EXTERNAL_GLIBC select BR2_TOOLCHAIN_HAS_NATIVE_RPC select BR2_HOSTARCH_NEEDS_IA32_LIBS
@@ -761,7 +761,7 @@ config BR2_TOOLCHAIN_EXTERNAL_XILINX_MIC depends on BR2_microblazebe depends on BR2_HOSTARCH = "x86_64" depends on !BR2_PREFER_STATIC_LIB - depends on BR2_DEPRECATED + depends on BR2_DEPRECATED_SINCE_2014_02 select BR2_TOOLCHAIN_EXTERNAL_GLIBC select BR2_TOOLCHAIN_HAS_NATIVE_RPC help
PATCH v3 1/1 deprecated handling: introduce BR2_DEPRECATED_SINCE_xxxx_xx
Quoted 11 lines · Thomas De Schampheleire
In order to keep better track of when a feature got deprecated, and hence when it can be removed, a new set of symbols
BR2_DEPRECATED_SINCE_xxxx_xxis introduced. These symbols are automatically selected whenBR2_DEPRECATEDis selected, and thus are transparent to the user.
A deprecated feature will no longer depend onBR2_DEPRECATEDdirectly, but rather on the appropriateBR2_DEPRECATED_SINCE_xxxx_xx. If that symbol does not yet exist, it has to be created in Config.in.
When removing a deprecated feature, one should also check whether this was the last feature using theBR2_DEPRECATED_SINCE_xxxx_xxsymbol, in which case the latter can be removed from Config.in.
Quoted 3 lines
A followup patch will make sure the overview is added to the list of deprecated features in the manual, so that a buildroot core developer can easily determine which features to remove in a given development cycle.
Just a small note: this patch series does not yet really add this overview to the manual, I now realize. The manual looks as before, except that the name of the symbol itself got added. I will try to make a followup patch that changes that, but I think it can be independent of this series.
PATCH v3 1/1 deprecated handling: introduce BR2_DEPRECATED_SINCE_xxxx_xx
In reply to Thomas De SchampheleireQuoted 11 lines · Thomas De Schampheleire
In order to keep better track of when a feature got deprecated, and hence when it can be removed, a new set of symbols
BR2_DEPRECATED_SINCE_xxxx_xxis introduced. These symbols are automatically selected whenBR2_DEPRECATEDis selected, and thus are transparent to the user.
A deprecated feature will no longer depend onBR2_DEPRECATEDdirectly, but rather on the appropriateBR2_DEPRECATED_SINCE_xxxx_xx. If that symbol does not yet exist, it has to be created in Config.in.
When removing a deprecated feature, one should also check whether this was the last feature using theBR2_DEPRECATED_SINCE_xxxx_xxsymbol, in which case the latter can be removed from Config.in.
Quoted 3 lines
A followup patch will make sure the overview is added to the list of deprecated features in the manual, so that a buildroot core developer can easily determine which features to remove in a given development cycle.
Just a small note: this patch series does not yet really add this overview to the manual, I now realize. The manual looks as before, except that the name of the symbol itself got added. I will try to make a followup patch that changes that, but I think it can be independent of this series.
PATCH v3 1/1 deprecated handling: introduce BR2_DEPRECATED_SINCE_xxxx_xx
In reply to Thomas De SchampheleireQuoted 11 lines · Thomas De Schampheleire
In order to keep better track of when a feature got deprecated, and hence when it can be removed, a new set of symbols
BR2_DEPRECATED_SINCE_xxxx_xxis introduced. These symbols are automatically selected whenBR2_DEPRECATEDis selected, and thus are transparent to the user.
A deprecated feature will no longer depend onBR2_DEPRECATEDdirectly, but rather on the appropriateBR2_DEPRECATED_SINCE_xxxx_xx. If that symbol does not yet exist, it has to be created in Config.in.
When removing a deprecated feature, one should also check whether this was the last feature using theBR2_DEPRECATED_SINCE_xxxx_xxsymbol, in which case the latter can be removed from Config.in.
Quoted 5 lines
A followup patch will make sure the overview is added to the list of deprecated features in the manual, so that a buildroot core developer can easily determine which features to remove in a given development cycle.
Signed-off-by Thomas De Schampheleire<[email protected]>
At first I was afraid of the complexity added by this patch, but it's
actually not that bad. Therefore:
Regards,
Arnout
Signature · 6 lines
Arnout Vandecappelle arnout at mind be Senior Embedded Software Architect +32-16-286500 Essensium/Mind http://www.mind.be G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle GPG fingerprint: 7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
PATCH v3 1/1 deprecated handling: introduce BR2_DEPRECATED_SINCE_xxxx_xx
In reply to Thomas De SchampheleireQuoted 13 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Thomas" == Thomas De Schampheleire <[email protected]> writes:
In order to keep better track of when a feature got deprecated, and hence when it can be removed, a new set of symbols
BR2_DEPRECATED_SINCE_xxxx_xxis introduced. These symbols are automatically selected whenBR2_DEPRECATEDis selected, and thus are transparent to the user.
A deprecated feature will no longer depend onBR2_DEPRECATEDdirectly, but rather on the appropriateBR2_DEPRECATED_SINCE_xxxx_xx. If that symbol does not yet exist, it has to be created in Config.in.
When removing a deprecated feature, one should also check whether this was the last feature using theBR2_DEPRECATED_SINCE_xxxx_xxsymbol, in which case the latter can be removed from Config.in.
Quoted 5 lines
A followup patch will make sure the overview is added to the list of deprecated features in the manual, so that a buildroot core developer can easily determine which features to remove in a given development cycle.
Signed-off-by Thomas De Schampheleire <[email protected]>
Committed, thanks.
Signature · 1 line
Bye, Peter Korsgaard
PATCH v3 1/1 manual: clarify handling of deprecated features
In reply to Thomas De Schampheleire--- docs/manual/appendix.txt | 8 +++++++- 1 files changed, 7 insertions(+), 1 deletions(-)
docs/manual/appendix.txt +7 -1
@@ -29,6 +29,12 @@ Deprecated features ------------------- The following features are marked as _deprecated_ in Buildroot due to -their status either too old or unmaintained. +them being either too old or unmaintained. They will be removed at +some point, so stop using them. +Each deprecated symbol in kconfig depends on a symbol ++BR2_DEPRECATED_SINCE_xxxx_xx+, which provides an indication of when +the feature can be removed: features will not be removed within the +year following deprecation. For example, a symbol depending on ++BR2_DEPRECATED_SINCE_2013_05+ can be removed from 2014.05 onwards. include::deprecated-list.txt[]
PATCH v3 1/1 manual package list: add symbol name in table
In reply to Thomas De SchampheleireParticularly in the list of deprecated packages, it is not always clear what the entry name refers to. For example, for squashfs3 rootfs support, the string is simply "3.x". Likewise for the flex target binary: "Install tool in the target".
To clarify the entries, add the actual symbol name (BR2_xxx) in the table.
--- support/scripts/gen-manual-lists.py | 17 +++++++++-------- 1 files changed, 9 insertions(+), 8 deletions(-)
support/scripts/gen-manual-lists.py +9 -8
@@ -124,20 +124,20 @@ def format_asciidoc_table(root, get_labe :param sub_menu: Output the column with the sub-menu path """ - def _format_entry(item, parents, sub_menu): + def _format_entry(item, symbol, parents, sub_menu): """ Format an asciidoc table entry. """ if sub_menu: - return "| {0:<40} <| {1}\n".format(item, " -> ".join(parents)) + return "| {0:<40} <| {1} | {2}\n".format(item, symbol, " -> ".join(parents)) else: - return "| {0:<40}\n".format(item) + return "| {0:<40} | {1}\n".format(item, symbol) lines = [] for item in get_symbol_subset(root, filter_func): if not item.is_symbol() or not item.prompts: continue loc = get_symbol_parents(item, root, enable_choice=enable_choice) - lines.append(_format_entry(get_label_func(item), loc, sub_menu)) + lines.append(_format_entry(get_label_func(item), item.get_name(), loc, sub_menu)) if sorted: lines.sort(key=lambda x: x.lower()) if hasattr(root, "get_title"):
@@ -147,16 +147,17 @@ def format_asciidoc_table(root, get_labe loc_label = ["Location"] if not item_label: item_label = "Items" + symbol_label = "Symbol" table = ":halign: center\n\n" if sub_menu: width = "100%" - columns = "^1,4" + columns = "^1,1,4" else: - width = "30%" - columns = "^1" + width = "60%" + columns = "^1,1" table = "[width=\"{0}\",cols=\"{1}\",options=\"header\"]\n".format(width, columns) table += "|===================================================\n" - table += _format_entry(item_label, loc_label, sub_menu) + table += _format_entry(item_label, symbol_label, loc_label, sub_menu) table += "\n" + "".join(lines) + "\n" table += "|===================================================\n" return table
PATCH v3 1/1 manual package list: add symbol name in table
Quoted 8 lines · Thomas De Schampheleire
Particularly in the list of deprecated packages, it is not always clear what the entry name refers to. For example, for squashfs3 rootfs support, the string is simply "3.x". Likewise for the flex target binary: "Install tool in the target".
To clarify the entries, add the actual symbol name (
BR2_xxx) in the table.Signed-off-by Thomas De Schampheleire<[email protected]>
I checked the PDF output, and the column with the symbol names
overflows into the following column, rendering the whole thing unreadable.
Since it's only the two entries that you mention that are confusing,
and since the squashfs3 part will be removed in the next patch, I'd dispense of this completely and instead change the wording of the flex symbol.
Regards,
Arnout
[snip]
Signature · 6 lines
Arnout Vandecappelle arnout at mind be Senior Embedded Software Architect +32-16-286500 Essensium/Mind http://www.mind.be G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle GPG fingerprint: 7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
PATCH v3 1/1 squashfs3: remove deprecated package/rootfs
In reply to Thomas De Schampheleire---
Note: I did not add a legacy entry for BR2_TARGET_ROOTFS_SQUASHFS4 because it's simply removed, its role now played by the parent BR2_TARGET_ROOTFS_SQUASHFS. Therefore, I don't think we need legacy symbols in this case, right?
Config.in.legacy | 17 ++++++ fs/squashfs/Config.in | 16 ------ fs/squashfs/squashfs.mk | 12 ---- package/Config.in | 1 - package/squashfs3/Config.in | 12 ---- package/squashfs3/squashfs3-3.4-build-system-fix.patch | 37 -------------- package/squashfs3/squashfs3-3.4-get_nprocs.patch | 33 ------------ package/squashfs3/squashfs3.mk | 34 ------------ 8 files changed, 17 insertions(+), 145 deletions(-)
Config.in.legacy +17 -0
@@ -101,6 +101,23 @@ endif ############################################################################### comment "Legacy options removed in 2014.02" +config BR2_PACKAGE_SQUASHFS3 + bool "squashfs3 has been removed" + select BR2_LEGACY + select BR2_PACKAGE_SQUASHFS + help + The 'squashfs3' package has been removed since it has been + deprecated for more than four buildroot releases. Package + 'squashfs' (4) has been selected automatically as replacement. + +config BR2_TARGET_ROOTFS_SQUASHFS3 + bool "squashfs3 rootfs support has been removed" + select BR2_LEGACY + help + Together with the removal of the squashfs3 package, support + for squashfs3 root filesystems has been removed too. Squashfs + root filesystems will automatically use squashfs4 now. + config BR2_PACKAGE_NETKITBASE bool "netkitbase has been removed" select BR2_LEGACY
fs/squashfs/Config.in +0 -16
@@ -4,26 +4,10 @@ config BR2_TARGET_ROOTFS_SQUASHFS Build a squashfs root filesystem if BR2_TARGET_ROOTFS_SQUASHFS -choice - prompt "SquashFS version" - default BR2_TARGET_ROOTFS_SQUASHFS4 - help - Select the Squash filesystem version to use to generate the - root filesystem. - -config BR2_TARGET_ROOTFS_SQUASHFS4 - bool "4.x" - -config BR2_TARGET_ROOTFS_SQUASHFS3 - depends on BR2_DEPRECATED_SINCE_2010_05 - bool "3.x" - -endchoice choice prompt "Compression algorithm" default BR2_TARGET_ROOTFS_SQUASHFS4_GZIP - depends on BR2_TARGET_ROOTFS_SQUASHFS4 help Select the squashfs compression algorithm to use when generating the filesystem.
fs/squashfs/squashfs.mk +0 -12
@@ -4,7 +4,6 @@ # ################################################################################ -ifeq ($(BR2_TARGET_ROOTFS_SQUASHFS4),y) ROOTFS_SQUASHFS_DEPENDENCIES = host-squashfs ifeq ($(BR2_TARGET_ROOTFS_SQUASHFS4_LZO),y)
@@ -21,17 +20,6 @@ endif endif endif -else -ROOTFS_SQUASHFS_DEPENDENCIES = host-squashfs3 - -ifeq ($(BR2_ENDIAN),"BIG") -ROOTFS_SQUASHFS_ARGS=-be -else -ROOTFS_SQUASHFS_ARGS=-le -endif - -endif - define ROOTFS_SQUASHFS_CMD $(HOST_DIR)/usr/bin/mksquashfs $(TARGET_DIR) $@ -noappend \ $(ROOTFS_SQUASHFS_ARGS) && \
package/Config.in +0 -1
@@ -147,7 +147,6 @@ source "package/mtd/Config.in" source "package/nfs-utils/Config.in" source "package/ntfs-3g/Config.in" source "package/squashfs/Config.in" -source "package/squashfs3/Config.in" source "package/sshfs/Config.in" source "package/sunxi-tools/Config.in" source "package/unionfs/Config.in"
package/squashfs3/Config.in deleted +0 -12
@@ -1,12 +0,0 @@ -config BR2_PACKAGE_SQUASHFS3 - bool "squashfs3" - depends on BR2_DEPRECATED_SINCE_2010_05 - depends on BR2_LARGEFILE - help - Tools to generate SquashFS 3.x filesystems. - - http://squashfs.sourceforge.net/ - -comment "squashfs3 needs a toolchain w/ largefile" - depends on BR2_DEPRECATED_SINCE_2010_05 - depends on !BR2_LARGEFILE
package/squashfs3/squashfs3-3.4-build-system-fix.patch deleted +0 -37
@@ -1,37 +0,0 @@ -[PATCH]: squashfs-tools: Handle user supplied CFLAGS/LDFLAGS - -Properly handle make CFLAGS=.. LDFLAGS=.. - -Signed-off-by: Peter Korsgaard <[email protected]> ---- - squashfs-tools/Makefile | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -Index: squashfs3.4/squashfs-tools/Makefile -=================================================================== ---- squashfs3.4.orig/squashfs-tools/Makefile 2008-08-26 09:10:13.000000000 +0200 -+++ squashfs3.4/squashfs-tools/Makefile 2010-05-06 21:09:28.000000000 +0200 -@@ -2,12 +2,12 @@ - - INCLUDEDIR = . - --CFLAGS := -I$(INCLUDEDIR) -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_GNU_SOURCE -O2 -+override CFLAGS += -I$(INCLUDEDIR) -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_GNU_SOURCE -O2 - - all: mksquashfs unsquashfs - - mksquashfs: mksquashfs.o read_fs.o sort.o -- $(CC) mksquashfs.o read_fs.o sort.o -lz -lpthread -lm -o $@ -+ $(CC) $(LDFLAGS) mksquashfs.o read_fs.o sort.o -lz -lpthread -lm -o $@ - - mksquashfs.o: mksquashfs.c squashfs_fs.h mksquashfs.h global.h sort.h - -@@ -16,7 +16,7 @@ - sort.o: sort.c squashfs_fs.h global.h sort.h - - unsquashfs: unsquashfs.o -- $(CC) unsquashfs.o -lz -lpthread -lm -o $@ -+ $(CC) $(LDFLAGS) unsquashfs.o -lz -lpthread -lm -o $@ - - unsquashfs.o: unsquashfs.c squashfs_fs.h read_fs.h global.h -
package/squashfs3/squashfs3-3.4-get_nprocs.patch deleted +0 -33
@@ -1,33 +0,0 @@ -squashfs3: fix build with uClibc - -The squashfs3 package uses the old get_nprocs() GNU extension which does not -exist in uClibc. This has already been fixed in newer squashfs releases -(>=4.0). - -Signed-off-by: Markos Chandras <[email protected]> -Index: squashfs3-3.4/squashfs-tools/mksquashfs.c -=================================================================== ---- squashfs3-3.4.orig/squashfs-tools/mksquashfs.c -+++ squashfs3-3.4/squashfs-tools/mksquashfs.c -@@ -3178,7 +3178,7 @@ void initialise_threads() - processors = 1; - } - #else -- processors = get_nprocs(); -+ processors = sysconf(_SC_NPROCESSORS_CONF); - #endif - } - -Index: squashfs3-3.4/squashfs-tools/unsquashfs.c -=================================================================== ---- squashfs3-3.4.orig/squashfs-tools/unsquashfs.c -+++ squashfs3-3.4/squashfs-tools/unsquashfs.c -@@ -2428,7 +2428,7 @@ void initialise_threads(int fragment_buf - processors = 1; - } - #else -- processors = get_nprocs(); -+ processors = sysconf(_SC_NPROCESSORS_CONF); - #endif - } -
package/squashfs3/squashfs3.mk deleted +0 -34
@@ -1,34 +0,0 @@ -################################################################################ -# -# squashfs3 -# -################################################################################ - -SQUASHFS3_VERSION = 3.4 -SQUASHFS3_SOURCE = squashfs$(SQUASHFS3_VERSION).tar.gz -SQUASHFS3_SITE = http://downloads.sourceforge.net/project/squashfs/squashfs/$(SQUASHFS3_VERSION) - -SQUASHFS3_DEPENDENCIES = zlib - -define SQUASHFS3_BUILD_CMDS - $(TARGET_MAKE_ENV) $(MAKE) \ - CC="$(TARGET_CC)" \ - CFLAGS="$(TARGET_CFLAGS)" \ - LDFLAGS="$(TARGET_LDFLAGS)" \ - -C $(@D)/squashfs-tools/ -endef - -define SQUASHFS3_INSTALL_TARGET_CMDS - $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/squashfs-tools/ INSTALL_DIR=$(TARGET_DIR)/usr/bin install -endef - -define HOST_SQUASHFS3_BUILD_CMDS - $(HOST_MAKE_ENV) $(MAKE) CFLAGS="$(HOST_CFLAGS)" LDFLAGS="$(HOST_LDFLAGS)" -C $(@D)/squashfs-tools/ -endef - -define HOST_SQUASHFS3_INSTALL_CMDS - $(HOST_MAKE_ENV) $(MAKE) -C $(@D)/squashfs-tools/ INSTALL_DIR=$(HOST_DIR)/usr/bin install -endef - -$(eval $(generic-package)) -$(eval $(host-generic-package))
PATCH v3 1/1 squashfs3: remove deprecated package/rootfs
Quoted 1 line · Thomas De Schampheleire
Signed-off-by Thomas De Schampheleire<[email protected]>
Quoted 6 lines
---
Note: I did not add a legacy entry forBR2_TARGET_ROOTFS_SQUASHFS4because it's simply removed, its role now played by the parentBR2_TARGET_ROOTFS_SQUASHFS. Therefore, I don't think we need legacy symbols in this case, right?
This should have been part of the commit message...
But I agree with the principle.
Regards,
Arnout
Signature · 6 lines
Arnout Vandecappelle arnout at mind be Senior Embedded Software Architect +32-16-286500 Essensium/Mind http://www.mind.be G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle GPG fingerprint: 7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
PATCH v3 1/1 squashfs3: remove deprecated package/rootfs
In reply to Thomas De SchampheleireQuoted 8 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Thomas" == Thomas De Schampheleire <[email protected]> writes:
Signed-off-by Thomas De Schampheleire <[email protected]>---
Note: I did not add a legacy entry forBR2_TARGET_ROOTFS_SQUASHFS4because it's simply removed, its role now played by the parentBR2_TARGET_ROOTFS_SQUASHFS. Therefore, I don't think we need legacy symbols in this case, right?
Committed with the now unused BR2_DEPRECATED_SINCE_2010_05 symbol removed, thanks.
Signature · 1 line
Bye, Peter Korsgaard
PATCH v3 1/1 ttcp: remove deprecated package
In reply to Thomas De Schampheleire--- Config.in.legacy | 7 ++++ package/Config.in | 1 - package/ttcp/Config.in | 7 ---- package/ttcp/ttcp-0001-replace-deprecated-bcopy.patch | 15 --------- package/ttcp/ttcp.mk | 25 --------------- 5 files changed, 7 insertions(+), 48 deletions(-)
Config.in.legacy +7 -0
@@ -101,6 +101,13 @@ endif ############################################################################### comment "Legacy options removed in 2014.02" +config BR2_PACKAGE_TTCP + bool "ttcp has been removed" + select BR2_LEGACY + help + The 'ttcp' package has been removed since it has been + deprecated for more than four buildroot releases. + config BR2_PACKAGE_SQUASHFS3 bool "squashfs3 has been removed" select BR2_LEGACY
package/Config.in +0 -1
@@ -915,7 +915,6 @@ source "package/thttpd/Config.in" source "package/tinyhttpd/Config.in" source "package/tn5250/Config.in" source "package/transmission/Config.in" -source "package/ttcp/Config.in" source "package/tvheadend/Config.in" source "package/udpcast/Config.in" source "package/ulogd/Config.in"
package/ttcp/Config.in deleted +0 -7
@@ -1,7 +0,0 @@ -config BR2_PACKAGE_TTCP - bool "ttcp" - depends on BR2_DEPRECATED_SINCE_2012_05 - help - Benchmarking tool for determining TCP and UDP performance. - - ftp://ftp.sgi.com/sgi/src/ttcp/README
package/ttcp/ttcp-0001-replace-deprecated-bcopy.patch deleted +0 -15
@@ -1,15 +0,0 @@ -Replace deprecated bcopy call by using memmove instead. - -Index: b/ttcp.c -=================================================================== ---- a/ttcp.c -+++ b/ttcp.c -@@ -241,7 +241,7 @@ - if ((addr=gethostbyname(host)) == NULL) - err("bad hostname"); - sinhim.sin_family = addr->h_addrtype; -- bcopy(addr->h_addr,(char*)&addr_tmp, addr->h_length); -+ memmove((char*)&addr_tmp, addr->h_addr, addr->h_length); - #if defined(cray) - sinhim.sin_addr = addr_tmp; - #else
package/ttcp/ttcp.mk deleted +0 -25
@@ -1,25 +0,0 @@ -################################################################################ -# -# ttcp -# -################################################################################ - -TTCP_VERSION = 1.12 -TTCP_SITE = ftp://ftp.sgi.com/sgi/src/ttcp/ -TTCP_SOURCE = ttcp.c -TTCP_LICENSE = public domain - -define TTCP_EXTRACT_CMDS - cp -f -t $(@D) $(DL_DIR)/$(TTCP_SOURCE) -endef - -define TTCP_BUILD_CMDS - $(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) \ - -o $(@D)/ttcp $(@D)/$(TTCP_SOURCE) -endef - -define TTCP_INSTALL_TARGET_CMDS - $(INSTALL) -D -m 0755 $(@D)/ttcp $(TARGET_DIR)/usr/bin/ttcp -endef - -$(eval $(generic-package))