diff options
| -rwxr-xr-x | libc/debian/locale-gen | 4 | ||||
| -rw-r--r-- | libc/debian/locales.install | 4 | ||||
| -rwxr-xr-x | libc/debian/locales.postinst | 2 | ||||
| -rwxr-xr-x | libc/debian/rules | 12 |
4 files changed, 17 insertions, 5 deletions
diff --git a/libc/debian/locale-gen b/libc/debian/locale-gen index 5fab9b8..8219554 100755 --- a/libc/debian/locale-gen +++ b/libc/debian/locale-gen @@ -41,7 +41,9 @@ while read locale charset; do echo -n ".$charset" echo -n `echo $locale | sed 's/\([^\@]*\)\(\@.*\)*/\2/'` echo -n '...' - localedef -i $LOCALES/$locale.src -f $LOCALES/$charset.cm \ + + (cat $LOCALES/$locale.src && gunzip -c /usr/share/i18n/LC_DATA.gz) | \ + localedef -f $LOCALES/$charset.cm \ /usr/lib/locale/$locale || : echo ' done' done < $LOCALEGEN diff --git a/libc/debian/locales.install b/libc/debian/locales.install index 8bd9daa..1e76e59 100644 --- a/libc/debian/locales.install +++ b/libc/debian/locales.install @@ -1,5 +1,7 @@ -localedef/data/* /usr/share/i18n/locales/ +localedef/data/*.src /usr/share/i18n/locales/ +localedef/data/*.cm /usr/share/i18n/locales/ localedef/localedef /usr/bin/ debian/locale-gen /usr/sbin/ debian/update-locale /usr/sbin/ debian/SUPPORTED /usr/share/i18n/ +debian/LC_DATA.gz /usr/share/i18n/ diff --git a/libc/debian/locales.postinst b/libc/debian/locales.postinst index 333b552..7871e53 100755 --- a/libc/debian/locales.postinst +++ b/libc/debian/locales.postinst @@ -51,12 +51,10 @@ EOF fi done - set -x # Uncomment selected locales echo "$SELECTED_LOCALES" | while read locale ; do sed -i -e "0,/^[# ]*$locale *$/ s/^[# ]*$locale *$/$locale/" $LG done - set +x fi # Update requested locales if locales-all is not installed diff --git a/libc/debian/rules b/libc/debian/rules index 93629cc..9095ea5 100755 --- a/libc/debian/rules +++ b/libc/debian/rules @@ -20,6 +20,13 @@ localedef/localedef: $(localedef_src) # Usage: # ./localedef/localedef -U -i localedef/data/ru_RU.UTF-8.src -f localedef/data/UTF-8.cm ru_RU.UTF-8 +# We remove LC_DATA from all *.UTF-8.src +# and when regenerating locales will insert contents of LC_DATA +# into source locale file. Illumos localedef does not support +# copy action for including other files source files. +debian/LC_DATA.gz: + sh localedef/data/ctype.sh localedef/data/*.UTF-8.src | gzip -c -9 > $@ + override_dh_auto_build: # Here we go! The first compilations. # by default this program is 32-bit, @@ -32,6 +39,7 @@ override_dh_auto_clean: rm -f localedef/localedef rm -f localedef/parser.tab.[ch] rm -f debian/locales.config + rm -f debian/LC_DATA* override_dh_auto_test: @@ -48,8 +56,10 @@ debian/locales.config: debian/locales.config.in perl -pe 'BEGIN {undef $$/; open(IN, "debian/SUPPORTED"); $$j=<IN>;} s/__PROVIDED_LOCALES__/$$j/g;' \ $< > $@ -override_dh_install: localedef/localedef debian/locales.config +override_dh_install: localedef/localedef debian/locales.config debian/LC_DATA.gz dh_install + find debian/locales/usr/share/i18n/locales -name *.UTF-8.src | \ + xargs sed -i '/^LC_CTYPE/,/^END LC_CTYPE/d' # Seed for ld.so # Will be copied to /var/ld/ld.config |
