The new loadable i18n libraries use a special library build rule instead 
of the regular SharedLibraryTarget macro; this may well be fine for 
regular compilation, but it breaks cross compiling environments.

The trivial fix is to use:

#define Xi18nLibraryTarget(libname) 
SharedLibraryTarget(libname,$(SOXI18NREV),$(OBJS),.,.)

instead of the custom macro.

A problem that this usage uncovers is in the use of expr to generate 
library version numbers under Linux; right now there are several rules 
files using:

       MAJREV=`expr rev : '\(.*\)\.'`

to convert a library version number (e.g. "6.1.0") into just the major 
version number ("6").  This works, as long as the library version number 
has a dot -- the i18n libraries use a simple single element version number 
for some inexplicable reason, hence this usage breaks.  I believe a
replacement for the above expression:

       MAJREV=`expr rev : '\([^.]*\)'`

will work in either case.

I'd like to commit both this change as well as the switch to the i18n 
library building macros; does anyone see something I'm missing?

Keith Packard        XFree86 Core Team        Compaq Cambridge Research Lab


_______________________________________________
Xpert mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/xpert

Reply via email to