B2G icon indicating copy to clipboard operation
B2G copied to clipboard

b2g-gonk system build should include kernel build (on sgs2)

Open joneschrisg opened this issue 14 years ago • 5 comments

The b2g-gonk system image is useless without the b2g-gonk kernel. We should build the kernel along with the userspace image.

joneschrisg avatar Dec 11 '11 17:12 joneschrisg

A nop |make kernel| takes 10s on my machine (it builds all kinds of stuff).

Our |make flash| build wastes a lot more time than this, but that's not an excuse to add on more wasted time.

jlebar avatar Dec 12 '11 02:12 jlebar

That's not a valid argument for having a totally broken |make flash|. There are other ways to micromanage rebuild times (or if the right one doesn't exist yet, add it).

joneschrisg avatar Dec 12 '11 17:12 joneschrisg

Is |make flash| totally broken? I don't understand.

At issue here is what "make" should mean, it seems. I think "make" should mean "do the most common set of things I need to do to push to the device." It seems that you think "make" should mean "do everything I could possibly need to push to the device." Is that fair?

I think that the latter is covered by our INSTALL file. But if we redefine "make" without considering how long it takes, people will develop a complex set of hacks to work around the slowness. I'd rather eat the cost of a complex set of hacks occasionally, when I need to re-flash the kernel, rather than every time I build.

jlebar avatar Dec 12 '11 18:12 jlebar

|make flash| leaves you with a useless device.

|make| should absolutely default to a build of the complete b2g image. That's been the convention in every other project I've used make for. That's what m-c make does, e.g.

In general, if you're reflashing a lot, you're probably doing it wrong. Unless you're hacking around in gonk internals, |make install-gecko| should usually be what you need. What is the set of things you usually need?

joneschrisg avatar Dec 12 '11 18:12 joneschrisg

|make flash| leaves you with a useless device.

...if you don't follow the instructions in INSTALL, which seems perfectly reasonable to me. Not to be pedantic, but |make| in the m-c srcdir doesn't work. You have to add a .mozconfig and run |make -f client.mk|. IOW, you have to rtfm.

make install-gecko is new? If that works, I'm very happy, and we can make |make| check out the media visualization repo for all I care. :)

jlebar avatar Dec 12 '11 18:12 jlebar