kdeexamples buildsystem

Michael Jansen kde at michael-jansen.biz
Fri Aug 5 18:12:41 UTC 2011


On Wednesday, August 03, 2011 09:00:44 PM Alexander Neundorf wrote:
> On Tuesday 19 July 2011, Michael Jansen wrote:
> > On Friday 15 July 2011 21:37:03 Alexander Neundorf wrote:
> > > Hi,
> > > 
> > > On Friday 15 July 2011, Michael Jansen wrote:
> > > > Hi
> > > > 
> > > > I pushed a small project to git at git.kde.org:scratch/mjansen/cmake_test
> > > > . That should be git://anongit.kde.org/scratch/mjansen/cmake_test for
> > > > you to clone (in a while after anongit catches up).
> > > > 
> > > > It contains 2 projects. A small helloworld lib and a binary using it.
> > > > In the toplevel is a makefile that builds the projects in different
> > > > configurations and shows what works and what not works. Have a look
> > > > inside.
> > > > 
> > > > The case that now works is building the lib in 32bit and trying to
> > > > compile it in 64bit (At least here in OpenSuSE). The find_library call
> > > > accepts the 32bit lib and naturally the linking fails later.
> > > 
> > > please try whether it improves the situation for you if the buildsystem
> > > example in kdeexamples uses the attached file instead of as it is
> > > currently in git.
> > > It additionally compares the 32/64bit of the installed version with the
> > > currently 32/64bitness of the currently searching project, and succeeds
> > > only if it matches.
> > 
> > That naturally will fix the problem (i have not yet really tried) but it
> > still leaves the initial problem about cmake. It is very poorly designed
> > in regards to multiarch systems.
> 
> Do you already have an idea how to handle multiarch in a nice way with
> LIB_SUFFIX ?
> Requiring that people set it to "64" is kindof ok. Can we also expect that
> they know they should set it e.g. "/x86_64-linux-gnu"  ?
> Or we could install to "lib${LIB_SUFFIX}/${CMAKE_LIBRARY_ARCHITECTURE}" ...
> 
> Alex

(Resending because i have no idea if the initial attempt worked, got a borked 
system here.)

You are working on the wrong side of cmake. I am really sure we could come up 
with something like that when we talk about installing stuff we build 
ourselves. Even if it is much more complicated with cmake than it was ever 
with autoconf ( --libdir=... ). You could make every project support it.

The stuff that fails is find_library, find_module and probably more. How do 
you expect that to work without changing each and every call of those macros 
to provide a hint?

Mike

-- 
Michael Jansen
http://michael-jansen.biz



More information about the Kde-buildsystem mailing list