[FE training-materials-updates] slides/autotools-advanced: make dist details
Boris Brezillon
boris.brezillon at free-electrons.com
Fri May 22 17:13:26 CEST 2015
Repository : git://git.free-electrons.com/training-materials.git
On branch : mtd-rework-WIP
Link : http://git.free-electrons.com/training-materials/commit/?id=c96ed27d5dca988caf02472f4155f1b103eb0567
>---------------------------------------------------------------
commit c96ed27d5dca988caf02472f4155f1b103eb0567
Author: Thomas Petazzoni <thomas.petazzoni at free-electrons.com>
Date: Wed May 20 15:43:30 2015 +0200
slides/autotools-advanced: make dist details
Signed-off-by: Thomas Petazzoni <thomas.petazzoni at free-electrons.com>
>---------------------------------------------------------------
c96ed27d5dca988caf02472f4155f1b103eb0567
slides/autotools-advanced/autotools-advanced.tex | 35 +++++++++++++++++++++++-
1 file changed, 34 insertions(+), 1 deletion(-)
diff --git a/slides/autotools-advanced/autotools-advanced.tex b/slides/autotools-advanced/autotools-advanced.tex
index b4fa21e..e8870fe 100644
--- a/slides/autotools-advanced/autotools-advanced.tex
+++ b/slides/autotools-advanced/autotools-advanced.tex
@@ -823,7 +823,7 @@ $ find /tmp/test
\item Needed to support changes in the library interface
\item Each system handles library versioning differently
\item \code{libtool} does not use the traditional
- <major>.<minor>.<revision>
+ \code{<major>.<minor>.<revision>}
\item It uses a more abstract representation, converted differently
depending on the system on which you're building.
\item \code{libtool} representation is
@@ -979,6 +979,39 @@ libtool: link: ranlib .libs/libmyhello.a
\end{frame}
+\begin{frame}[fragile]{make dist}
+
+ \begin{itemize}
+ \item \code{make dist} generates a tarball to release the software
+ \item All files listed in \code{_SOURCES} variables are
+ automatically included, as well as the necessary {\em autotools}
+ files
+ \item Additional files can be added to the distribution using the
+ \code{EXTRA_DIST} variable in \code{Makefile.am}:
+\begin{block}{Makefile.am}
+\begin{minted}[fontsize=\tiny]{make}
+# These files are used in the preparation of a release
+EXTRA_DIST += \
+ PrepareRelease \
+ CheckMan \
+ CleanTxt \
+ [...]
+\end{minted}
+\end{block}
+\item Distribution can also be controlled using the \code{dist} and
+ \code{nodist} {\em automake} product modifiers:
+\begin{block}{Makefile.am}
+\begin{minted}[fontsize=\tiny]{make}
+nodist_include_HEADERS += pcrecpparg.h
+dist_doc_DATA = doc/pcre.txt
+\end{minted}
+\end{block}
+
+\end{itemize}
+
+
+\end{frame}
+
\setuplabframe
{More advanced {\em autotools} usage}
{
More information about the training-materials-updates
mailing list