diff mbox series

[1/1] package/parted: disable on uclibc

Message ID 20200118163929.663035-1-fontaine.fabrice@gmail.com
State Superseded
Headers show
Series [1/1] package/parted: disable on uclibc | expand

Commit Message

Fabrice Fontaine Jan. 18, 2020, 4:39 p.m. UTC
Like postgreSQL (and imagemagick), parted does not build against uClibc
with locales enabled, due to an uClibc bug, see
http://lists.uclibc.org/pipermail/uclibc/2014-April/048326.html:

In file included from atari.c:42:
atari.c: In function 'atr_part_correct':
atari.c:221:9: error: dereferencing pointer to incomplete type 'struct __uclibc_locale_struct'
  return isalnum_l(part->id[0], atr_c_locale)
         ^~~~~~~~~

So disable parted on uclibc

Fixes:
 - http://autobuild.buildroot.org/results/992518d340a9f32a0721d6e66936850c4c3ef2e4

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
 package/parted/Config.in | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

Comments

Giulio Benetti Feb. 13, 2020, 9:19 p.m. UTC | #1
Hi Fabrice,

On 1/18/20 5:39 PM, Fabrice Fontaine wrote:
> Like postgreSQL (and imagemagick), parted does not build against uClibc
> with locales enabled, due to an uClibc bug, see
> http://lists.uclibc.org/pipermail/uclibc/2014-April/048326.html:
> 
> In file included from atari.c:42:
> atari.c: In function 'atr_part_correct':
> atari.c:221:9: error: dereferencing pointer to incomplete type 'struct __uclibc_locale_struct'
>    return isalnum_l(part->id[0], atr_c_locale)
>           ^~~~~~~~~
> 
> So disable parted on uclibc
> 
> Fixes:
>   - http://autobuild.buildroot.org/results/992518d340a9f32a0721d6e66936850c4c3ef2e4
> 
> Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>

Reviewed-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Peter Korsgaard Feb. 13, 2020, 9:51 p.m. UTC | #2
>>>>> "Fabrice" == Fabrice Fontaine <fontaine.fabrice@gmail.com> writes:

 > Like postgreSQL (and imagemagick), parted does not build against uClibc
 > with locales enabled, due to an uClibc bug, see
 > http://lists.uclibc.org/pipermail/uclibc/2014-April/048326.html:

 > In file included from atari.c:42:
 > atari.c: In function 'atr_part_correct':
 > atari.c:221:9: error: dereferencing pointer to incomplete type 'struct __uclibc_locale_struct'
 >   return isalnum_l(part->id[0], atr_c_locale)
 >          ^~~~~~~~~

 > So disable parted on uclibc

 > Fixes:
 >  - http://autobuild.buildroot.org/results/992518d340a9f32a0721d6e66936850c4c3ef2e4

 > Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>

What about the reverse dependencies? E.G. udisks and python-pyparted?
Giulio Benetti Feb. 13, 2020, 10:26 p.m. UTC | #3
Hi Peter,

On 2/13/20 10:51 PM, Peter Korsgaard wrote:
>>>>>> "Fabrice" == Fabrice Fontaine <fontaine.fabrice@gmail.com> writes:
> 
>   > Like postgreSQL (and imagemagick), parted does not build against uClibc
>   > with locales enabled, due to an uClibc bug, see
>   > http://lists.uclibc.org/pipermail/uclibc/2014-April/048326.html:
> 
>   > In file included from atari.c:42:
>   > atari.c: In function 'atr_part_correct':
>   > atari.c:221:9: error: dereferencing pointer to incomplete type 'struct __uclibc_locale_struct'
>   >   return isalnum_l(part->id[0], atr_c_locale)
>   >          ^~~~~~~~~
> 
>   > So disable parted on uclibc
> 
>   > Fixes:
>   >  - http://autobuild.buildroot.org/results/992518d340a9f32a0721d6e66936850c4c3ef2e4
> 
>   > Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
> 
> What about the reverse dependencies? E.G. udisks and python-pyparted?

Since I'm bumping udisks :-), udisks already depends on 
!BR2_TOOLCHAIN_USES_UCLIBC, but python-pyparted does not, so it deserves 
a build with the same autobuilder failure defconfig, I let you know.
Giulio Benetti Feb. 13, 2020, 10:30 p.m. UTC | #4
On 2/13/20 11:26 PM, Giulio Benetti wrote:
> Hi Peter,
> 
> On 2/13/20 10:51 PM, Peter Korsgaard wrote:
>>>>>>> "Fabrice" == Fabrice Fontaine <fontaine.fabrice@gmail.com> writes:
>>
>>    > Like postgreSQL (and imagemagick), parted does not build against uClibc
>>    > with locales enabled, due to an uClibc bug, see
>>    > http://lists.uclibc.org/pipermail/uclibc/2014-April/048326.html:
>>
>>    > In file included from atari.c:42:
>>    > atari.c: In function 'atr_part_correct':
>>    > atari.c:221:9: error: dereferencing pointer to incomplete type 'struct __uclibc_locale_struct'
>>    >   return isalnum_l(part->id[0], atr_c_locale)
>>    >          ^~~~~~~~~
>>
>>    > So disable parted on uclibc
>>
>>    > Fixes:
>>    >  - http://autobuild.buildroot.org/results/992518d340a9f32a0721d6e66936850c4c3ef2e4
>>
>>    > Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
>>
>> What about the reverse dependencies? E.G. udisks and python-pyparted?
> 
> Since I'm bumping udisks :-), udisks already depends on
> !BR2_TOOLCHAIN_USES_UCLIBC, but python-pyparted does not, so it deserves
> a build with the same autobuilder failure defconfig, I let you know.

Right, "!BR2_TOOLCHAIN_USES_UCLIBC" must be added to 
python-pyparted/Config.in. And then it must not be possible to build it 
with uclibc, so this patch must be adjusted.

Sorry for the noise
Best regards
diff mbox series

Patch

diff --git a/package/parted/Config.in b/package/parted/Config.in
index f48b365a2d..a35b30662f 100644
--- a/package/parted/Config.in
+++ b/package/parted/Config.in
@@ -2,6 +2,7 @@  config BR2_PACKAGE_PARTED
 	bool "parted"
 	depends on BR2_ENABLE_LOCALE
 	depends on BR2_USE_WCHAR
+	depends on !BR2_TOOLCHAIN_USES_UCLIBC
 	select BR2_PACKAGE_UTIL_LINUX
 	select BR2_PACKAGE_UTIL_LINUX_LIBUUID
 	help
@@ -9,5 +10,6 @@  config BR2_PACKAGE_PARTED
 
 	  http://www.gnu.org/software/parted/
 
-comment "parted needs a toolchain w/ locale, wchar"
-	depends on !BR2_ENABLE_LOCALE || !BR2_USE_WCHAR
+comment "parted needs a glibc or musl toolchain w/ locale, wchar"
+	depends on BR2_TOOLCHAIN_USES_UCLIBC || \
+		!BR2_ENABLE_LOCALE || !BR2_USE_WCHAR