FindCVS.cmake 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. # Distributed under the OSI-approved BSD 3-Clause License. See accompanying
  2. # file Copyright.txt or https://cmake.org/licensing for details.
  3. #[=======================================================================[.rst:
  4. FindCVS
  5. -------
  6. The module defines the following variables:
  7. ::
  8. CVS_EXECUTABLE - path to cvs command line client
  9. CVS_FOUND - true if the command line client was found
  10. Example usage:
  11. ::
  12. find_package(CVS)
  13. if(CVS_FOUND)
  14. message("CVS found: ${CVS_EXECUTABLE}")
  15. endif()
  16. #]=======================================================================]
  17. # CVSNT
  18. get_filename_component(
  19. CVSNT_TypeLib_Win32
  20. "[HKEY_CLASSES_ROOT\\TypeLib\\{2BDF7A65-0BFE-4B1A-9205-9AB900C7D0DA}\\1.0\\0\\win32]"
  21. PATH)
  22. get_filename_component(
  23. CVSNT_Services_EventMessagePath
  24. "[HKEY_LOCAL_MACHINE\\SYSTEM\\ControlSet001\\Services\\Eventlog\\Application\\cvsnt;EventMessageFile]"
  25. PATH)
  26. # WinCVS (in case CVSNT was installed in the same directory)
  27. get_filename_component(
  28. WinCVS_Folder_Command
  29. "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Classes\\Folder\\shell\\wincvs\\command]"
  30. PATH)
  31. # TortoiseCVS (in case CVSNT was installed in the same directory)
  32. get_filename_component(
  33. TortoiseCVS_Folder_Command
  34. "[HKEY_CLASSES_ROOT\\CVS\\shell\\open\\command]"
  35. PATH)
  36. get_filename_component(
  37. TortoiseCVS_DefaultIcon
  38. "[HKEY_CLASSES_ROOT\\CVS\\DefaultIcon]"
  39. PATH)
  40. find_program(CVS_EXECUTABLE cvs
  41. ${TortoiseCVS_DefaultIcon}
  42. ${TortoiseCVS_Folder_Command}
  43. ${WinCVS_Folder_Command}
  44. ${CVSNT_Services_EventMessagePath}
  45. ${CVSNT_TypeLib_Win32}
  46. "[HKEY_LOCAL_MACHINE\\SOFTWARE\\CVS\\Pserver;InstallPath]"
  47. DOC "CVS command line client"
  48. )
  49. mark_as_advanced(CVS_EXECUTABLE)
  50. # Handle the QUIETLY and REQUIRED arguments and set CVS_FOUND to TRUE if
  51. # all listed variables are TRUE
  52. include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake)
  53. find_package_handle_standard_args(CVS DEFAULT_MSG CVS_EXECUTABLE)