UsewxWidgets.cmake 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. # - Convenience include for using wxWidgets library
  2. # Finds if wxWidgets is installed
  3. # and set the appropriate libs, incdirs, flags etc.
  4. # INCLUDE_DIRECTORIES, LINK_DIRECTORIES and ADD_DEFINITIONS
  5. # are called.
  6. #
  7. # USAGE
  8. # SET( wxWidgets_USE_LIBS gl xml xrc ) # optionally: more than wx std libs
  9. # FIND_PACKAGE(wxWidgets REQUIRED)
  10. # INCLUDE( ${xWidgets_USE_FILE} )
  11. # ... add your targets here, e.g. ADD_EXECUTABLE/ ADD_LIBRARY ...
  12. # TARGET_LINK_LIBRARIERS( <yourWxDependantTarget> ${wxWidgets_LIBRARIES})
  13. #
  14. # DEPRECATED
  15. # LINK_LIBRARIES is not called in favor of adding dependencies per target.
  16. #
  17. # AUTHOR
  18. # Jan Woetzel <jw -at- mip.informatik.uni-kiel.de>
  19. # debug message and logging.
  20. # comment these out for distribution
  21. IF (NOT LOGFILE )
  22. # SET(LOGFILE "${PROJECT_BINARY_DIR}/CMakeOutput.log")
  23. ENDIF (NOT LOGFILE )
  24. MACRO(MSG _MSG)
  25. # FILE(APPEND ${LOGFILE} "${CMAKE_CURRENT_LIST_FILE}(${CMAKE_CURRENT_LIST_LINE}): ${_MSG}\n")
  26. # MESSAGE(STATUS "${CMAKE_CURRENT_LIST_FILE}(${CMAKE_CURRENT_LIST_LINE}): ${_MSG}")
  27. ENDMACRO(MSG)
  28. MSG("wxWidgets_FOUND=${wxWidgets_FOUND}")
  29. IF (wxWidgets_FOUND)
  30. IF (wxWidgets_INCLUDE_DIRS)
  31. IF(wxWidgets_INCLUDE_DIRS_NO_SYSTEM)
  32. INCLUDE_DIRECTORIES(${wxWidgets_INCLUDE_DIRS})
  33. ELSE(wxWidgets_INCLUDE_DIRS_NO_SYSTEM)
  34. INCLUDE_DIRECTORIES(SYSTEM ${wxWidgets_INCLUDE_DIRS})
  35. ENDIF(wxWidgets_INCLUDE_DIRS_NO_SYSTEM)
  36. MSG("wxWidgets_INCLUDE_DIRS=${wxWidgets_INCLUDE_DIRS}")
  37. ENDIF(wxWidgets_INCLUDE_DIRS)
  38. IF (wxWidgets_LIBRARY_DIRS)
  39. LINK_DIRECTORIES(${wxWidgets_LIBRARY_DIRS})
  40. MSG("wxWidgets_LIBRARY_DIRS=${wxWidgets_LIBRARY_DIRS}")
  41. ENDIF(wxWidgets_LIBRARY_DIRS)
  42. IF (wxWidgets_DEFINITIONS)
  43. ADD_DEFINITIONS( ${wxWidgets_DEFINITIONS} )
  44. MSG("wxWidgets_DEFINITIONS=${wxWidgets_DEFINITIONS}")
  45. ENDIF(wxWidgets_DEFINITIONS)
  46. IF (wxWidgets_CXX_FLAGS)
  47. SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${wxWidgets_CXX_FLAGS}")
  48. MSG("wxWidgets_CXX_FLAGS=${wxWidgets_CXX_FLAGS}")
  49. ENDIF(wxWidgets_CXX_FLAGS)
  50. # DEPRECATED JW
  51. # just for backward compatibility: add deps to all targets
  52. # library projects better use advanced FIND_PACKAGE(wxWidgets) directly.
  53. #IF(wxWidgets_LIBRARIES)
  54. # LINK_LIBRARIES(${wxWidgets_LIBRARIES})
  55. # # BUG: str too long: MSG("wxWidgets_LIBRARIES=${wxWidgets_LIBRARIES}")
  56. # IF(LOGFILE)
  57. # FILE(APPEND ${LOGFILE} "${CMAKE_CURRENT_LIST_FILE}(${CMAKE_CURRENT_LIST_LINE}): ${wxWidgets_LIBRARIES}\n")
  58. # ENDIF(LOGFILE)
  59. #ENDIF(wxWidgets_LIBRARIES)
  60. ELSE (wxWidgets_FOUND)
  61. MESSAGE("wxWidgets requested but not found.")
  62. ENDIF(wxWidgets_FOUND)