[Cmake-commits] [cmake-commits] lowman committed FindFLTK.cmake 1.38 1.39

cmake-commits at cmake.org cmake-commits at cmake.org
Wed Jan 21 23:52:39 EST 2009


Update of /cvsroot/CMake/CMake/Modules
In directory public:/mounts/ram/cvs-serv31441

Modified Files:
	FindFLTK.cmake 
Log Message:
BUG: Fixes detection of FLTK on Gentoo (Issue #7809)


Index: FindFLTK.cmake
===================================================================
RCS file: /cvsroot/CMake/CMake/Modules/FindFLTK.cmake,v
retrieving revision 1.38
retrieving revision 1.39
diff -C 2 -d -r1.38 -r1.39
*** FindFLTK.cmake	22 Jan 2009 03:43:22 -0000	1.38
--- FindFLTK.cmake	22 Jan 2009 04:52:37 -0000	1.39
***************
*** 17,20 ****
--- 17,22 ----
  ENDIF (FLTK_INCLUDE_DIR)
  
+ FIND_PACKAGE(OpenGL)
+ 
  #  Platform dependent libraries required by FLTK
  IF(WIN32)
***************
*** 88,91 ****
--- 90,95 ----
      # Read from the CMakeSetup registry entries.  It is likely that
      # FLTK will have been recently built.
+     # TODO: Is this really a good idea?  I can already hear the user screaming, "But
+     # it worked when I configured the build LAST week!"
      [HKEY_CURRENT_USER\\Software\\Kitware\\CMakeSetup\\Settings\\StartPath;WhereBuild1]
      [HKEY_CURRENT_USER\\Software\\Kitware\\CMakeSetup\\Settings\\StartPath;WhereBuild2]
***************
*** 173,179 ****
--- 177,200 ----
      ENDIF(FLTK_FLUID_EXECUTABLE)
  
+     #
+     # Try to find FLTK include dir
+     IF(UNIX)
+       # Use fltk-config to generate a list of possible include directories
+       FIND_PROGRAM(FLTK_CONFIG_SCRIPT fltk-config PATHS ${FLTK_BIN_DIR})
+       IF(FLTK_CONFIG_SCRIPT)
+         IF(NOT FLTK_INCLUDE_DIR)
+           EXEC_PROGRAM(${FLTK_CONFIG_SCRIPT} ARGS --cxxflags OUTPUT_VARIABLE FLTK_CXXFLAGS)
+           IF(FLTK_CXXFLAGS)
+             STRING(REGEX REPLACE "-I" "" _FLTK_POSSIBLE_INCLUDE_DIRS ${FLTK_CXXFLAGS})
+             STRING(REGEX REPLACE "-D[A-Za-z0-9_=]+" "" _FLTK_POSSIBLE_INCLUDE_DIRS ${_FLTK_POSSIBLE_INCLUDE_DIRS})
+           ENDIF(FLTK_CXXFLAGS)
+         ENDIF()
+       ENDIF()
+     ENDIF()
+ 
      SET(FLTK_INCLUDE_SEARCH_PATH ${FLTK_INCLUDE_SEARCH_PATH}
        /usr/local/fltk
        /usr/X11R6/include
+       ${_FLTK_POSSIBLE_INCLUDE_DIRS}
        )
  
***************
*** 181,184 ****
--- 202,216 ----
          NAMES FL/Fl.h FL/Fl.H    # fltk 1.1.9 has Fl.H (#8376)
          PATHS ${FLTK_INCLUDE_SEARCH_PATH})
+     
+     #
+     # Try to find FLTK library
+     IF(UNIX)
+       IF(FLTK_CONFIG_SCRIPT)
+         EXEC_PROGRAM(${FLTK_CONFIG_SCRIPT} ARGS --libs OUTPUT_VARIABLE _FLTK_POSSIBLE_LIBS)
+         IF(_FLTK_POSSIBLE_LIBS)
+           GET_FILENAME_COMPONENT(_FLTK_POSSIBLE_LIBRARY_DIR ${_FLTK_POSSIBLE_LIBS} PATH)
+         ENDIF()
+       ENDIF()
+     ENDIF()
  
      SET(FLTK_LIBRARY_SEARCH_PATH ${FLTK_LIBRARY_SEARCH_PATH}
***************
*** 186,189 ****
--- 218,222 ----
        /usr/X11R6/lib
        ${FLTK_INCLUDE_DIR}/lib
+       ${_FLTK_POSSIBLE_LIBRARY_DIR}
        )
  
***************
*** 199,203 ****
      # Find the extra libraries needed for the fltk_images library.
      IF(UNIX)
-       FIND_PROGRAM(FLTK_CONFIG_SCRIPT fltk-config PATHS ${FLTK_BIN_DIR})
        IF(FLTK_CONFIG_SCRIPT)
          EXEC_PROGRAM(${FLTK_CONFIG_SCRIPT} ARGS --use-images --ldflags
--- 232,235 ----
***************
*** 229,234 ****
  
  IF(FLTK_FOUND)
!   SET(FLTK_LIBRARIES ${FLTK_IMAGES_LIBRARY} ${FLTK_IMAGES_LIBS} ${FLTK_BASE_LIBRARY} ${FLTK_GL_LIBRARY}
!     ${FLTK_FORMS_LIBRARY} )
    IF(APPLE)
      SET(FLTK_LIBRARIES ${FLTK_PLATFORM_DEPENDENT_LIBS} ${FLTK_LIBRARIES})
--- 261,271 ----
  
  IF(FLTK_FOUND)
!   SET(FLTK_LIBRARIES ${FLTK_IMAGES_LIBRARY} ${FLTK_IMAGES_LIBS} ${FLTK_BASE_LIBRARY})
!   IF(FLTK_GL_LIBRARY AND OPENGL_FOUND)
!     LIST(APPEND FLTK_LIBRARIES ${FLTK_GL_LIBRARY} ${OPENGL_gl_LIBRARY})
!     LIST(APPEND FLTK_INCLUDE_DIR ${OPENGL_INCLUDE_DIR})
!   ENDIF()
!   LIST(APPEND FLTK_LIBRARIES ${FLTK_FORMS_LIBRARY})
! 
    IF(APPLE)
      SET(FLTK_LIBRARIES ${FLTK_PLATFORM_DEPENDENT_LIBS} ${FLTK_LIBRARIES})



More information about the Cmake-commits mailing list