--- a/liblightdm-gobject/language.c
+++ b/liblightdm-gobject/language.c
@@ -210,6 +210,7 @@
 
     if (!priv->name)
     {
+	#if HAVE_LC_IDENTIFICATION
         g_autofree gchar *locale = get_locale_name (priv->code);
         if (locale)
         {
@@ -223,6 +224,8 @@
 
             setlocale (LC_ALL, current);
         }
+	#endif
+
         if (!priv->name)
         {
             g_auto(GStrv) tokens = g_strsplit_set (priv->code, "_.@", 2);
@@ -250,6 +253,7 @@
 
     if (!priv->territory && strchr (priv->code, '_'))
     {
+	#if HAVE_LC_IDENTITIFICATION
         g_autofree gchar *locale = get_locale_name (priv->code);
         if (locale)
         {
@@ -263,6 +267,8 @@
 
             setlocale (LC_ALL, current);
         }
+	#endif
+
         if (!priv->territory)
         {
             g_auto(GStrv) tokens = g_strsplit_set (priv->code, "_.@", 3);