+\begin{frame}[fragile]
+ \frametitle{Doelwitten en benodigdheden}
+
+ \begin{lstlisting}[caption={Skelet van een \Make{} regel}]
+target: pre1 pre2 ... pren
+ cmd1
+ cmd2
+ ...
+ cmdm
+ \end{lstlisting}
+
+ \begin{lstlisting}[language=sh,caption={Aanroep van een make}]
+make # Standaard target
+make target # Specifiek target
+make t1 t2 t3 # Meerdere targets
+make -C map # Voer make uit in een andere map
+make -B # Hercompileer alles, ongeacht of het nodig is
+make -f file # Voer make uit met een makefile die niet een
+ # standaard naam heeft.
+make -n # Doe een dry run
+make -p # Print de hele database van (ingebouwde) regels.
+make -r # Gebruik geen ingebouwde regels.
+make -j N # Draai make met N threads.
+ \end{lstlisting}
+\end{frame}
+
+\begin{frame}[fragile]
+ \frametitle{Variabelen}
+
+ \begin{block}{Declareren van variabelen}
+ \begin{lstlisting}
+NAAM:=frob
+NAAM=nic
+NAAM+=ator
+NAAM?=frobbel
+override
+L=variabele met 1 letter
+
+all: $(NAAM)
+ touch $L
+ \end{lstlisting}
+ \end{block}
+
+ \pause%
+ \begin{block}{Veelgebruikte ingebouwde variabelen}
+ \begin{lstlisting}
+$@ target
+$< eerste prerequisite
+$? alle prerequisites nieuwer dan target
+$^ alle prerequisites zonder dubbelen
+$+ alle prerequisites
+$% naam van een archief file
+ \end{lstlisting}
+ \end{block}
+\end{frame}
+
+\begin{frame}[fragile]
+ \frametitle{Patronen en ingebouwde regels}
+ \begin{block}{\textsc{\%}}
+ \begin{lstlisting}
+%.o: %.c
+ gcc -c -o $@ $<
+
+%.pdf: %.tex
+ pdflatex $<
+
+a.out: %.cxx
+ g++ $<
+ \end{lstlisting}
+ \end{block}
+
+ \begin{block}{Ingebouwd}
+ \begin{itemize}
+ \item Vaak complex
+ \item Je kan er op inhaken dmv standaard variabelen
+ \item Maak ze zichtbaar met: \verb#$ make -p#
+ \end{itemize}
+ \end{block}
+\end{frame}
+
+\begin{frame}[fragile]
+ \frametitle{Functies}
+ \begin{block}{String functies}
+ \begin{lstlisting}
+$(filter pattern,text)
+$(filter-out pattern,text)
+$(subst search,replace,text)
+$(word n,text))
+$(findstring string,text)
+ \end{lstlisting}
+ \end{block}
+
+ \begin{block}{Pad functies}
+ \begin{lstlisting}
+$(wildcard *.tex)
+$(dir text)
+$(addsuffix suffix,lijst)
+$(addprefix suffix,lijst)
+$(basename text)
+ \end{lstlisting}
+ \end{block}
+
+ \begin{block}{Andere functies}
+ \begin{lstlisting}
+$(shell date)
+$(if if,then,else)
+$(error text)
+$(foreach ident,lijst)
+ \end{lstlisting}
+ \end{block}
+\end{frame}