On 21/12/2015 19:16, KI7MT wrote:
> Building a single target is OK (short a quick). When trying to "install"
> the single target after building it, that is when the full build seems
> to be triggered, apart from the docs, manpages etc.
Hi Greg,
that is because the 'all' target is a prerequisite of the 'install'
target. It must be that way otherwise install would not be a repeatable
target. You can also look at the other way around, the 'all' target is
everything that is needed to make the product so it must be up to date
before running install.
A similar relationship exists for the 'package' target which has a
prerequisite of the 'install' target, except that it does the install
into a separate install root which is cleared before running. This is so
that a clean build is always done prior to making a package.
Related to all this is why I aim to get all executable targets runnable
from the build tree so that developers need not do the install target to
test WSJT-X.
Note that even though the 'install' target should be run, it is optimize
like other make targets and only builds and installs out of date
components. So for example in:
$ make install -j
$ touch <source-dir>/main.cpp
$ make install
the second make only builds and installs out of date components i.e.
compile main.cpp, link wsjtx, install wsjtx. So the full build may be
triggered but only exactly what needs rebuilding due to being out of
date actually gets built.
73
Bill
G4WJS.
------------------------------------------------------------------------------
_______________________________________________
wsjt-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wsjt-devel