localization and make buildworld
wigry at uninet.ee
Sat Sep 3 12:03:00 GMT 2005
There is a problem with make buildworld if the LANG is set to
et_EE.ISO8859-1 (and propbaly to some other locales).
This setting alters the way system treats the alphabet and therefore the
regular expression a-z does not cover the whole alphabet anymore. The
reason is that in Estonian alphabet, the z is between s and t so the
following characters are left out: t, u, v, w, x, y
Therefore the following sed command will not work always: sed -e
'/^\([a-z_][a-z_]*\) /s//\1 gen_/'
for example "int something" is not transformed to "int gen_something"
(without double quotes) but "char something" is transformed to "char
sed fails in three modules: ncurses (lib_gen.c), csh/tcsh (tc.const.h)
and gdb (init.c)
The solution. Force LANG=C throughout the whole make buildworld process
so that regex [a-z] will cover any character.
More information about the freebsd-bugs