strigi doesn't build anymore on FreeBSD
Raphael Kubo da Costa
kubito at gmail.com
Thu Dec 31 19:17:56 CET 2009
On Thursday 31 December 2009 10:32:39 Alexander Neundorf wrote:
> Hi Jos, Raphael,
>
> since this patch:
> http://websvn.kde.org/trunk/kdesupport/strigi/src/streamanalyzer/saxeventan
> alyzer.cpp?r1=1067133&r2=1067134
>
> strigi does not build anymore on FreeBSD:
> http://my.cdash.org/viewBuildError.php?buildid=43229
>
>
> What can be done about this ?
>
> One thing which should be done, is to make this into a configure-check.
> I think check_symbol_exists() (
> http://www.cmake.org/cmake/help/cmake2.6docs.html#module:CheckSymbolExists
> ) should work for that.
>
> Then it would not be a build error anymore, but a configure error, which is
> at least slightly better.
>
> What needs to be done to make it build again ?
>
> Alex
Libxml2 defines LIBXML_THREAD_ENABLED if _REENTRANT, __MT__ or _POSIX_C_SOURCE
are defined. glibc always defined _POSIX_C_SOURCE, whereas FreeBSD's libc
seems to define it conditionally (either it must be defined to some value by
the user and then it's correctly set, or _XOPEN_SOURCE must be set -- see
http://fxr.watson.org/fxr/source/sys/cdefs.h?v=FREEBSD8).
I don't know the best solution here - we can either pass _REENTRANT or __MT__
via CMake, but it looks a little awkward, or we can define _XOPEN_SOURCE in
CMake or inside the code itself -- IIRC, kdelibs always defines _XOPEN_SOURCE
to a certain minimum value, maybe strigi could do that too.
More information about the Kde-buildsystem
mailing list