Initial build support for incremental gecko (OTA) updates #54

Closed
wants to merge 1 commit into
from

Projects

None yet

3 participants

@marshall
Contributor

This adds the new make target "gecko-update-incremental", which requires a MAR path to generate an incremental update from.

An example of running this to generate an incremental update:

# build update 1
$ VARIANT=user ./build.sh
$ VARIANT=user ./build.sh gecko-update-full
$ mv objdir-gecko/dist/b2g-update/b2g-gecko-update.mar /tmp/update1.mar

# .. make some change in gecko ..

$ VARIANT=user ./build.sh
$ VARIANT=user ./build.sh gecko-update-incremental GECKO_UPDATE_FROM_MAR=/tmp/update1.mar
$ ls -lh objdir-gecko/dist/b2g-update/b2g-gecko-update-incremental.mar

r? @mwu

@dhylands
Member

@marshall mwu's github name is @michaelwu

@marshall
Contributor

@dhylands my bad.. the pull request form doesn't have autocomplete like comments do.. :(

r? @michaelwu

@marshall
Contributor

I've updated this to use the new tools in this pull request:

mozilla-b2g/B2G#170

@michaelwu
Member

Hmm this is kinda bad. You're making parts that are controlled by repo depend on parts that are outside of repo control. That's not allowed - the B2G repo is only allowed to contain helpers. It's not allowed to be required to build. The update tools need to be pulled into a repo that is controlled by repo. gonk-misc is fine for this purpose.

@dhylands
Member

That's a good distinction to be aware of :)

@marshall
Contributor

@michaelwu ah.. I had been going back and forth between putting these in gonk-misc or B2G. I ended up in B2G because of the other python tools there (many of the update tools are separate from the build system, and use .config to find GECKO_OBJDIR for example.)

I could also move the update make targets into a new Android.mk inside tools..

@michaelwu
Member

Android.mk has access to the gecko objdir path too.

I think adding a Android.mk to the tools dir still counts as making the repo controlled parts depend on non-repo controlled parts.

@marshall marshall closed this May 18, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment