[Cmake] Looking for the solution - FIND_*

Amitha Perera perera at cs.rpi.edu
Thu, 26 Feb 2004 08:49:31 -0500


David Svoboda wrote about canonical paths in CMake:
> Is it a bug or is it correct??? And how to fix it easily?

David,

CMake often has to deal with the question of whether
   /a/b/c/file
and
   /d/e/f/file

are actually the same file. So, CMake currently expands all paths to a
canonical path, and only uses thoses. That means that all symbolic
path information is lost in the process. This often a pain, but I
think fixing this will involve significant changes in CMake.

For your particular problem, perhaps you could do a separate find path

   FIND_PATH( my_orig_lib lib ${CANONICAL_PATH} )

   IF( ${my_orig_lib} MATCHES ${current_lib} )
     ...
   ENDIF( ... )

Amitha.