<feed xmlns='http://www.w3.org/2005/Atom'>
<title>buildroot-novena/support/scripts/graph-depends, branch 2013.02</title>
<subtitle>build system for the novena open hardware laptop board</subtitle>
<id>https://git.bnewbold.net/buildroot-novena/atom?h=2013.02</id>
<link rel='self' href='https://git.bnewbold.net/buildroot-novena/atom?h=2013.02'/>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/buildroot-novena/'/>
<updated>2013-01-02T21:00:00Z</updated>
<entry>
<title>graph-depends: add to exclusion list</title>
<updated>2013-01-02T21:00:00Z</updated>
<author>
<name>Yann E. MORIN</name>
<email>yann.morin.1998@free.fr</email>
</author>
<published>2013-01-02T10:36:03Z</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/buildroot-novena/commit/?id=d946a1af93741a7ae22ec69be865a6c14a37fcf1'/>
<id>urn:sha1:d946a1af93741a7ae22ec69be865a6c14a37fcf1</id>
<content type='text'>
Add the root-password internal target to the exclusion list.

Fixes failures like:
    Getting dependencies for [... 'target-root-passwd' ...]
    Error getting dependencies [... 'target-root-passwd' ...]

Which is easily singled out with:
    $ make target-root-passwd-show-depends
    make[1]: *** No rule to make target `target-root-passwd-show-depends'.

Signed-off-by: "Yann E. MORIN" &lt;yann.morin.1998@free.fr&gt;
Cc: Thomas Petazzoni &lt;thomas.petazzoni@free-electrons.com&gt;
Signed-off-by: Peter Korsgaard &lt;jacmet@sunsite.dk&gt;
</content>
</entry>
<entry>
<title>graph-depends: remove support for "unknown" packages</title>
<updated>2013-01-02T18:00:04Z</updated>
<author>
<name>Thomas Petazzoni</name>
<email>thomas.petazzoni@free-electrons.com</email>
</author>
<published>2013-01-02T07:08:53Z</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/buildroot-novena/commit/?id=1063539c536662f95a0bb14b70b2db7396602564'/>
<id>urn:sha1:1063539c536662f95a0bb14b70b2db7396602564</id>
<content type='text'>
The "unknown" packages mechanism was used to render packages that did
not implement the make &lt;pkg&gt;-show-depends target, i.e the packages
that were not yet converted to one of the package infrastructures.

Since now all packages have been converted, we can remove this
"unknown" packages feature.

Signed-off-by: Thomas Petazzoni &lt;thomas.petazzoni@free-electrons.com&gt;
Signed-off-by: Peter Korsgaard &lt;jacmet@sunsite.dk&gt;
</content>
</entry>
<entry>
<title>graph-depends: update copyright</title>
<updated>2013-01-02T17:59:43Z</updated>
<author>
<name>Thomas Petazzoni</name>
<email>thomas.petazzoni@free-electrons.com</email>
</author>
<published>2013-01-02T07:08:52Z</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/buildroot-novena/commit/?id=58cd46aa0489f1449b28806d876e46101f7b9ca9'/>
<id>urn:sha1:58cd46aa0489f1449b28806d876e46101f7b9ca9</id>
<content type='text'>
Signed-off-by: Thomas Petazzoni &lt;thomas.petazzoni@free-electrons.com&gt;
Signed-off-by: Peter Korsgaard &lt;jacmet@sunsite.dk&gt;
</content>
</entry>
<entry>
<title>graph-depends: fix comment</title>
<updated>2013-01-02T17:59:31Z</updated>
<author>
<name>Thomas Petazzoni</name>
<email>thomas.petazzoni@free-electrons.com</email>
</author>
<published>2013-01-02T07:08:51Z</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/buildroot-novena/commit/?id=393d2a78581a6f49896b81eb1dae9a8aa970c7df'/>
<id>urn:sha1:393d2a78581a6f49896b81eb1dae9a8aa970c7df</id>
<content type='text'>
Since 9bc7b1d4ae694b818f941410d1ff59316a2bba6e, all X.org .mk files
are parsed unconditionally, even if BR2_PACKAGE_XORG7 is disabled.

Signed-off-by: Thomas Petazzoni &lt;thomas.petazzoni@free-electrons.com&gt;
Signed-off-by: Peter Korsgaard &lt;jacmet@sunsite.dk&gt;
</content>
</entry>
<entry>
<title>graph-depends: optimize execution speed</title>
<updated>2013-01-02T17:58:24Z</updated>
<author>
<name>Thomas Petazzoni</name>
<email>thomas.petazzoni@free-electrons.com</email>
</author>
<published>2013-01-02T07:08:50Z</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/buildroot-novena/commit/?id=4359685e145798f06d88eb2e5ba5979ba5de882e'/>
<id>urn:sha1:4359685e145798f06d88eb2e5ba5979ba5de882e</id>
<content type='text'>
Until now, graph-depends was calling "make &lt;pkg&gt;-show-depends"
individually for eack package, which was very slow. Now, it calls
"make &lt;pkg1&gt;-show-depends &lt;pkg2&gt;-show-depends ... &lt;pkgN&gt;-show-depends"
for all packages it knows, and then does that recursively. It reduces
the number of make invocations to the deepest dependency chain in the
current configuration, instead of having a number of make invocations
equal to the number of enabled packages.

For a configuration with xvkbd enabled (which brings a significant
number of X.org dependencies) and a tar root filesystem, the time to
execute graph-depends was:

real	5m14.944s
user	4m53.590s
sys	0m14.069s

After our optimizations, it is now:

real	0m33.096s
user	0m30.878s
sys	0m1.472s

Signed-off-by: Thomas Petazzoni &lt;thomas.petazzoni@free-electrons.com&gt;
Signed-off-by: Peter Korsgaard &lt;jacmet@sunsite.dk&gt;
</content>
</entry>
<entry>
<title>graph-depends: use a separate TARGET_EXCEPTIONS variable</title>
<updated>2013-01-02T17:57:51Z</updated>
<author>
<name>Thomas Petazzoni</name>
<email>thomas.petazzoni@free-electrons.com</email>
</author>
<published>2013-01-02T07:08:49Z</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/buildroot-novena/commit/?id=41af66ef393754381778ade4228fef7f1ed3cf52'/>
<id>urn:sha1:41af66ef393754381778ade4228fef7f1ed3cf52</id>
<content type='text'>
In preparation for more graph-depends improvements, use a
TARGET_EXCEPTIONS list to list all the targets that should be ignored
while building the dependency graph.

Signed-off-by: Thomas Petazzoni &lt;thomas.petazzoni@free-electrons.com&gt;
Signed-off-by: Peter Korsgaard &lt;jacmet@sunsite.dk&gt;
</content>
</entry>
<entry>
<title>graph-depends: remove redundant dependencies</title>
<updated>2013-01-02T17:57:45Z</updated>
<author>
<name>Thomas Petazzoni</name>
<email>thomas.petazzoni@free-electrons.com</email>
</author>
<published>2013-01-02T07:08:48Z</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/buildroot-novena/commit/?id=2404c0db7f32b5194d5a77c7a8040ad1dbf81a45'/>
<id>urn:sha1:2404c0db7f32b5194d5a77c7a8040ad1dbf81a45</id>
<content type='text'>
When doing a full graph of the dependencies, graph-depends starts by
doing a "make show-targets", which lists all the packages registered
in the $(TARGETS) variable. This variable contains all packages that
are enabled according to the .config file. Then, for each of those
packages, we used to create a "all" -&gt; "package" dependency, even if
in fact most of some packages are already dependencies of other
packages. This creates a needlessly complex dependency graph.

This patch modifies graph-depends so that it filters out the unneeded
"all" -&gt; "package" dependencies when "package" is already the
dependency of another package.

For example, if you have a configuration with libpng (which selects
zlib), "make show-targets" displays "libpng zlib", so graph-depends
used to create the following dependencies: (all -&gt; libpng, all -&gt;
zlib, libpng -&gt; zlib). However, the (all -&gt; zlib) dependency is not
really needed, as zlib is already the dependency of libpng. Those
dependencies are now filtered out.

Signed-off-by: Thomas Petazzoni &lt;thomas.petazzoni@free-electrons.com&gt;
Signed-off-by: Peter Korsgaard &lt;jacmet@sunsite.dk&gt;
</content>
</entry>
<entry>
<title>support/graph-depends: fix out-of-tree usage</title>
<updated>2012-08-14T13:09:21Z</updated>
<author>
<name>Yann E. MORIN</name>
<email>yann.morin.1998@free.fr</email>
</author>
<published>2012-08-12T20:27:07Z</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/buildroot-novena/commit/?id=a293d4ab338c84f450261371085cef1cf69bcf96'/>
<id>urn:sha1:a293d4ab338c84f450261371085cef1cf69bcf96</id>
<content type='text'>
graph-depends calls make to get the list of packages, and the
dependencies of each package.

When called out-of-tree, the Makefile is a wrapper that calls
the real Makefile, so make will spit out a line like:
  make -C /path/to/buildroot O=/path/to/build-dir show-targets

which graph-depends wrongly believes is part of the target list.

Be silent when calling make, as we really only want the target
and dependency lists.

Signed-off-by: "Yann E. MORIN" &lt;yann.morin.1998@free.fr&gt;
Signed-off-by: Thomas Petazzoni &lt;thomas.petazzoni@free-electrons.com&gt;
</content>
</entry>
<entry>
<title>graph-depends: ignore a few more uninteresting targets</title>
<updated>2012-07-17T17:44:26Z</updated>
<author>
<name>Thomas Petazzoni</name>
<email>thomas.petazzoni@free-electrons.com</email>
</author>
<published>2012-07-07T15:51:17Z</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/buildroot-novena/commit/?id=8278ed43ef159d8b9dfe1be2d41ad5bcd8241dcc'/>
<id>urn:sha1:8278ed43ef159d8b9dfe1be2d41ad5bcd8241dcc</id>
<content type='text'>
Signed-off-by: Thomas Petazzoni &lt;thomas.petazzoni@free-electrons.com&gt;
</content>
</entry>
<entry>
<title>support: move scripts/ to a new support/ directory</title>
<updated>2011-09-17T06:14:11Z</updated>
<author>
<name>Thomas Petazzoni</name>
<email>thomas.petazzoni@free-electrons.com</email>
</author>
<published>2011-08-31T21:35:02Z</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/buildroot-novena/commit/?id=f082c7c5cf72296566dcf92bba4fcb4c95f2186f'/>
<id>urn:sha1:f082c7c5cf72296566dcf92bba4fcb4c95f2186f</id>
<content type='text'>
Signed-off-by: Thomas Petazzoni &lt;thomas.petazzoni@free-electrons.com&gt;
Signed-off-by: Peter Korsgaard &lt;jacmet@sunsite.dk&gt;
</content>
</entry>
</feed>
