FindLATEX

Finds LaTeX compiler and Latex-related software like BibTeX. LaTeX is a typesetting system for the production of technical and scientific documentation.

Components

Added in version 3.2.

Components can be optionally specified using a standard CMake syntax:

find_package(LATEX [COMPONENTS <component>...])

Supported components are:

PDFLATEX

Finds the PdfLaTeX compiler.

XELATEX

Finds the XeLaTeX compiler.

LUALATEX

Finds the LuaLaTeX compiler.

BIBTEX

Finds the BibTeX compiler.

BIBER

Finds the Biber compiler.

MAKEINDEX

Finds the MakeIndex compiler.

XINDY

Find the xindy compiler.

DVIPS

Finds the DVI-to-PostScript (DVIPS) converter.

DVIPDF

Finds the DVIPDF converter.

PS2PDF

Finds the the PS2PDF converter.

PDFTOPS

Finds the PDF-to-PostScript converter.

LATEX2HTML

Finds the converter for converting LaTeX documents to HTML.

HTLATEX

Finds htlatex compiler.

Result Variables

This module defines the following variables:

LATEX_FOUND

Boolean indicating whether the LaTex compiler and all its required components are found.

LATEX_<component>_FOUND

Boolean indicating whether the LaTeX <component> is found.

Cache Variables

The following cache variables may also be set:

LATEX_COMPILER

The path to the LaTeX compiler.

PDFLATEX_COMPILER

The path to the PdfLaTeX compiler.

XELATEX_COMPILER

The path to the XeLaTeX compiler.

LUALATEX_COMPILER

The path to the LuaLaTeX compiler.

BIBTEX_COMPILER

The path to the BibTeX compiler.

BIBER_COMPILER

The path to the Biber compiler.

MAKEINDEX_COMPILER

The path to the MakeIndex compiler.

XINDY_COMPILER

The path to the xindy compiler.

DVIPS_CONVERTER

The path to the DVIPS converter.

DVIPDF_CONVERTER

The path to the DVIPDF converter.

PS2PDF_CONVERTER

The path to the PS2PDF converter.

PDFTOPS_CONVERTER

The path to the pdftops converter.

LATEX2HTML_CONVERTER

The path to the LaTeX2Html converter.

HTLATEX_COMPILER

The path to the htlatex compiler.

Examples

Finding LaTeX in a project:

find_package(LATEX)

Finding LaTeX compiler and specifying which additional LaTeX components are required for LaTeX to be considered found:

find_package(LATEX COMPONENTS PDFLATEX)

if(LATEX_FOUND)
  execute_process(COMMAND ${LATEX_COMPILER} ...)
  execute_process(COMMAND ${PDFLATEX_COMPILER} ...)
endif()

Or finding LaTeX compiler and specifying multiple components:

find_package(LATEX COMPONENTS BIBTEX PS2PDF)

if(LATEXT_FOUND)
  # ...
endif()