[cmake-developers] [CMake 0011868]: FIND_PATH not following HINTS Command

Mantis Bug Tracker mantis at public.kitware.com
Wed Feb 16 13:58:43 EST 2011


The following issue has been SUBMITTED. 
====================================================================== 
http://public.kitware.com/Bug/view.php?id=11868 
====================================================================== 
Reported By:                hkrishna
Assigned To:                
====================================================================== 
Project:                    CMake
Issue ID:                   11868
Category:                   CMake
Reproducibility:            always
Severity:                   major
Priority:                   normal
Status:                     new
====================================================================== 
Date Submitted:             2011-02-16 13:58 EST
Last Modified:              2011-02-16 13:58 EST
====================================================================== 
Summary:                    FIND_PATH not following HINTS Command
Description: 
Hi All,

I was trying to build the VisIt software package on my Mac OSX 1.5 . This
package uses Qt 4.6.1 during its build. I ran into an issue where the QtCore
path finds my globally installed version of Qt (4.7) as apposed to the Qt
(4.6.1) installed by VisIt. 

While digging around I found that FIND_PATH (code included below) in
FindQt4.cmake is pulling information from the system path and assigning this
value to the QT_QTCORE_INCLUDE_DIR. This is causing a build failure where the
rest of the QT headers are using 4.6.1 and QtCore is using version 4.7. 

The value in ${qt_headers} points to the correct 4.6.1 location yet FIND_PATH
does not use this parameter. Adding NO_CMAKE_SYSTEM_PATH finds the proper path. 

I believe this might indicate a bug in FIND_PATH because according to the CMAKE
documentation on FIND_PATH
(http://www.cmake.org/cmake/help/cmake-2-8-docs.html#command:find_path) the
HINTS option is number three in the search order and the system path is number
five.

     _qt4_query_qmake(QT_INSTALL_HEADERS qt_headers)
     SET(QT_QTCORE_INCLUDE_DIR NOTFOUND)
     FIND_PATH(QT_QTCORE_INCLUDE_DIR QtCore
               HINTS ${qt_headers}
               ${QT_LIBRARY_DIR}/QtCore.framework/Headers
               PATH_SUFFIXES QtCore
       )

Steps to Reproduce: 
Will try to make a simpler test to reproduce this error.

====================================================================== 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2011-02-16 13:58 hkrishna       New Issue                                    
======================================================================




More information about the cmake-developers mailing list