[bt-devel] A few more matters for Windows Building
Martin Gruner
mg.pub at gmx.net
Tue Apr 21 10:59:36 MST 2009
Hi Greg,
thanks for your mail. I applied your patch with slight modifications so that
Sword detection on Linux continues to work. We should unify the detection for
Linux and Windows, getting rid of pkg-config while keeping the sword version
check, also for windows.
I don't like the idea of having fixed version numbers in the detection scripts
for e.g. sword. Can you rename these folders, e.g. from sword-1.5.11 to sword?
Let me know if I broke stuff please.
mg
On Friday 17 April 2009 03:33:45 Greg Hellings wrote:
> So I've strongly updated, including comments, on the Building on
> Windows wiki page. It now presupposes the attached patch is part of
> the BibleTime source tree. I'll try to comment on each of the changes
> here, so people can modify the patch accordingly if it breaks
> configuring on other systems.
>
> The change to CMakeLists.txt just adds the BibleTime source tree to
> the include directories before the other include directories. I don't
> know what that might change for Linux or Unix building, but it's
> necessary for Windows builds, where I was pulling in different
> config.h files than the one that I wanted from BibleTime.
>
> The changes to FindCLucene.cmake allow the user to have CLucene built
> in a parallel directory to BibleTime when using MSVC and it will still
> automatically pick up the directory for the configure so long as the
> person is using 0.9.21b, which is the latest build of CLucene.
>
> The last line that was changed to delete the WIN32_DEBUG_POSTFIX
> reflects the actual behavior of CLucene's build system. If the user
> uses CMake to build the library, as I advise them to do so as to avoid
> compile time errors with a missing clucene-config.h, their library
> will not have any of the terminal strings (UMTD or whatever) that
> other builds of CLucene might have.
>
> The changes to FindSword.cmake are for the same purpose. The
> additions at lines 18 and 23 are to expose the parallel-build
> directory structure under Windows. The change at line 33 I'm not
> certain about. There I'm deleting the sword/ at the beginning of the
> search file... on Windows this is necessary because the include files
> for sword are under ../sword-1.5.11/include but on Linux/Unix the
> files will be under something like /usr/local/include/sword/ and there
> it's probably necessary. However, as I understand it, all the in-code
> references have been changed to actually just call, e.g., swmgr.h and
> similar. So we probably should change the TRIAL_INCLUDE_PATHS to be
> ${SWORD_HOME}/include/sword
> ${CMAKE_INSTALL_PREFIX}/include/sword
> /sw/include/sword
> ../sword-1.5.11/include
>
> and then just search for swmgr.h. However, I don't know if the above
> will also pick up /usr/local/include/sword and /usr/include/sword
> which are both liable to the most common on Linux. On line 80 I
> comment out the line which appends /sword to the SWORD_INCLUDE_DIR
> path. This is because it was appending /sword to my
> ../sword-1.5.11/include/ and causing MSVC to be unable to find the
> SWORD include files. If we append the /sword to the search paths to
> begin with, then just search for swmgr.h, we won't need to append
> /sword/ to the end of the path. I think my version will work, but I
> don't know that for sure.
>
> On a related note -- CLucene is included as part of Qt 4.5.0 (and
> 4.4.3 and other earlier versions, at least back to the version Eeli
> has installed). I didn't spend too much time poking through it, but
> when I was diffing it against my clucene-core-0.9.21b I did notice
> that all the method signatures that I looked at closely had been
> modified away from using char* and TCHAR* to using QString &. If that
> is included in standard distributions of Qt (I know it's an optional
> module to install QtCLucene from MacPorts and I've seen RPMs of it) we
> might consider at least experimenting with that for our search. The
> version in Qt seemed relatively complete, so it might be interesting
> to see whether it handles our Unicode issues more elegantly than the
> standard CLucene.
>
> --Greg
More information about the bt-devel
mailing list