adonthell-general
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Adonthell-general] SRPMS for Adonthell and Waste's Edge


From: Kai Sterker
Subject: Re: [Adonthell-general] SRPMS for Adonthell and Waste's Edge
Date: Fri, 22 Feb 2008 10:36:50 +0100

On Thu, Feb 21, 2008 at 11:17 PM, Mathieu Bridon <address@hidden> wrote:

>  I only have one more issue left. It's about translation files.
>  They are installed in
>  ls /usr/share/adonthell/games/wastesedge/locale/xx_XX/LC_MESSAGES/yyyyyy.mo
>
>  Usually, locale files are installed
>  in /usr/share/locale/xx_XX/LC_MESSAGES/yyyyyy.mo (that's what the FHS
>  recommends).

Right. The reason for not installing in a standard location was that
this only works on Unix. Moreover, with different locations for
different platforms, the game data would need to know where to install
the translations based on the platform its on.

>  As the Fedora Packaging Guidelines are very strict, I will have to
>  patch your Makefile so that the files are installed in the right place,
>  which is gonna be kind of complicated :S

I see. It's complicated indeed, as the path above is not only in the
Makefile, but also hard coded in the engine.

The true problem here is that normally you have a package and it's
translation. When you build the package you know where the translation
needs to go. With adonthell, you have the engine that uses the
translation from a different package.

So it's not a simple fix and I'd rather not spend time on stuff that's
not really broken.


>  Do you have any idea how I could do that ? (I'm not really friend with
>  Makefiles :D)

The best solution would probably be to apply a patch before building the RPMs.

The change would have to be made to adonthell/src/nls.cc line 43. Instead of
   std::string location = myconfig.gamedir + "/locale";
it would be
   std::string location = "/usr/share/locale";
in your case.

Then, in wastesedge/po/Makefile.in.in, replace line 25
    datadir = @gamedatadir@
with
    datadir = ${prefix}/share

That's simple and works for your special case, whereas a general fix
would be complicated and would require testing across multiple
platforms.

Kai




reply via email to

[Prev in Thread] Current Thread [Next in Thread]