Re: Problems compiling Amaya 11.2 on FreeBSD

Le samedi 19 septembre 2009 à 00:45 +0200, Philipp Ost a écrit :
> Irene Vatton wrote:
> > Le mercredi 09 septembre 2009 à 23:16 +0200, Philipp Ost a écrit :
> [...]
> >>I looked for _NL_MESSAGES_CODESET on my system but couldn't find 
> >>anything. Neither did Google.
> >>Where does this thing come from? How to resolve this?
> > 
> > 
> > Normally this value is defined in my system in /usr/include/langinfo.h
> 
> On the systems I have available here (FreeBSD 8.0/9.0, Solaris 10/SXCE 
> (sparc, amd64) I can't find any reference to _NL_MESSAGES_CODESET in 
> /usr/include/*.
> I was able to get past this point by replacing it with LC_MESSAGES.

I suggest to add a -D_FREEBSD option

Change in Amaya/configure.in:
__________________________________________________________
#
# Check for operating system (UNIX / WINDOWS / MACOSX )
# ---------->
# canonicalize the target OS
AMAYAOS="LINUX"
case $target_os in
  aix*)       AMAYAOS="LINUX" ;;
  cygwin*)    AMAYAOS="WINDOWS" ;;
  darwin*)    AMAYAOS="MACOSX" ;;
  freebsd2*)  AMAYAOS="FREEBSD" ;;
  freebsd*)   AMAYAOS="FREEBSD" ;;
  hpux*)      AMAYAOS="LINUX" ;;
  irix*)      AMAYAOS="LINUX" ;;
  linuxaout*) AMAYAOS="LINUX" ;;
  linux*)     AMAYAOS="LINUX" ;;
  mingw32*)   AMAYAOS="WINDOWS" ;;
  netbsd*)    AMAYAOS="LINUX" ;;
  openbsd*)   AMAYAOS="LINUX" ;;
  osf[12]*)   AMAYAOS="LINUX" ;;
  osf*)       AMAYAOS="LINUX" ;;
  solaris2*)  AMAYAOS="FREEBSD" ;;
  sunos4*)    AMAYAOS="FREEBSD" ;;
  ultrix*)    AMAYAOS="LINUX" ;;
esac
AC_SUBST(AMAYAOS)

if test "$AMAYAOS" = "WINDOWS" ; then
  AC_MSG_ERROR(Windows port do not use configure - not yet tested.)
fi

OS_OPTIONS="-D_UNIX" # default is UNIX
case $AMAYAOS in
  LINUX)       OS_OPTIONS="-D_UNIX" ;;
  WINDOWS)     OS_OPTIONS="-D_WINDOWS" ;; # not tested (cygwin or mingw)
  MACOSX)      OS_OPTIONS="-D_UNIX -D_MACOS" ;;
  FREEBSD)     OS_OPTIONS="-D_UNIX -D_FREEBSD" ;;
esac
__________________________________________________________

Change in Amaya/thotlib/unicode/ustring.c:
__________________________________________________________

#if !defined(_MACOS) && !defined(_FREEBSD)
  if (LocaleSystemCharset == UNSUPPORTED_CHARSET)
    {
      char *buffer;
      buffer = nl_langinfo(_NL_MESSAGES_CODESET);
      if (buffer != NULL)
        LocaleSystemCharset = TtaGetCharset(buffer);
    }
#endif /* _MACOS && _FREEBSD */
__________________________________________________________

> 
> However, I now got a new compilation error -- but first I need to look 
> into it in more detail before I complain again ;-)
> 
> Regards,
> Philipp
-- 
Irene Vatton <Irene.Vatton@inria.fr>
INRIA

Received on Tuesday, 22 September 2009 07:48:58 UTC