ports/177059: /usr/share/cmake/Modules/FindLibXml2.cmake should include ${LOCAL_BASE}/include in LIBXML2_INCLUDE_DIR
Stephen Checkoway
s at cs.jhu.edu
Sun Mar 17 22:40:01 UTC 2013
>Number: 177059
>Category: ports
>Synopsis: /usr/share/cmake/Modules/FindLibXml2.cmake should include ${LOCAL_BASE}/include in LIBXML2_INCLUDE_DIR
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Sun Mar 17 22:40:00 UTC 2013
>Closed-Date:
>Last-Modified:
>Originator: Stephen Checkoway
>Release: 9.1
>Organization:
>Environment:
FreeBSD secdev 9.1-RELEASE FreeBSD 9.1-RELEASE #0 r243825: Tue Dec 4 09:23:10 UTC 2012 root at farrell.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC amd64
>Description:
Cmake's find_package(LibXml2) does not properly include /usr/local/include and it should because one of the header files depends on iconv.h which lives in /usr/local/include.
SDL also depends on iconv.h and /usr/share/cmake/Modules/FindSDL.cmake contains the following lines:
# On FreeBSD SDL depends on libiconv and SDL_stdinc.h includes iconv.h, which is
# located in ${LOCALBASE}/include. Append {LOCALBASE}/include to
# the SDL_INCLUDE_DIR, thus allow to build SDL apps out of box.
LIST(APPEND SDL_INCLUDE_DIR /usr/local/include)
/usr/share/cmake/Modules/FindLibXml2.cmake should almost certainly contain a similar line.
>How-To-Repeat:
git clone http://llvm.org/git/llvm.git
cd llvm
git checkout release_32
cd tools
git clone http://llvm.org/git/clang.git
cd clang
git checkout release_32
cd ../../..
mkdir llvm-build
cd llvm-build
cmake -G Ninja ../llvm
ninja bin/c-index-test
>Fix:
I don't know cmake well, but I assume adding a line like
LIST(APPEND LIBXML2_INCLUDE_DIR /usr/local/include)
to /usr/share/cmake/Modules/FindLibXml2.cmake would suffice.
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list