From: Sjors G. <sj...@km...> - 2010-11-29 13:02:32
|
Hi all, A few months ago, we talked about building against bundled versions instead of system-installed versions by default. After most of us agreed it was the best idea, we included a patch to always build against bundled libkmess-msn, unless some switch was given to build against a system-installed one, I remember. A few days ago, this was posted in the KMess channel: http://pastebin.com/ws4sdKpm (a copy is included below[0]) - this was caused by kmess by default building against a system-installed libisf instead of a bundled one. Libisf is still always bundled with KMess, seeing cmake/check-submodules.pl [1]. However, it is only used if there was no system-installed version[2]. The paste shows that this is unwise: the installed version might be lagging behind if we're building a new version of KMess. (And my previous argument: two subsequent builds with different versions of KMess and libisf, would have unexpected effects.) There are two options to solve this: 1. by default, use bundled libisf just like with libkmess, 2. don't bundle libisf anymore. I'm still for option 1, then later option 2 once libisf is released as its own library. I'll also patch in the change sometime soon if there are no objections. What option do you prefer? Thoughts? Sjors -- [0] -- Scanning dependencies of target kmess [ 20%] Building CXX object src/CMakeFiles/kmess.dir/kmess_automoc.o [ 20%] Building CXX object src/CMakeFiles/kmess.dir/chat/chathistorymanager.o [ 21%] Building CXX object src/CMakeFiles/kmess.dir/chat/chathistorywriter.o [ 22%] Building CXX object src/CMakeFiles/kmess.dir/chat/chatmaster.o /home/merike/Allalaadimised/kmess-stable/src/chat/chatmaster.cpp: In member function 'void ChatMaster::slotGotInkMessage(const QString&, const QString&, InkFormat)': /home/merike/Allalaadimised/kmess-stable/src/chat/chatmaster.cpp:1361: error: 'writerPng' is not a member of 'Isf::Stream' make[2]: *** [src/CMakeFiles/kmess.dir/chat/chatmaster.o] Error 1 make[1]: *** [src/CMakeFiles/kmess.dir/all] Error 2 make: *** [all] Error 2 -- [1] -- EXECUTE_PROCESS( COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/cmake/check-submodules.pl OUTPUT_VARIABLE GIT_SUBMODULES_OK ) (and in that file) foreach(split /\n/, `git submodule status`) (and as output of that command) ca65ccbf94cb92aa9852a2e3894503d33bf19ebd contrib/isf-qt (ca65ccb) -- [2] -- # If the ISF library is not installed on the system. # use the bundled version. IF( NOT ISFQT_FOUND ) SET( ISFQT_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/contrib/isf-qt/include ) |