diff mbox series

[for-next] configs: select uclibc when needed

Message ID 20220821153104.239709-2-romain.naour@gmail.com
State Changes Requested
Headers show
Series [for-next] configs: select uclibc when needed | expand

Commit Message

Romain Naour Aug. 21, 2022, 3:31 p.m. UTC
Following the switch to Glibc as the default libc in Buildroot [1],
all defconfigs expecting uClibc with wchar (or any other uClibc
specific option) must now select BR2_TOOLCHAIN_BUILDROOT_UCLIBC too.

Some defconfigs provided by Buildroot select BR2_TOOLCHAIN_BUILDROOT_WCHAR
without selecting BR2_TOOLCHAIN_BUILDROOT_UCLIBC.

Fixes:
https://gitlab.com/kubu93/buildroot/-/jobs/2911738579

[1] 4057e36ca9665edd5248512e4edba2c243b8f4be

Signed-off-by: Romain Naour <romain.naour@gmail.com>
---

This also break all defconfig fragments from
support/config-fragments/autobuild, but they are now deprecated
following utils/genrandconfig --no-toolchains-csv option:
aeee90ec109b83c42779e6a2617f7d57e25a2b65
---
 configs/aarch64_efi_defconfig                          | 1 +
 configs/at91sam9x5ek_dev_defconfig                     | 1 +
 configs/at91sam9x5ek_mmc_dev_defconfig                 | 1 +
 configs/atmel_sama5d27_som1_ek_mmc_dev_defconfig       | 1 +
 configs/atmel_sama5d2_xplained_mmc_dev_defconfig       | 1 +
 configs/atmel_sama5d3_xplained_dev_defconfig           | 1 +
 configs/atmel_sama5d3_xplained_mmc_dev_defconfig       | 1 +
 configs/atmel_sama5d4_xplained_dev_defconfig           | 1 +
 configs/atmel_sama5d4_xplained_mmc_dev_defconfig       | 1 +
 configs/bananapro_defconfig                            | 1 +
 configs/engicam_imx6qdl_icore_qt5_defconfig            | 1 +
 configs/galileo_defconfig                              | 1 +
 configs/imx6-sabresd_qt5_defconfig                     | 1 +
 configs/kontron_smarc_sal28_defconfig                  | 1 +
 configs/lego_ev3_defconfig                             | 1 +
 configs/mender_x86_64_efi_defconfig                    | 1 +
 configs/microchip_sam9x60ek_mmc_dev_defconfig          | 1 +
 configs/microchip_sama5d27_wlsom1_ek_mmc_dev_defconfig | 1 +
 configs/microchip_sama5d2_icp_mmc_dev_defconfig        | 1 +
 configs/microchip_sama7g5ek_mmc_dev_defconfig          | 1 +
 configs/minnowboard_max_defconfig                      | 1 +
 configs/pc_x86_64_bios_defconfig                       | 1 +
 configs/pc_x86_64_efi_defconfig                        | 1 +
 configs/qemu_aarch64_sbsa_defconfig                    | 1 +
 24 files changed, 24 insertions(+)

Comments

Thomas Petazzoni Aug. 21, 2022, 9:03 p.m. UTC | #1
Hello,

On Sun, 21 Aug 2022 17:31:04 +0200
Romain Naour <romain.naour@gmail.com> wrote:

> Following the switch to Glibc as the default libc in Buildroot [1],
> all defconfigs expecting uClibc with wchar (or any other uClibc
> specific option) must now select BR2_TOOLCHAIN_BUILDROOT_UCLIBC too.
> 
> Some defconfigs provided by Buildroot select BR2_TOOLCHAIN_BUILDROOT_WCHAR
> without selecting BR2_TOOLCHAIN_BUILDROOT_UCLIBC.

I think we should rather switch those defconfigs to use the new
default, i.e glibc.

Best regards,

Thomas
Romain Naour Aug. 21, 2022, 9:56 p.m. UTC | #2
Hello Thomas,

Le 21/08/2022 à 23:03, Thomas Petazzoni a écrit :
> Hello,
> 
> On Sun, 21 Aug 2022 17:31:04 +0200
> Romain Naour <romain.naour@gmail.com> wrote:
> 
>> Following the switch to Glibc as the default libc in Buildroot [1],
>> all defconfigs expecting uClibc with wchar (or any other uClibc
>> specific option) must now select BR2_TOOLCHAIN_BUILDROOT_UCLIBC too.
>>
>> Some defconfigs provided by Buildroot select BR2_TOOLCHAIN_BUILDROOT_WCHAR
>> without selecting BR2_TOOLCHAIN_BUILDROOT_UCLIBC.
> 
> I think we should rather switch those defconfigs to use the new
> default, i.e glibc.

I'm agree on the principle to switch them to glibc but boards defconfig where
only runtime tested with uclibc. Also we may need to increase the file system
image (BR2_TARGET_ROOTFS_EXT2_SIZE) when needed.That's why I choose to keep
uclibc in this patch.

But all other defconfig switched already to glibc... maybe
BR2_TARGET_ROOTFS_EXT2_SIZE=60M is now too small for some case?

Best regards,
Romain


> 
> Best regards,
> 
> Thomas
Thomas Petazzoni Aug. 23, 2022, 8:01 p.m. UTC | #3
On Sun, 21 Aug 2022 23:56:19 +0200
Romain Naour <romain.naour@gmail.com> wrote:

> I'm agree on the principle to switch them to glibc but boards defconfig where
> only runtime tested with uclibc.

True, but I don't have much doubt that glibc will work fine if uclibc
was working fine. We're anyway already updating the versions of
gcc/binutils/uclibc for all defconfigs without necessarily checking
again on hardware.

> Also we may need to increase the file system
> image (BR2_TARGET_ROOTFS_EXT2_SIZE) when needed.That's why I choose to keep
> uclibc in this patch.

The size issue is not an issue: we will get a hard build failure if we
reach the maximum size, so it's easy to detect and fix.

So I think I would still prefer the defconfigs to not enforce a C
library, and use the default of Buildroot, which is now glibc.

Thanks!

Thomas
diff mbox series

Patch

diff --git a/configs/aarch64_efi_defconfig b/configs/aarch64_efi_defconfig
index 1bd06c51f3..a0664db87e 100644
--- a/configs/aarch64_efi_defconfig
+++ b/configs/aarch64_efi_defconfig
@@ -2,6 +2,7 @@ 
 BR2_aarch64=y
 
 # Toolchain, required for eudev and grub
+BR2_TOOLCHAIN_BUILDROOT_UCLIBC=y
 BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
 
 # System
diff --git a/configs/at91sam9x5ek_dev_defconfig b/configs/at91sam9x5ek_dev_defconfig
index 8714463d89..2a66d505f8 100644
--- a/configs/at91sam9x5ek_dev_defconfig
+++ b/configs/at91sam9x5ek_dev_defconfig
@@ -3,6 +3,7 @@  BR2_arm=y
 BR2_arm926t=y
 
 # Toolchain
+BR2_TOOLCHAIN_BUILDROOT_UCLIBC=y
 BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_19=y
 # Needed for some packages
 BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
diff --git a/configs/at91sam9x5ek_mmc_dev_defconfig b/configs/at91sam9x5ek_mmc_dev_defconfig
index 9481594716..6641b43910 100644
--- a/configs/at91sam9x5ek_mmc_dev_defconfig
+++ b/configs/at91sam9x5ek_mmc_dev_defconfig
@@ -3,6 +3,7 @@  BR2_arm=y
 BR2_arm926t=y
 
 # Toolchain
+BR2_TOOLCHAIN_BUILDROOT_UCLIBC=y
 BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_19=y
 # Needed for some packages
 BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
diff --git a/configs/atmel_sama5d27_som1_ek_mmc_dev_defconfig b/configs/atmel_sama5d27_som1_ek_mmc_dev_defconfig
index 38618a5732..83cf0f6598 100644
--- a/configs/atmel_sama5d27_som1_ek_mmc_dev_defconfig
+++ b/configs/atmel_sama5d27_som1_ek_mmc_dev_defconfig
@@ -4,6 +4,7 @@  BR2_ARM_ENABLE_NEON=y
 BR2_ARM_ENABLE_VFP=y
 BR2_ARM_INSTRUCTIONS_THUMB2=y
 BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
+BR2_TOOLCHAIN_BUILDROOT_UCLIBC=y
 BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
 BR2_PTHREAD_DEBUG=y
 BR2_TOOLCHAIN_BUILDROOT_CXX=y
diff --git a/configs/atmel_sama5d2_xplained_mmc_dev_defconfig b/configs/atmel_sama5d2_xplained_mmc_dev_defconfig
index 1654408aa5..31f974df7d 100644
--- a/configs/atmel_sama5d2_xplained_mmc_dev_defconfig
+++ b/configs/atmel_sama5d2_xplained_mmc_dev_defconfig
@@ -6,6 +6,7 @@  BR2_ARM_ENABLE_VFP=y
 BR2_ARM_INSTRUCTIONS_THUMB2=y
 
 # Toolchain
+BR2_TOOLCHAIN_BUILDROOT_UCLIBC=y
 BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
 # Needed for some packages
 BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
diff --git a/configs/atmel_sama5d3_xplained_dev_defconfig b/configs/atmel_sama5d3_xplained_dev_defconfig
index 64455cb2e0..aec1fa366c 100644
--- a/configs/atmel_sama5d3_xplained_dev_defconfig
+++ b/configs/atmel_sama5d3_xplained_dev_defconfig
@@ -5,6 +5,7 @@  BR2_ARM_ENABLE_VFP=y
 BR2_ARM_INSTRUCTIONS_THUMB2=y
 
 # Toolchain
+BR2_TOOLCHAIN_BUILDROOT_UCLIBC=y
 BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
 # Needed for some packages
 BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
diff --git a/configs/atmel_sama5d3_xplained_mmc_dev_defconfig b/configs/atmel_sama5d3_xplained_mmc_dev_defconfig
index 8f5724d631..21adf0cf6a 100644
--- a/configs/atmel_sama5d3_xplained_mmc_dev_defconfig
+++ b/configs/atmel_sama5d3_xplained_mmc_dev_defconfig
@@ -5,6 +5,7 @@  BR2_ARM_ENABLE_VFP=y
 BR2_ARM_INSTRUCTIONS_THUMB2=y
 
 # Toolchain
+BR2_TOOLCHAIN_BUILDROOT_UCLIBC=y
 BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
 # Needed for some packages
 BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
diff --git a/configs/atmel_sama5d4_xplained_dev_defconfig b/configs/atmel_sama5d4_xplained_dev_defconfig
index fab91cf0b3..abebc4c293 100644
--- a/configs/atmel_sama5d4_xplained_dev_defconfig
+++ b/configs/atmel_sama5d4_xplained_dev_defconfig
@@ -6,6 +6,7 @@  BR2_ARM_ENABLE_VFP=y
 BR2_ARM_INSTRUCTIONS_THUMB2=y
 
 # Toolchain
+BR2_TOOLCHAIN_BUILDROOT_UCLIBC=y
 BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
 # Needed for some packages
 BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
diff --git a/configs/atmel_sama5d4_xplained_mmc_dev_defconfig b/configs/atmel_sama5d4_xplained_mmc_dev_defconfig
index f9074e9862..6e2115436d 100644
--- a/configs/atmel_sama5d4_xplained_mmc_dev_defconfig
+++ b/configs/atmel_sama5d4_xplained_mmc_dev_defconfig
@@ -6,6 +6,7 @@  BR2_ARM_ENABLE_VFP=y
 BR2_ARM_INSTRUCTIONS_THUMB2=y
 
 # Toolchain
+BR2_TOOLCHAIN_BUILDROOT_UCLIBC=y
 BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
 # Needed for some packages
 BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
diff --git a/configs/bananapro_defconfig b/configs/bananapro_defconfig
index e18c83d593..d2a7550e01 100644
--- a/configs/bananapro_defconfig
+++ b/configs/bananapro_defconfig
@@ -9,6 +9,7 @@  BR2_ARM_FPU_NEON_VFPV4=y
 BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_4=y
 
 # Toolchain
+BR2_TOOLCHAIN_BUILDROOT_UCLIBC=y
 BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
 
 # System configuration
diff --git a/configs/engicam_imx6qdl_icore_qt5_defconfig b/configs/engicam_imx6qdl_icore_qt5_defconfig
index 2d213e4ab9..4cfbf92e54 100644
--- a/configs/engicam_imx6qdl_icore_qt5_defconfig
+++ b/configs/engicam_imx6qdl_icore_qt5_defconfig
@@ -47,6 +47,7 @@  BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/engicam/icorem6/genimage.cfg"
 BR2_ROOTFS_OVERLAY="board/engicam/icorem6/rootfs_overlay"
 
 # qt5 dependencies
+BR2_TOOLCHAIN_BUILDROOT_UCLIBC=y
 BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
 BR2_TOOLCHAIN_BUILDROOT_CXX=y
 
diff --git a/configs/galileo_defconfig b/configs/galileo_defconfig
index 312162b7a8..123ff306a7 100644
--- a/configs/galileo_defconfig
+++ b/configs/galileo_defconfig
@@ -1,5 +1,6 @@ 
 BR2_x86_x1000=y
 BR2_GLOBAL_PATCH_DIR="board/intel/galileo/patches"
+BR2_TOOLCHAIN_BUILDROOT_UCLIBC=y
 # Needed for TARGET_GRUB2
 BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
 # Linux headers same as kernel, a 3.14 series
diff --git a/configs/imx6-sabresd_qt5_defconfig b/configs/imx6-sabresd_qt5_defconfig
index d962ac6897..5111057078 100644
--- a/configs/imx6-sabresd_qt5_defconfig
+++ b/configs/imx6-sabresd_qt5_defconfig
@@ -7,6 +7,7 @@  BR2_ARM_FPU_VFPV3=y
 # Linux headers same as kernel, a 5.15 series
 BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y
 
+BR2_TOOLCHAIN_BUILDROOT_UCLIBC=y
 # Additional features needed for packages
 BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
 BR2_TOOLCHAIN_BUILDROOT_CXX=y
diff --git a/configs/kontron_smarc_sal28_defconfig b/configs/kontron_smarc_sal28_defconfig
index 37e415cf32..34071cd5ae 100644
--- a/configs/kontron_smarc_sal28_defconfig
+++ b/configs/kontron_smarc_sal28_defconfig
@@ -1,6 +1,7 @@ 
 BR2_aarch64=y
 BR2_cortex_a72=y
 BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_16=y
+BR2_TOOLCHAIN_BUILDROOT_UCLIBC=y
 BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
 BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y
 BR2_ROOTFS_OVERLAY="board/kontron/smarc-sal28/rootfs_overlay"
diff --git a/configs/lego_ev3_defconfig b/configs/lego_ev3_defconfig
index 555a63e36c..b51b976a87 100644
--- a/configs/lego_ev3_defconfig
+++ b/configs/lego_ev3_defconfig
@@ -3,6 +3,7 @@  BR2_arm=y
 BR2_arm926t=y
 
 # Toolchain
+BR2_TOOLCHAIN_BUILDROOT_UCLIBC=y
 BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
 
 # system
diff --git a/configs/mender_x86_64_efi_defconfig b/configs/mender_x86_64_efi_defconfig
index 4ab4c7b03d..c37d16da4c 100644
--- a/configs/mender_x86_64_efi_defconfig
+++ b/configs/mender_x86_64_efi_defconfig
@@ -2,6 +2,7 @@ 
 BR2_x86_64=y
 
 # Toolchain
+BR2_TOOLCHAIN_BUILDROOT_UCLIBC=y
 BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_17=y
 # Required for eudev (to autoload drivers)
 BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
diff --git a/configs/microchip_sam9x60ek_mmc_dev_defconfig b/configs/microchip_sam9x60ek_mmc_dev_defconfig
index 2b4e234297..431fbe017a 100644
--- a/configs/microchip_sam9x60ek_mmc_dev_defconfig
+++ b/configs/microchip_sam9x60ek_mmc_dev_defconfig
@@ -1,5 +1,6 @@ 
 BR2_arm=y
 BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
+BR2_TOOLCHAIN_BUILDROOT_UCLIBC=y
 BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
 BR2_PTHREAD_DEBUG=y
 BR2_TOOLCHAIN_BUILDROOT_CXX=y
diff --git a/configs/microchip_sama5d27_wlsom1_ek_mmc_dev_defconfig b/configs/microchip_sama5d27_wlsom1_ek_mmc_dev_defconfig
index f9aa6cdc05..4a6db15fae 100644
--- a/configs/microchip_sama5d27_wlsom1_ek_mmc_dev_defconfig
+++ b/configs/microchip_sama5d27_wlsom1_ek_mmc_dev_defconfig
@@ -4,6 +4,7 @@  BR2_ARM_ENABLE_NEON=y
 BR2_ARM_ENABLE_VFP=y
 BR2_ARM_INSTRUCTIONS_THUMB2=y
 BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
+BR2_TOOLCHAIN_BUILDROOT_UCLIBC=y
 BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
 BR2_PTHREAD_DEBUG=y
 BR2_TOOLCHAIN_BUILDROOT_CXX=y
diff --git a/configs/microchip_sama5d2_icp_mmc_dev_defconfig b/configs/microchip_sama5d2_icp_mmc_dev_defconfig
index b1b22c1312..91d881948a 100644
--- a/configs/microchip_sama5d2_icp_mmc_dev_defconfig
+++ b/configs/microchip_sama5d2_icp_mmc_dev_defconfig
@@ -4,6 +4,7 @@  BR2_ARM_ENABLE_NEON=y
 BR2_ARM_ENABLE_VFP=y
 BR2_ARM_INSTRUCTIONS_THUMB2=y
 BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
+BR2_TOOLCHAIN_BUILDROOT_UCLIBC=y
 BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
 BR2_PTHREAD_DEBUG=y
 BR2_TOOLCHAIN_BUILDROOT_CXX=y
diff --git a/configs/microchip_sama7g5ek_mmc_dev_defconfig b/configs/microchip_sama7g5ek_mmc_dev_defconfig
index d68846e553..a324e443a0 100644
--- a/configs/microchip_sama7g5ek_mmc_dev_defconfig
+++ b/configs/microchip_sama7g5ek_mmc_dev_defconfig
@@ -2,6 +2,7 @@  BR2_arm=y
 BR2_cortex_a7=y
 BR2_ARM_FPU_NEON_VFPV4=y
 BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y
+BR2_TOOLCHAIN_BUILDROOT_UCLIBC=y
 BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
 BR2_PTHREAD_DEBUG=y
 BR2_TOOLCHAIN_BUILDROOT_CXX=y
diff --git a/configs/minnowboard_max_defconfig b/configs/minnowboard_max_defconfig
index 1270f23953..fb9789b76c 100644
--- a/configs/minnowboard_max_defconfig
+++ b/configs/minnowboard_max_defconfig
@@ -10,6 +10,7 @@  BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/minnowboard/genimage.cfg"
 
 # Linux headers same as kernel, a 5.10 series
 BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
+BR2_TOOLCHAIN_BUILDROOT_UCLIBC=y
 # Needed for grub2
 BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
 
diff --git a/configs/pc_x86_64_bios_defconfig b/configs/pc_x86_64_bios_defconfig
index df5988d75e..75e98847aa 100644
--- a/configs/pc_x86_64_bios_defconfig
+++ b/configs/pc_x86_64_bios_defconfig
@@ -2,6 +2,7 @@ 
 BR2_x86_64=y
 
 # Toolchain, required for eudev (to autoload drivers)
+BR2_TOOLCHAIN_BUILDROOT_UCLIBC=y
 BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
 
 # System
diff --git a/configs/pc_x86_64_efi_defconfig b/configs/pc_x86_64_efi_defconfig
index 18d2c477d5..cde4f05cfe 100644
--- a/configs/pc_x86_64_efi_defconfig
+++ b/configs/pc_x86_64_efi_defconfig
@@ -2,6 +2,7 @@ 
 BR2_x86_64=y
 
 # Toolchain, required for eudev (to autoload drivers)
+BR2_TOOLCHAIN_BUILDROOT_UCLIBC=y
 BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
 
 # System
diff --git a/configs/qemu_aarch64_sbsa_defconfig b/configs/qemu_aarch64_sbsa_defconfig
index 0d4e8b2c29..9a62f8b49a 100644
--- a/configs/qemu_aarch64_sbsa_defconfig
+++ b/configs/qemu_aarch64_sbsa_defconfig
@@ -3,6 +3,7 @@  BR2_aarch64=y
 BR2_cortex_a57=y
 
 # Toolchain
+BR2_TOOLCHAIN_BUILDROOT_UCLIBC=y
 BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
 
 # System