Hi all,

I've noticed a problematic behaviour with the FIND_XXX macros when using
ENV in either PATHS or HINTS: symbolic links get converted to the real
paths. This happens with cmake 2.6.x and 2.8.0. Is this a bug?

Here's an example:

$ ls -l /opt/hdf5
lrwxrwxrwx 1 root root 18 2009-09-21 10:08 /opt/hdf5 ->
/data/sys/opt/hdf5

$ cat CMakeLists.txt
cmake_minimum_required(VERSION 2.6)
project(MyHDF5)
set(ENV{HDF5_ROOT} /opt/hdf5)
find_path(HDF5_INCLUDE_DIR hdf5.h
  HINTS ENV HDF5_ROOT
  PATH_SUFFIXES include)

$ grep HDF5_INCLUDE_DIR CMakeCache.txt
HDF5_INCLUDE_DIR:PATH=/data/sys/opt/hdf5/include

Replacing 'ENV HDF5_ROOT' in find_path() with the literal string
'/opt/hdf5' gives me:

$ grep HDF5_INCLUDE_DIR CMakeCache.txt
HDF5_INCLUDE_DIR:PATH=/opt/hdf5/include

Best regards,
Marcel Loose.


_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to