同じドキュメント内で使用するコンパイラを選択する条件ループを設定するにはどうすればよいでしょうか?

同じドキュメント内で使用するコンパイラを選択する条件ループを設定するにはどうすればよいでしょうか?

私は TeXlive 2019 をインストールしていますが、未解決の問題があり、今のところこのコンピューターで LuaLaTeX を使用してコンパイルすることができません。そのため、LuaLaTeX でコンパイルするか、pdfLaTeX でコンパイルするかを選択できるコードを作成中であることを、ドキュメントの序文に追加できると思いました。

何年も前に似たようなものを見たことがあるはずですが、探している解決策を見つけることができませんでした。

私が探している解決策を覚えている方はいますか? 現時点での私の MWE は次のようになります。

\documentclass[fontsize=10pt,headings=big,headsepline=on,paper=7in:8.5in,DIV=calc,BCOR=5mm]{scrbook}
\usepackage[english]{babel}
\usepackage{fontspec}
\defaultfontfeatures{Ligatures=TeX, Scale=MatchLowercase}
\usepackage{xunicode}
\usepackage{luatextra}
\setmainfont[
ItalicFont = SourceSerifPro,
ItalicFeatures={FakeSlant=0.2}
]{SourceSerifPro}
\setsansfont{SourceSansPro} 
\setmonofont{SourceCodePro}
\usepackage{blindtext}

\begin{document}
\Blindtext[3][2]
\end{document}

答え1

このバージョンのドキュメントは、lualatex、xelatex、pdflatex(およびlatex、いくつかの警告付きでplatex)で動作します。

\documentclass[fontsize=10pt,headings=big,headsepline=on,paper=7in:8.5in,DIV=calc,BCOR=5mm]{scrbook}
\usepackage[english]{babel}
\usepackage{iftex}

\iftutex
% luatex or xetex
\usepackage{fontspec}
\defaultfontfeatures{Ligatures=TeX, Scale=MatchLowercase}
%\usepackage{xunicode}
%\usepackage{luatextra}
\setmainfont[
ItalicFont = SourceSerifPro,
ItalicFeatures={FakeSlant=0.2}
]{SourceSerifPro}
\setsansfont{SourceSansPro} 
\setmonofont{SourceCodePro}
\else
% pdftex
\fi
\usepackage{blindtext}

\begin{document}
\Blindtext[3][2]
\end{document}

関連情報