FindLATEX.cmake 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. #
  2. # This module finds if Latex is installed and determines where the
  3. # executables are. This code sets the following variables:
  4. #
  5. # LATEX_COMPILER = the full path to the LaTeX compiler
  6. # BIBTEX_COMPILER = the full path to the BibTeX compiler
  7. # MAKEINDEX_COMPILER = the full path to the MakeIndex compiler
  8. # DVIPS_CONVERTER = the full path to the DVIPS converter
  9. # PS2PDF_CONVERTER = the full path to the PS2PDF converter
  10. #
  11. IF (WIN32)
  12. # Try to find the MikTex binary path (look for its package manager).
  13. FIND_PATH(MIKTEX_BINARY_PATH mpm.exe
  14. "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MiK\\MiKTeX\\CurrentVersion\\MiKTeX;Install Root]/miktex/bin"
  15. DOC
  16. "Path to the MikTex binary directory."
  17. )
  18. MARK_AS_ADVANCED(MIKTEX_BINARY_PATH)
  19. # Try to find the GhostScript binary path (look for gswin32).
  20. GET_FILENAME_COMPONENT(GHOSTSCRIPT_BINARY_PATH_FROM_REGISTERY_8_00
  21. "[HKEY_LOCAL_MACHINE\\SOFTWARE\\AFPL Ghostscript\\8.00;GS_DLL]" PATH
  22. )
  23. GET_FILENAME_COMPONENT(GHOSTSCRIPT_BINARY_PATH_FROM_REGISTERY_7_04
  24. "[HKEY_LOCAL_MACHINE\\SOFTWARE\\AFPL Ghostscript\\7.04;GS_DLL]" PATH
  25. )
  26. FIND_PATH(GHOSTSCRIPT_BINARY_PATH gswin32.exe
  27. ${GHOSTSCRIPT_BINARY_PATH_FROM_REGISTERY_8_00}
  28. ${GHOSTSCRIPT_BINARY_PATH_FROM_REGISTERY_7_04}
  29. DOC "Path to the GhostScript binary directory."
  30. )
  31. MARK_AS_ADVANCED(GHOSTSCRIPT_BINARY_PATH)
  32. FIND_PATH(GHOSTSCRIPT_LIBRARY_PATH ps2pdf13.bat
  33. "${GHOSTSCRIPT_BINARY_PATH}/../lib"
  34. DOC "Path to the GhostScript library directory."
  35. )
  36. MARK_AS_ADVANCED(GHOSTSCRIPT_LIBRARY_PATH)
  37. ENDIF (WIN32)
  38. FIND_PROGRAM(LATEX_COMPILER
  39. NAMES latex
  40. PATHS ${MIKTEX_BINARY_PATH}
  41. /usr/bin
  42. )
  43. FIND_PROGRAM(BIBTEX_COMPILER
  44. NAMES bibtex
  45. PATHS ${MIKTEX_BINARY_PATH}
  46. /usr/bin
  47. )
  48. FIND_PROGRAM(MAKEINDEX_COMPILER
  49. NAMES makeindex
  50. PATHS ${MIKTEX_BINARY_PATH}
  51. /usr/bin
  52. )
  53. FIND_PROGRAM(DVIPS_CONVERTER
  54. NAMES dvips
  55. PATHS ${MIKTEX_BINARY_PATH}
  56. /usr/bin
  57. )
  58. FIND_PROGRAM(DVIPDF_CONVERTER
  59. NAMES dvipdfm dvipdft dvipdf
  60. PATHS ${MIKTEX_BINARY_PATH}
  61. /usr/bin
  62. )
  63. IF (WIN32)
  64. FIND_PROGRAM(PS2PDF_CONVERTER
  65. NAMES ps2pdf14.bat
  66. PATHS ${GHOSTSCRIPT_LIBRARY_PATH}
  67. )
  68. ELSE (WIN32)
  69. FIND_PROGRAM(PS2PDF_CONVERTER
  70. NAMES ps2pdf14 psd2pdf
  71. )
  72. ENDIF (WIN32)
  73. MARK_AS_ADVANCED(
  74. LATEX_COMPILER
  75. BIBTEX_COMPILER
  76. MAKEINDEX_COMPILER
  77. DVIPS_CONVERTER
  78. PS2PDF_CONVERTER
  79. )