Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 766866

Summary: x11-misc/lightdm-1.30.0-r2 - language.c:217:24: error: 'LC_IDENTIFICATION' undeclared (first use in this function) (on musl)
Product: Gentoo Linux Reporter: ernsteiswuerfel <erhard_f>
Component: Current packagesAssignee: Gentoo musl team <musl>
Status: UNCONFIRMED ---    
Severity: normal CC: gentoo, polynomial-c
Priority: Normal Keywords: PATCH
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 430702    
Attachments: emerge --info
build.log
musl-language.patch
musl-updwtmpx.patch

Description ernsteiswuerfel archtester 2021-01-24 12:34:23 UTC
Created attachment 684432 [details]
emerge --info

[...]
libtool: compile:  x86_64-gentoo-linux-musl-gcc -DHAVE_CONFIG_H -I. -I.. -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/lib/libffi/include -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/gio-unix-2.0 -pthread -I/usr/include/libxml2 -Wall -Wstrict-prototypes -Wnested-externs -Werror=missing-prototypes -Werror=implicit-function-declaration -Werror=pointer-arith -Werror=init-self -Werror=format-security -Werror=format=2 -Werror=missing-include-dirs -I../common -DCONFIG_DIR=\"/etc/lightdm\" -DSESSIONS_DIR=\"/usr/share/lightdm/sessions:/usr/share/xsessions:/usr/share/wayland-sessions\" -DWAYLAND_SESSIONS_DIR=\"/usr/share/wayland-sessions\" -DREMOTE_SESSIONS_DIR=\"/usr/share/lightdm/remote-sessions\" -Os -march=x86-64 -msse3 -mtune=athlon64-sse3 -pipe -c language.c  -fPIC -DPIC -o .libs/liblightdm_gobject_1_la-language.o
language.c: In function 'lightdm_language_get_code':
language.c:193:13: warning: Deprecated pre-processor symbol, replace with 
  193 |     return GET_PRIVATE (language)->code;
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~                    
language.c: In function 'lightdm_language_get_name':
language.c:209:13: warning: Deprecated pre-processor symbol, replace with 
  209 |     LightDMLanguagePrivate *priv = GET_PRIVATE (language);
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
language.c:217:24: error: 'LC_IDENTIFICATION' undeclared (first use in this function)
  217 |             setlocale (LC_IDENTIFICATION, locale);
      |                        ^~~~~~~~~~~~~~~~~
language.c:217:24: note: each undeclared identifier is reported only once for each function it appears in
language.c:220:53: error: '_NL_IDENTIFICATION_LANGUAGE' undeclared (first use in this function)
  220 |             const gchar *language_en = nl_langinfo (_NL_IDENTIFICATION_LANGUAGE);
      |                                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
language.c: In function 'lightdm_language_get_territory':
language.c:249:13: warning: Deprecated pre-processor symbol, replace with 
  249 |     LightDMLanguagePrivate *priv = GET_PRIVATE (language);
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
language.c:257:24: error: 'LC_IDENTIFICATION' undeclared (first use in this function)
  257 |             setlocale (LC_IDENTIFICATION, locale);
      |                        ^~~~~~~~~~~~~~~~~
language.c:260:46: error: '_NL_IDENTIFICATION_TERRITORY' undeclared (first use in this function)
  260 |             gchar *country_en = nl_langinfo (_NL_IDENTIFICATION_TERRITORY);
      |                                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
language.c: In function 'lightdm_language_matches':
language.c:291:13: warning: Deprecated pre-processor symbol, replace with 
  291 |     LightDMLanguagePrivate *priv = GET_PRIVATE (language);
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
language.c: In function 'lightdm_language_set_property':
language.c:317:13: warning: Deprecated pre-processor symbol, replace with 
  317 |     LightDMLanguagePrivate *priv = GET_PRIVATE (self);
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~      
make[2]: *** [Makefile:629: liblightdm_gobject_1_la-language.lo] Error 1
make[2]: Leaving directory '/var/tmp/portage/x11-misc/lightdm-1.30.0-r2/work/lightdm-1.30.0/liblightdm-gobject'
make[1]: *** [Makefile:484: all-recursive] Error 1
make[1]: Leaving directory '/var/tmp/portage/x11-misc/lightdm-1.30.0-r2/work/lightdm-1.30.0'
make: *** [Makefile:416: all] Error 2
 * ERROR: x11-misc/lightdm-1.30.0-r2::gentoo failed (compile phase):
 *   emake failed
Comment 1 ernsteiswuerfel archtester 2021-01-24 12:34:44 UTC
Created attachment 684435 [details]
build.log
Comment 2 ernsteiswuerfel archtester 2021-01-24 12:38:40 UTC
Created attachment 684438 [details, diff]
musl-language.patch

This patch from https://github.com/void-ppc/void-packages/blob/master/srcpkgs/lightdm/patches/musl-language.patch fixes problem.
Comment 3 ernsteiswuerfel archtester 2021-01-24 12:41:19 UTC
Created attachment 684441 [details, diff]
musl-updwtmpx.patch

This patch from https://github.com/void-ppc/void-packages/blob/master/srcpkgs/lightdm/patches/musl-updwtmpx.patch fixes the next build problem which you run into on musl.

With both patches lightdm-1.30.0-r2 builds just fine.