Configure re-run step - configure.js check the change files and ENV to decide whether to regenerate all.mk or not

RESOLVED WONTFIX

Status

Firefox OS
Gaia::Build
RESOLVED WONTFIX
3 years ago
2 years ago

People

(Reporter: rickychien, Assigned: gduan)

Tracking

(Blocks: 1 bug)

Firefox Tracking Flags

(Not tracked)

Details

(Reporter)

Description

3 years ago
Please visit new build system plan [1] for detail information. 

Configure.js should be able to decide whether to regenerate all.mk (a dynamic generated Makefile from configure.js) by checking build definitions and scanning changed files.


[1] https://wiki.mozilla.org/Gaia/Build/NewBuildSystem
(Reporter)

Updated

3 years ago
No longer blocks: 1154582
Depends on: 1154582
(Reporter)

Updated

3 years ago
Blocks: 1154585
WIP: https://github.com/cctuan/gaia/tree/1154583

I will add a configureDecider, and let dev to add what env and file to be cached, and return true if the current file or env is different than the cache.
Blocks: 1168287
(Reporter)

Updated

3 years ago
Assignee: rchien → gduan
This module needs to remove clean-stage-app step, so that we can skip some steps by comparing the cache list and also keep the profile of 2nd make is exactly the same from 1st make.

However, we need to have a filter method for package to make sure we only package those files we need from build_stage instead of all of them.
Summarize the problems we have for current build system,

1. cache would not work, if there are two build steps trying to modify same file. 

ex: index.html would be copied to build_stage and cached in app's own build. It supposed to be ignored when 2nd build, however, webapp-optimize will also modify index.html in 1st build, so the timestamp would be updated and 2nd build would think index.html has been updated, so app's build would be not ignored.
 >>>> We'll only implement configDecider to app's own buildscript

2. too many unnecessary files in zip when changing config after remove clear-stage-app step, since we don't clear build_stage folder and all the folder would be zip to profile.
 >>>> We have no clear solution yet. Either using files filter in webapp-zip by config, or using api to manage ready-to-zip list and cross all build steps.
WIP, 
https://github.com/cctuan/gaia/commit/2722d3189efc2fa52f439f1111f1c6a4040b0f4a

make APP=bluetooth
1st make 2.477s
2nd make 1.776s

make APP=bluetooth
1st make 6.524s
2nd make 2.633s

issue 2 in comment 3 is still unsolved.
(Reporter)

Comment 5

2 years ago
We're no longer working on plan of incremental build system.
Status: ASSIGNED → RESOLVED
Last Resolved: 2 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.