How to install library translations as libkfoo-<ABI-major>.mo instead of libkfoo.mo

Stephan Kulow coolo at kde.org
Thu Jun 14 09:37:11 BST 2007


Am Donnerstag 14 Juni 2007 schrieb Thiago Macieira:
> Achim Bohnet wrote:
> >Hi,
> >
> >as thiago suggested on IRC I post here [please keep kde-imaging
> >on cc. I'm not subscribed here]
> >
> >Some ABIs for KDE3 libraries in branch/kde-extras/kde35/libs had
> >and will change.  So we are currently faced with the problem
> >that the e.g., the library
> >
> >  libkdcraw.so.0 uses translation .../LC_MESSAGES/libkdcraw.mo
> >
> >In order to install libkdcraw.so.1 in parallel we need to install
> >translation of the new libkdcraw pkg as
> >
> > libkdcraw-1.mo
> >
> >Otherwise last make install of a libkdcrawX wins and
> >last make uninstall removes the catalog for all installed
> >version of libkdrawX.   Similar problems with .deb and .rpm
> >packages.  (I assume with KDE3 and KDE4 catalogs in the future
> >too.)
> >
> >xine-lib and gphoto2-lib add already do it, but I've found no
> >obvious way how to integrate this with KDE auto* magic.
> >
> >Any how to tweak auto* stuff is very welcome.
>
> I believe we'll leave the automake stuff as it is and unchanged. KDE 3
> continues to install the files as they are right now. Nothing changes.
>
> However, for KDE 4 code, we should provide a method to install the
> translations with a version-ed name, if the library in question is
> version-ed as well. It should match the library's soname version, for
> simplicity.
>
> The hardest part here is synchronising the soname version with the code
> and the translation. They are kept in separate files and that would
> require manual synchronisation.
>
> For kdecore, for instance, we have:
> set_target_properties(kdecore PROPERTIES VERSION ${GENERIC_LIB_VERSION}
> SOVERSION ${GENERIC_LIB_SOVERSION} )
>
> It's that argument to SOVERSION that has to be part of the insertCatalog()
> call and the install script for l10n-kde4.
>
> Any suggestions on how to implement that? Manually?
Do you also want to split kde-i18n by soname version combinations 
(kde-i18n-with-kdecore5-and-kio-7-but-khtml8)? For KDE we simply have to live 
with the fact that we can't have two minor releases installed in the same 
prefix and full stop.

For kde-imaging: change the name of the project to kde-imaging1 - that is the 
first argument to AM_INIT_AUTOMAKE. Then everything that is package specific 
is installed as such.

Greetings, Stephan




More information about the kde-core-devel mailing list