lightdm-1.4.0 fails to build on uclibc due to LC_IDENTIFICATION undeclared
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Light Display Manager |
Triaged
|
Medium
|
Unassigned |
Bug Description
When trying to build lightdm against uClibc on Alpine Linux I get the following error:
CC liblightdm_
CC liblightdm_
language.c: In function 'lightdm_
language.c:232:24: error: 'LC_IDENTIFICATION' undeclared (first use in this function)
language.c:232:24: note: each undeclared identifier is reported only once for each function it appears in
language.c:235:47: error: '_NL_IDENTIFICA
language.c: In function 'lightdm_
language.c:275:24: error: 'LC_IDENTIFICATION' undeclared (first use in this function)
language.c:278:46: error: '_NL_IDENTIFICA
make[2]: *** [liblightdm_
make[2]: Leaving directory `/home/
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/
make: *** [all] Error 2
adding --disable-nls does not help.
Changed in lightdm: | |
status: | New → Triaged |
importance: | Undecided → Medium |
It's not clear to me that the use of LC_IDENTIFICATION in language.c is correct.
The ISO/IEC TR 14652:2002(E) Technical Report, section 4.2, seems to be describing meta data associated with the FDCC-set. www.open- std.org/ jtc1/SC22/ WG20/docs/ n972-14652ft. pdf
http://
The glibc docs (https:/ /sourceware. org/glibc/ wiki/Locales) don't shed much light on the use of LC_IDENTIFICATION -
"LC_IDENTIFICATION - this is not a user-visible category but contains information about the locale itself and is rarely useful for users or developers (but is listed here for completeness sake)."
and, if you are defining a new locale file:
"This category is pretty much self-explaining. You should be able to fill this category by using other locales as examples. "
Maybe LANG should be used in the setlocale() invocations in language.c? But to be honest, it's not completely clear to me what exactly the code around setlocale( LC_IDENTIFICATI ON, ...) in the two spots in language.c is trying to accomplish.
Maybe if someone could explain what that code is doing, we could come up with a solution for this bug.
FYI, BSD systems don't have LC_IDENTIFICATION either. So they fail to compile as well.