]> rtime.felk.cvut.cz Git - omk.git/blobdiff - doc/omk-manual.texinfo
Removed binary-pass and converted to link-pseudo-pass - it doesn't work
[omk.git] / doc / omk-manual.texinfo
index b0863abcfb29cfc16c19effb96081bd752d72c84..7c026a7c6cc779cb1835c1cd84df0c7f06952ddc 100644 (file)
@@ -8,7 +8,7 @@
 @copying
 Manual for Ocera Make System (OMK) version $Id$
 
-Copyright @copyright{} 2007, 2008 Michal Sojka, Pavel Píša
+Copyright @copyright{} 2007, 2008 Michal Sojka, Pavel Pisa
 @end copying
 
 @titlepage
@@ -509,6 +509,7 @@ classic Makefiles that provides all the needed features.
 You can instruct OMK to descend to a (sub)directory by setting the
 @code{SUBDIRS} variable in @file{Makefile.omk}.
 
+@anchor{SUBDIRS}
 @defvar SUBDIRS
   This variable contains a list of directories, in which compilation
   must be also invoked. Usually, names of subdirectories are used, but
@@ -739,9 +740,10 @@ directory.
 @node Common Variables,  , Using Configuration Parameters, Configuration and Conditional Compilation
 @subsection Common Variables
 
-It is common practice to use @file{config.omk} to store project-wide
-settings. Here is the list of variables, which are commonly set here
-(but they can also be set elsewhere, e.g. in @file{Makefile.omk}).
+It is common practice to use @file{config.target} or @file{config.omk}
+to store project-wide settings. Here is the list of variables, which are
+commonly set here (but they can also be set elsewhere, e.g. in
+@file{Makefile.omk}).
 
 You can easily ``reconfigure'' your project by changing the
 @file{config.omk} file. It is useful to have several configurations
@@ -1382,7 +1384,34 @@ list for all options if Kconfig is used.
 @node OMK Development, Variable Index, Original README, Top
 @chapter OMK Development
 
+This section is far from complete. Its purpose is to document internals
+of @file{Makefile.rules} as well as other things needed only by people
+who hack OMK itself.
 
+@section Passes
+
+A pass is created by instantiation of @code{omk_pass_template} with
+@var{pass-name} as one of arguments. This defines several targets which
+are described here:
+
+@table @code
+@item @var{pass-name}
+Target used to invoke the individual pass either from command line or
+from inside of @file{Makefile.rules}.
+
+@item @var{pass-name}-submakes
+Invoked recursively from @var{pass-name}. The reason for this is the
+fact that 
+
+@item @var{pass-name}-this-dir
+This target calls make recursively once again with @var{pass-name}-local
+target, which does the real-work. Make's working directory is set to the
+corresponding directory in @file{_build} tree and the -local
+
+@item @var{pass-name}-@var{dirname}-subdir
+This target is responsible for recursive invocation of @command{make} in
+subdirectories specified in @code{@ref{SUBDIRS}} variable.
+@end table
 
 @node Variable Index,  , OMK Development, Top
 @unnumbered Variable Index