summarylogtreecommitdiffstats
path: root/locale-gen
diff options
context:
space:
mode:
Diffstat (limited to 'locale-gen')
-rw-r--r--locale-gen9
1 files changed, 5 insertions, 4 deletions
diff --git a/locale-gen b/locale-gen
index 1bc79322b6e9..c9b65c448ad7 100644
--- a/locale-gen
+++ b/locale-gen
@@ -8,17 +8,18 @@ fi
for locale in /etc/locales/*; do
if [ -f "$locale" ]; then
+ read -r charset < "$locale"
+ charset=${charset:-UTF-8}
locale=${locale##*/}
else
continue
fi
- printf '%s: generating locale\n' "$locale".UTF-8 >&2
+ printf '%s: generating locale\n' "$locale"."$charset" >&2
- localedef -i "$locale" -f UTF-8 -c "$locale".UTF-8
+ localedef -i "$locale" -f "$charset" -c "$locale"."$charset"
case $? in
- 4) printf '%s: invalid locale\n' "$locale" >&2 ;;
- 1) exit
+ 4) printf '%s: invalid locale\n' "$locale"."$charset" >&2
esac
done