ReleaseEngineering/BuildFaster/Meetings/2012-06-28
From MozillaWiki
Meeting Notes
- Date and Time: Thursday, June 28th, 9:00am PDT (12:00pm EDT, 6:00pm CEST)
- Etherpad - https://etherpad.mozilla.org/build-config-roadmap-2012
- Vidyo (264)
- Audio-only: 650-903-0800 x92 9264
Attendees
- coop
- ted
- khuey
- glandium
- joey
- gps
- mwu
Agenda
Build:Config Peers
- not a prereq - whoever is doing the work should be doing reviews
Priorities
We'll discuss what ordering makes sense here. Please add missing priorities as necessary.
- faster builds is the goal, regardless of methods or end product
- use gps' first 4 steps as basic priorities
- other projects (b2g, win8) will take priority over core cleanup work
- derecursify makefiles - bug 623617
- pymake as standard for Windows builds - bug 593585
- single pass universal builds - bug 417044
- PGO?
- B2G?
- WebRTC?
- Fennec?
- gittup
- Test coverage for makefiles
- refactoring installer/packager.mk into central targets/logic that can be tested.
- makefile syntax checker
- GNU indent can both check (~diff) and automatically reformat to taste.
- Refactoring rules.mk (and packager.mk) into self-contained makefile libraries w/unit tests
- check/test, xpidl, LIB* logic, clean/garbage logic, java, platform specific logic, configure/autoconf, wildcard build rules, etc.
- Conditional includes based on sources, targets, etc. Only include/define the world as needed.
Roundtable
gps's brain dump: http://gregoryszorc.com/blog/2012/06/25/improving-mozilla%27s-build-system/
- Part 1: No rules
- Part 2: Eliminate Make File Content Not Related to Building
- Part 3: Make File Style Conventions and Enforced Review Requirements
- Part 4: Extracting Data from Make Files
- Part 5: Rewriting Make Files
- Part 6: Transition Away from Make Files
- mwu: working on new build system
- fast: incremental builds as fast as ninja
- works on Windows, Mac, Linux
- based on tup: http://gittup.org/tup/
- BuildFaster: compile times
- coop to sync-up with catlee
- adding make tests where appropriate
- make verify
- removing non-build targets from Makefiles
- stripping out, e.g. unittests, from Makefiles
- inertia: people use 'make unittests' now
- mach may save us here, implement scripts as python libs
- refocus on pymake
- l10n repacks still broken
- style vs. short-circuiting review process
- simple set of rules
- automated tools for checking (gps has some)
- monthly meeting?
- todo: ted and gps to sit down and get bugs on file