<feed xmlns='http://www.w3.org/2005/Atom'>
<title>build_soong/bootstrap.bash, branch android-10.0.0_r6</title>
<subtitle>Fork of build/soong
</subtitle>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant-next/build_soong/'/>
<entry>
<title>Add license headers to all go and shell files</title>
<updated>2017-11-17T23:05:26+00:00</updated>
<author>
<name>Colin Cross</name>
<email>ccross@android.com</email>
</author>
<published>2017-11-17T18:55:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant-next/build_soong/commit/?id=d00350c61bd1ea29ef34da243ac08364a2b9527a'/>
<id>d00350c61bd1ea29ef34da243ac08364a2b9527a</id>
<content type='text'>
Test: none
Change-Id: I75c443e05f2b1e17fcb6823182717d2e6f5df7c4
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Test: none
Change-Id: I75c443e05f2b1e17fcb6823182717d2e6f5df7c4
</pre>
</div>
</content>
</entry>
<entry>
<title>Obsolete bootstrap.bash and ./soong wrappers</title>
<updated>2017-08-18T17:13:22+00:00</updated>
<author>
<name>Dan Willemsen</name>
<email>dwillemsen@google.com</email>
</author>
<published>2017-08-04T23:04:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant-next/build_soong/commit/?id=99a75cd2a5102e72b07a7614e84f8624d3c2ddd1'/>
<id>99a75cd2a5102e72b07a7614e84f8624d3c2ddd1</id>
<content type='text'>
We can call directly into the blueprint bootstrap.bash using values that
soong_ui has already calculated.

Instead of calling into blueprint.bash, build minibp with microfactory,
and directly run ninja. This allows us to get individual tracing data
from each component.

Test: m -j blueprint_tools
Test: m clean; m -j blueprint_tools
Change-Id: I2239943c9a8a3ad6e1a40fa0dc914421f4b5202c
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We can call directly into the blueprint bootstrap.bash using values that
soong_ui has already calculated.

Instead of calling into blueprint.bash, build minibp with microfactory,
and directly run ninja. This allows us to get individual tracing data
from each component.

Test: m -j blueprint_tools
Test: m clean; m -j blueprint_tools
Change-Id: I2239943c9a8a3ad6e1a40fa0dc914421f4b5202c
</pre>
</div>
</content>
</entry>
<entry>
<title>Add --skip-make to replace Soong's blueprint wrapper with soong_ui</title>
<updated>2017-08-09T05:49:28+00:00</updated>
<author>
<name>Dan Willemsen</name>
<email>dwillemsen@google.com</email>
</author>
<published>2017-08-04T22:06:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant-next/build_soong/commit/?id=e0879fc3aef951d206eea97fec7d8ffd0f78db05'/>
<id>e0879fc3aef951d206eea97fec7d8ffd0f78db05</id>
<content type='text'>
This way we only have one way to start a build, which always has logging
/ tracing / etc, even if we don't need Kati.

There's two ways to use this:

As a direct replacement for mkdir out; cd out; ../bootstrap.bash;
./soong -- as long as --skip-make is always passed, we'll never run
Kati, and Soong will run outside of it's "make" mode. This preserves
most of the speed, and allows full user control over the Soong
configuration.

A (experimental, dangerous) way to temporarily bypass the product
variable and kati steps of a build. As long as a user is sure that
nothing has changed from the last build, and they know exactly which
Ninja targets they want to build (which may not be the same as the
arguments normally passed to 'm'), this can lead to shorter build
startup times.

Test: rm -rf out; m --skip-make libc
Test: rm -rf out; m libc; m --skip-make libc
Test: rm -rf out; mkdir out; cd out; ../bootstrap.bash; ./soong libc
Test: build/soong/scripts/build-ndk-prebuilts.sh
Change-Id: Ic0f91167b5779dba3f248a379fbaac67a75a946e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This way we only have one way to start a build, which always has logging
/ tracing / etc, even if we don't need Kati.

There's two ways to use this:

As a direct replacement for mkdir out; cd out; ../bootstrap.bash;
./soong -- as long as --skip-make is always passed, we'll never run
Kati, and Soong will run outside of it's "make" mode. This preserves
most of the speed, and allows full user control over the Soong
configuration.

A (experimental, dangerous) way to temporarily bypass the product
variable and kati steps of a build. As long as a user is sure that
nothing has changed from the last build, and they know exactly which
Ninja targets they want to build (which may not be the same as the
arguments normally passed to 'm'), this can lead to shorter build
startup times.

Test: rm -rf out; m --skip-make libc
Test: rm -rf out; m libc; m --skip-make libc
Test: rm -rf out; mkdir out; cd out; ../bootstrap.bash; ./soong libc
Test: build/soong/scripts/build-ndk-prebuilts.sh
Change-Id: Ic0f91167b5779dba3f248a379fbaac67a75a946e
</pre>
</div>
</content>
</entry>
<entry>
<title>Switch to blueprint's microfactory</title>
<updated>2017-07-24T22:29:14+00:00</updated>
<author>
<name>Dan Willemsen</name>
<email>dwillemsen@google.com</email>
</author>
<published>2017-07-19T02:39:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant-next/build_soong/commit/?id=91f9b547672ecb20a308d52df3a0c09d616cb1b9'/>
<id>91f9b547672ecb20a308d52df3a0c09d616cb1b9</id>
<content type='text'>
Bug: 63720725
Test: m -j nothing
Test: mkdir o; ../bootstrap.bash; ./soong
Change-Id: Id1f8312678f36afd08b49f8511fec3e6e5ba8de2
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Bug: 63720725
Test: m -j nothing
Test: mkdir o; ../bootstrap.bash; ./soong
Change-Id: Id1f8312678f36afd08b49f8511fec3e6e5ba8de2
</pre>
</div>
</content>
</entry>
<entry>
<title>Move shell and python scripts to scripts/ directory</title>
<updated>2016-04-29T20:59:56+00:00</updated>
<author>
<name>Colin Cross</name>
<email>ccross@android.com</email>
</author>
<published>2016-04-27T23:10:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant-next/build_soong/commit/?id=1474741435774f15923967e50bf7531a3cc9d4f7'/>
<id>1474741435774f15923967e50bf7531a3cc9d4f7</id>
<content type='text'>
Change-Id: Icdff44a54d14ddfc2266d99cf0578a8105716918
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: Icdff44a54d14ddfc2266d99cf0578a8105716918
</pre>
</div>
</content>
</entry>
<entry>
<title>Improve BUILDDIR handling with symlinks</title>
<updated>2016-03-23T02:53:36+00:00</updated>
<author>
<name>Dan Willemsen</name>
<email>dwillemsen@google.com</email>
</author>
<published>2016-03-22T21:08:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant-next/build_soong/commit/?id=6ac18ecb84332b6e84f498434812541f58a64ed4'/>
<id>6ac18ecb84332b6e84f498434812541f58a64ed4</id>
<content type='text'>
If BUILDDIR is a local symlink to another directory in the same parent
directory (out -&gt; out.angler), then using out and .. as relative paths
to get back and forth work.

But if BUILDDIR is a symlink to another directory altogether (out -&gt;
/mnt/sdd/out.master), then we shouldn't be relying on relative paths (so
that the source directory can still be moved).

Change-Id: I946c8116090410ab2b935eafba9b6e96f5f2f1dd
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If BUILDDIR is a local symlink to another directory in the same parent
directory (out -&gt; out.angler), then using out and .. as relative paths
to get back and forth work.

But if BUILDDIR is a symlink to another directory altogether (out -&gt;
/mnt/sdd/out.master), then we shouldn't be relying on relative paths (so
that the source directory can still be moved).

Change-Id: I946c8116090410ab2b935eafba9b6e96f5f2f1dd
</pre>
</div>
</content>
</entry>
<entry>
<title>Use SRCDIR as a working directory</title>
<updated>2015-09-18T06:42:25+00:00</updated>
<author>
<name>Dan Willemsen</name>
<email>dwillemsen@google.com</email>
</author>
<published>2015-07-14T07:39:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant-next/build_soong/commit/?id=87b17d1ff46ab86ab897c50435c423f28be4895f'/>
<id>87b17d1ff46ab86ab897c50435c423f28be4895f</id>
<content type='text'>
The existing behavior of using the build directory as the working
directory is useful if you want to move/copy the output directory around
and SRCDIR still refers the the source. But, it's more useful to have
the source directory be the working directory. Tools like cpp(__FILE__)
and other debug prints embed relative paths from the working directory.
We also have tools that expect the working directory to be $TOP.

Change-Id: Ia0f1d3c6b7df72d61cf5628efa2baa98bd19775b
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The existing behavior of using the build directory as the working
directory is useful if you want to move/copy the output directory around
and SRCDIR still refers the the source. But, it's more useful to have
the source directory be the working directory. Tools like cpp(__FILE__)
and other debug prints embed relative paths from the working directory.
We also have tools that expect the working directory to be $TOP.

Change-Id: Ia0f1d3c6b7df72d61cf5628efa2baa98bd19775b
</pre>
</div>
</content>
</entry>
<entry>
<title>Build and run tests during bootstrap</title>
<updated>2015-06-26T18:51:03+00:00</updated>
<author>
<name>Dan Willemsen</name>
<email>dwillemsen@google.com</email>
</author>
<published>2015-06-24T02:46:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant-next/build_soong/commit/?id=e5e20331465457b7708b6590b0c977889d0e7688'/>
<id>e5e20331465457b7708b6590b0c977889d0e7688</id>
<content type='text'>
Change-Id: If40489d74136af4d15d4ff26210a50975a462497
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: If40489d74136af4d15d4ff26210a50975a462497
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix bootstrap.bash -r with Android.bp</title>
<updated>2015-06-11T01:07:39+00:00</updated>
<author>
<name>Dan Willemsen</name>
<email>dwillemsen@google.com</email>
</author>
<published>2015-06-10T23:59:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant-next/build_soong/commit/?id=98c93e9fbfa32735e40e2f6b28fce926d5c30e66'/>
<id>98c93e9fbfa32735e40e2f6b28fce926d5c30e66</id>
<content type='text'>
Change-Id: I8182e57105b1c17254e082f6b72d2504befb7870
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: I8182e57105b1c17254e082f6b72d2504befb7870
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix soong scripts to support directories with spaces</title>
<updated>2015-04-10T22:50:37+00:00</updated>
<author>
<name>Colin Cross</name>
<email>ccross@android.com</email>
</author>
<published>2015-04-10T22:45:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant-next/build_soong/commit/?id=24679676cad44947ea8752d1d193b0541d942a16'/>
<id>24679676cad44947ea8752d1d193b0541d942a16</id>
<content type='text'>
Using a path with a space to execute soong is unlikely, but it
might as well work.  Quote all the paths in the soong scripts.

Soong and blueprint will still both fail if the relative path between
the soong script and the source directory has a space in it, but this
is even more unlikely.

Change-Id: I8986f10115209d69b09b82ffea26e4b10d29c197
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Using a path with a space to execute soong is unlikely, but it
might as well work.  Quote all the paths in the soong scripts.

Soong and blueprint will still both fail if the relative path between
the soong script and the source directory has a space in it, but this
is even more unlikely.

Change-Id: I8986f10115209d69b09b82ffea26e4b10d29c197
</pre>
</div>
</content>
</entry>
</feed>
