Add notes about CPack + CTest + Policies
This commit is contained in:
parent
0a5348b401
commit
9d55c4e3dd
43
outro.tex
43
outro.tex
|
@ -1,3 +1,46 @@
|
|||
\subsection{Miscellaneus}
|
||||
|
||||
\begin{frame}
|
||||
\frametitle{Other provided tools}
|
||||
|
||||
\begin{itemize}
|
||||
\item \textbf{CPack}: package your files
|
||||
directly in packages native to the target
|
||||
platform, and have fine grained control
|
||||
over components.
|
||||
|
||||
\vspace{1em}
|
||||
|
||||
\item \textbf{CTest}: have a common
|
||||
frontend to run tests which might have different
|
||||
test runners. Allow running in parallel.
|
||||
Limited to tests in the build folder (not
|
||||
installed).
|
||||
\end{itemize}
|
||||
\end{frame}
|
||||
|
||||
% --------------------------------------------------
|
||||
|
||||
\begin{frame}[containsverbatim]
|
||||
\frametitle{Policies}
|
||||
|
||||
\begin{itemize}
|
||||
\item Policies to apply are chosen through the
|
||||
{\code cmake\_minimum\_required(VERSION ...)}
|
||||
construct.
|
||||
|
||||
\vspace{1em}
|
||||
|
||||
\item CMake strives hard to provide backwards
|
||||
compatibility with the version you specify.
|
||||
|
||||
\vspace{1em}
|
||||
|
||||
\item Changes in behavior from higher CMake
|
||||
versions will not be applied.
|
||||
\end{itemize}
|
||||
\end{frame}
|
||||
|
||||
% --------------------------------------------------
|
||||
|
||||
\subsection{Q\&A}
|
||||
|
|
|
@ -87,20 +87,42 @@
|
|||
|
||||
\vspace{1em}
|
||||
|
||||
Each target corresponds to an executable or library, or is a custom
|
||||
Each target either corresponds to an executable or library, or is a custom
|
||||
target containing custom commands.
|
||||
|
||||
\vspace{1em}
|
||||
|
||||
\begin{codebox}{CMake}{}
|
||||
add_library(archive archive.cpp zip.cpp lzma.cpp)
|
||||
add_executable(zipapp zipapp.cpp)
|
||||
target_link_libraries(zipapp archive)
|
||||
\end{codebox}
|
||||
\begin{codebox}{CMake}{}
|
||||
add_library(archive archive.cpp zip.cpp lzma.cpp)
|
||||
add_executable(zipapp zipapp.cpp)
|
||||
target_link_libraries(zipapp archive)
|
||||
\end{codebox}
|
||||
|
||||
\end{frame}
|
||||
|
||||
% --------------------------------------------------------------------
|
||||
|
||||
\begin{frame}[containsverbatim]
|
||||
\frametitle{Custom Target and Dependencies}
|
||||
|
||||
Example with custom targets:
|
||||
|
||||
\vspace{1em}
|
||||
|
||||
\begin{codebox}{CMake}{}
|
||||
add_custom_command(OUTPUT output.file
|
||||
COMMAND generator
|
||||
--in ${CMAKE_CURRENT_SOURCE_DIR}/input.file
|
||||
--out output.file
|
||||
DEPENDS input.file
|
||||
COMMENT "This is an example invocation of a generator"
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
|
||||
|
||||
add_custom_target(my-target
|
||||
DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/output.file)
|
||||
\end{codebox}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}[containsverbatim]
|
||||
\frametitle{Transitive Usage Requirements}
|
||||
|
||||
|
|
Loading…
Reference in New Issue