applypatch now takes patches as blob-valued arguments instead of just
filenames, eliminating the need to unpack all patches to /tmp before
starting to apply them.
Revert the last change I made where sha1_check(read_file(...)) was
substituted for apply_patch_check(...). apply_patch_check() knows to
check /cache/saved.file if the original source file is missing or has
a bad checksum, which is important if the device loses power or
otherwise restarts during patching.
Change-Id: Ia5b761474b0f809a5a5eed29455b1b145145699e
This allows to use a proper $(call inherit-product) across
the open-source -> non-open-source boundary in a way that
can automatically adapt to whether the non-open-source
part is present or not
Change-Id: I357721c68362ff8c0f90610850b0368adee68ada
- Delete the applypatch code (it's being moved to bootable/recovery).
- Change the OTA script generator to verify the sha1sum of all the
patch files after they are unpacked into /tmp.
b/2361316 - VZW Issue PP628: Continuous reset to Droid logo:
framework-res.apk update failed (CR LIBtt59130)
Change-Id: I5858d48f10127f72e708d50d3de844569d1aff27
The variable inheritance system can leave extra spaces in a variable
when multiple levels of inheritance are used. It can expand:
"@inherit:foo @inherit:bar @inherit:baz"
to
"value @inherit:bar @inherit:baz"
and then
"value @inherit:baz" (if bar has no value for the variable)
and then
"value " (if baz also has no value).
Call strip to remove excess spaces between words after each
replacement pass.
Change-Id: Ic4cfc6fed1865066a6353a522e4bdcb68ec875d3
Use the PWD= /bin/pwd trick used in getopt in mmm so that it can deal with a symlinked
root directory.
Change-Id: Ia8b5ef10cbd10ca05f2301db86f64fdf11ff2840
If there are packages that specify logtags being built that aren't
included in the product, their logtags won't be included in the merged
file. Assign an arbitrary tag number to them so they can be built
anyway.
Change-Id: I4929016bf289b7a814b48bc51f324c09f500fab1
With this change, you can specify "?" in place of a tag number in a
.logtags file and the build system will assign numbers to these tags.
(The numbers used shouldn't matter since we translate them back to tag
names whenever the logs are read back.)
This is pretty straightforward to do:
- make merge-event-log-tags.py assign numbers to any tags that specify
"?"
- make the generated java files depend on the merged output
- make java-event-log-tags.py read both the original .logtags and the
merged output, and fill in tag numbers for any "?" using the merged
version.
Change-Id: Icc6ccd705db461d570fc929922a830aa6deaca48
(Cherry-pick from donut.)
Delete the old recovery-from-boot patch before patching system files,
then install the new one at the end of the process. Also fix an issue
with applypatch returning the wrong status.
Change-Id: I614fce39f307eded696ba792912b863f9fb0580b
Alas, poor AlarmClock! I knew, him, Froyo: a fellow
of infinite alarm, of most excellent punctuality: he hath
warned me of a meeting a thousand times, and now, how
abhorred in my build it is! My Droid rings at
it. Here hung those beeps that I have snoozed I know
not how oft. Where be your chimes now? Your
roosters? Your songs? Your flashes of alert,
that were wont to set the table on a buzz? Not one
now, to post your own notification? Quite ongoing?
This change allows modules to insert different include paths before the system
include paths. STLPort uses this to find system include files that have the same
name.
The Dalvik core libraries team would like to start making warnings
errors in certain packages by definition LOCAL_JAVACFLAGS. This will
allow easier debuging of warnings in other packages by supplying
"-Xlint:..." options.
This lets you use the source code from one apk to build a new one
with a new module name, a new android package name and optionally,
a new certificate.
To use this, in a makefile, add this:
$(call inherit-package, \
packages/apps/Music/Android.mk, \
Music, \
MusicFork, \
my_cert, \
com.example.music)
You don't need the LOCAL_PATH and CLEAR_VARS stuff. It will override
only the packages that are defined in the makefile name you give, but
if other modules of other types are defined, you will get an error
saying that it's defined twice. In that case, you need to move the
duplicate library (for example a .so) out into a different makefile.
A LOCAL_OVERRIDES_PACKAGES entry is automatically created for the
forked app.
Three unrelated changes:
- change the add-radio-file makefile function to support adding files
with paths. (The path part of the pathname is stripped off.)
- add an UnmountAll function to the OTA script generation code, so
that we can explicitly unmount everything we've mounted (in addition
to doing it automatically at the end of the script).
- add the updater API version to the info object passed to
device-specific code.
Change-Id: Ia62b15403c1cc8fce8d9910f291450c8077e49f4
[cherry-pick from donut branch]
Instead of failing outright when yaffs lies about how much space is
free on the filesystem, delete the partially-written output file and
retry using the copy-source-to-cache method instead.
Change all the log statements to printf; mixing stdout and stderr
logging just makes the logs hard to read because they're buffered
differently.