Bug 1820 - Ugly LOCALEDIR definition
Summary: Ugly LOCALEDIR definition
Status: RESOLVED FIXED
Alias: None
Product: UIM
Classification: Unclassified
Component: Other (show other bugs)
Version: unspecified
Hardware: x86 (IA32) Linux (All)
: high normal
Assignee: uim-bugs
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-11-10 11:22 UTC by TOKUNAGA Hiroyuki
Modified: 2005-01-06 10:29 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Description TOKUNAGA Hiroyuki 2004-11-10 11:22:08 UTC
If I commend out these lines:

if test x$prefix = xNONE; then
   # I can't imagine when prefix does not exist -- YamaKen 2004-09-30
   localedir="/usr/local/share/locale"

I get following result at config.h:

/* locale dir */
#define LOCALEDIR "NONE/share/locale"

If I defined LOCALEDIR in Makefile.am, such problem didn't occur. Also, 
in the example of gettext (hello-c), LOCALEDIR was defined in Makefile.am.
So I believe define LOCALEDIR in Makefile.am is safe way.
Comment 1 YamaKen 2004-11-10 16:09:26 UTC
I assume you had commented out only the line
'localedir="/usr/local/share/locale"' rather than 'lines'. Is it right?

Show me following result.
$ egrep '(datadir|prefix|localedir|LOCALEDIR)' config.log

Regardless of above result, I think that we should define LOCALEDIR globally in
configure process to unify the definition and to avoid errors. In fact, you had
already caused such error since you had forgotten the modification of
Makefile.am in sumika subdirectory.

We will cause such problem again if we adopt your way. It's a structural problem.
Comment 2 TOKUNAGA Hiroyuki 2004-11-11 00:44:07 UTC
> I assume you had commented out only the line
> 'localedir="/usr/local/share/locale"' rather than 'lines'. Is it right?

No. To be exact, I modified as follows.

LOCALEDIR=`eval echo ${datadir}/locale`


$egrep '(datadir|prefix|localedir|LOCALEDIR)' config.log
Configured with: ../src/configure -v
--enable-languages=c,c++,java,f77,pascal,objc,ada,treelang --prefix=/usr
--mandir=/usr/share/man --infodir=/usr/share/info
--with-gxx-include-dir=/usr/include/c++/3.3 --enable-shared --with-system-zlib
--enable-nls --without-included-gettext --enable-__cxa_atexit
--enable-clocale=gnu --enable-debug --enable-java-gc=boehm
--enable-java-awt=xlib --enable-objc-gc i486-linux
Configured with: ../src/configure -v
--enable-languages=c,c++,java,f77,pascal,objc,ada,treelang --prefix=/usr
--mandir=/usr/share/man --infodir=/usr/share/info
--with-gxx-include-dir=/usr/include/c++/3.3 --enable-shared --with-system-zlib
--enable-nls --without-included-gettext --enable-__cxa_atexit
--enable-clocale=gnu --enable-debug --enable-java-gc=boehm
--enable-java-awt=xlib --enable-objc-gc i486-linux
| #define LOCALEDIR "NONE/share/locale"
| #define GNOMELOCALEDIR "NONE/share/locale"
| #define LOCALEDIR "NONE/share/locale"
| #define GNOMELOCALEDIR "NONE/share/locale"
| #define LOCALEDIR "NONE/share/locale"
| #define GNOMELOCALEDIR "NONE/share/locale"
| #define LOCALEDIR "NONE/share/locale"
| #define GNOMELOCALEDIR "NONE/share/locale"
bindir='${exec_prefix}/bin'
datadir='${prefix}/share'
exec_prefix='${prefix}'
includedir='${prefix}/include'
infodir='${prefix}/info'
libdir='${exec_prefix}/lib'
libexecdir='${exec_prefix}/libexec'
localedir='/usr/local/share/locale'
localstatedir='${prefix}/var'
mandir='${prefix}/man'
prefix='/usr/local'
sbindir='${exec_prefix}/sbin'
sharedstatedir='${prefix}/com'
sysconfdir='${prefix}/etc'
#define GNOMELOCALEDIR "NONE/share/locale"
#define LOCALEDIR "NONE/share/locale"

As an additional infomation, tested with this line:

LOCALEDIR="${datadir}/locale"

Result:

#define GNOMELOCALEDIR "${prefix}/share/locale"
#define LOCALEDIR "${prefix}/share/locale

Comment 3 TOKUNAGA Hiroyuki 2004-11-11 00:48:46 UTC
More additional infomation:

Quoted from the automake's ML:
http://sources.redhat.com/ml/automake/2000-07/msg00037.html

  AC_DEFUN([AC_EXPAND_DIR], 
  [$1=$2
  $1=`( test "x$prefix" = xNONE && prefix="$ac_default_prefix"
        test "x$exec_prefix" = xNONE && exec_prefix="${prefix}"
        eval echo \""[$]$1"\"
      )`
  ])

Though I couldn't understand what is doing with this macro...
Comment 4 YamaKen 2005-01-07 05:29:41 UTC
Fixed in r156 of new repository. I'm sorry Hiroyuki, I was misunderstood about
the case $prefix == NONE. It simply refrects configure options, but I
misunderstood as contains default value.

Now I've rewritten the LOCALEDIR definition as default-value ready.

------------------------------------------------------------------------
r156 | yamaken | 2005-01-07 22:23:13 +0900 (Fri, 07 Jan 2005) | 14 lines

* configure.ac
  - Fix LOCALEDIR and GNOMELOCALEDIR definition. This has resolved bug
    #1820
  - Define LIBDIR and DATADIR


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.