It is a slight extension of build_system.txt
---
doc/Makefile | 3 +-
doc/build_system.texi | 62 +++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 64 insertions(+), 1 deletions(-)
create mode 100644 doc/build_system.texi
diff --git a/doc/Makefile b/doc/Makefile
index 0acd984..2474f6a 100644
--- a/doc/Makefile
+++ b/doc/Makefile
@@ -1,7 +1,8 @@
MANPAGES = $(PROGS-yes:%=doc/%.1)
PODPAGES = $(PROGS-yes:%=doc/%.pod)
HTMLPAGES = $(PROGS-yes:%=doc/%.html) \
- doc/developer.html \
+ doc/build_system.html \
+ doc/developer.html \
doc/faq.html \
doc/fate.html \
doc/general.html \
diff --git a/doc/build_system.texi b/doc/build_system.texi
new file mode 100644
index 0000000..a0593f2
--- /dev/null
+++ b/doc/build_system.texi
@@ -0,0 +1,62 @@
+\input texinfo @c -*- texinfo -*-
+
+@settitle Build System Guide
+
+@titlepage
+@center @titlefont{Build System Guide}
+@end titlepage
+
+@top
+
+@contents
+
+@chapter Structure
+
+The Libav build system is composed by a @command{bash} script,
+@command{configure}, and a number of @command{make} scripts.
+
+@command{configure} generates @code{config.mak}, @code{config.h}, and
+the @command{pkg-config} files, then by running @command{make} is
+possible to build and install Libav.
+
+The @command{make} scripts are non-recoursive, the common code needed
+to build the different libraries is located in @code{subdir.mak},
+@code{common.mak} contains the common definitions for the internal
+variables, the @code{Makefile} present in each directory contain just the
+list of the objects and headers that compose the specific library.
+
+
+@section Makefile variables
+
+@table @option
+@item V
+Disable the default terse mode, the full command issued by make and its
+output will be shown on the screen.
+@item DESTDIR
+Destination directory for the install targets, useful to prepare packages
+or install Libav in cross-environments.
+@end table
+
+@section Makefile targets
+
+@table @option
+@item all
+Default target, builds all the libraries and the executables.
+@item install
+Install headers, libraries and programs.
+@item examples
+Build the basic examples
+@item documentation
+Generates the html documentation and the programs man pages
+@item config
+Rerun configure with the options previously given. Useful when
+updating sources or developing new features.
+@item clean
+Default clean directive, removes object files and binaries
+@item distclean
+Removes everything generated by @command{configure} and @command{make}.
+If using a @command{git} tree, @command{git clean -x -d -f} is a quicker
+alternative.
+@end table
+
+@bye
--
1.7.8.rc1
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel