Merge commit '076f0bfbab74f725f2c643b8639efe2bb05a0f61'
* commit '076f0bfbab74f725f2c643b8639efe2bb05a0f61':
Fixed PDK links that point to the Creative Commons License
Make some changes needed to applypatch in order to store the recovery
image in the system partition as a binary patch relative to the boot
image:
- make applypatch use shared libraries, so it's smaller. It will
need to be on the main system so it can install the recovery
image. Make an applypatch_static binary for use in recovery
packages (still needed for updating cupcake devices to donut).
- output the results of patching to an in-memory buffer and write
that to the partition; there's no convenient /tmp for us to us.
(This should be basically a no-op in recovery, since /tmp is a
ramdisk anyway.)
Interpret a "*" in the "require version-bootloader" line as "don't
require any specific bootloader". Sholes OTAs include the bootloader
and the main system in the same package.
@since tags in the code, it's pulled from the API XML files also used by
apicheck.
The code now reads the apicheck XML, and applies it's versions to the DroidDoc
class models. The models output the version to HDF, and that's picked up by
the CS templates.
The clearsilver templates will be changed to be pretty in a follow up change.
Conflicts:
tools/droiddoc/src/DroidDoc.java
@since tags in the code, it's pulled from the API XML files also used by
apicheck.
The code now reads the apicheck XML, and applies it's versions to the DroidDoc
class models. The models output the version to HDF, and that's picked up by
the CS templates.
The clearsilver templates will be changed to be pretty in a follow up change.
A work around is implmented in the new linker to avoid instruction streams
which are known to cause problems on cortex a8. In order to work reliably
with branch prediction enabled, the entire runtime needs to be built with
this toolchain.
Signed-off-by: Erik Gilling <konkers@android.com>
Adds a zip mode ("-z") to imgdiff to construct efficient patches for
zip files (including jars and apks). We identify the regions within
the zip file containing deflated data, and when a corresponding file
can be found in the source zip, a patch is generated for the
uncompressed version of the data.
The GZIP chunk type is replaced with a DEFLATE chunk type that handles
a raw deflated data stream. This new DEFLATE chunk can be used for
both gzipped pieces (as found within boot and recovery images) and zip
files (apks, etc.) The gzip header and footer are handled by NORMAL
chunks on either side of the main DEFLATE chunks. (Typically these
tiny NORMAL chunks will get merged with adjacent chunks, so the number
of output chunks is unaffected.)
Add a test script that tests the generate-apply cycle on all the zips
and images within a pair of full OTA packages.
That way we don't have to wait for clearsilver to write the thousands
of html files during every build.
(This is the build change, there is also a frameworks/base change)
Now, by default, instead of fully building everything,
we skip dexing the modules that aren't going to be included
in the current build.
This will slow down some of the incremental builds (like tests),
but it improves the regular eng build from 27.5 minutes on my
Mac Pro to 25 minutes. That's not as much of an improvement
as I had hoped for, but it's still better.
There is also a change in here that puts the java-source-list
file which is used to get around limited command line lengths
in the proper directory. Before this change, it was an
accident that the directory for that file existed!
Merge commit 'a237874ccf49e92b93faea51f65c2ff37ea19ac7'
* commit 'a237874ccf49e92b93faea51f65c2ff37ea19ac7':
fix the modtime of files in the apk when signing
Improve the speed of incremental OTA install by treating unchanging
gzip chunks as normal chunks, avoiding a decompress/recompress cycle.
This reduces the time needed to apply a patch to a boot image where
the kernel has not changed from ~30 seconds to ~2 seconds, on an opal.
SignApk fixes the timestamp of the signature files it adds. Use that
same timestamp for all the files, so that the modtime doesn't vary
from build to build. (Incremental OTAs currently spend significant
time rewriting every .apk to do nothing but patch in timestamp
changes.)
Merge commit '030614740c1a22e51c6513058852f9ab368fdf5d'
* commit '030614740c1a22e51c6513058852f9ab368fdf5d':
in auto mode, generate both edify and amend scripts for full OTAs