GN: Add notion of 'complete' static libraries, akin to GYP.
commita426cf930c6bb1955b2662be12534fc9dce2030e
authorcmasone <cmasone@chromium.org>
Sat, 13 Sep 2014 00:51:47 +0000 (12 17:51 -0700)
committerCommit bot <commit-bot@chromium.org>
Sat, 13 Sep 2014 00:55:05 +0000 (13 00:55 +0000)
tree2d4ccf864e8be5fb025f4a0f2fd37114d456299e
parent35099b0441b16ba4ed5f3a331f77bd59f6610926
GN: Add notion of 'complete' static libraries, akin to GYP.

In general, GN assumes that static libraries are intermediate targets and
will forward their child dependencies up the tree until a "final" target
is reached. Until now, this meant only shared_library and executable targets.
This change introduces the notion of a "complete" static_library target
which is linked and, as such, suitable for distribution.

BUG=413776
TEST=gn_unittests
R=brettw@chromium.org

Review URL: https://codereview.chromium.org/565283002

Cr-Commit-Position: refs/heads/master@{#294709}
tools/gn/binary_target_generator.cc
tools/gn/binary_target_generator.h
tools/gn/ninja_binary_target_writer.cc
tools/gn/ninja_binary_target_writer_unittest.cc
tools/gn/target.cc
tools/gn/target.h
tools/gn/target_unittest.cc
tools/gn/variables.cc
tools/gn/variables.h