On Wednesday, July 17, 2013 9:36:20 PM UTC-4, Gregory Szorc wrote:
> Many of these commands are things we already have better primitives for.
>
> e.g. INSTALL_TARGETS and PP_TARGETS. If Makefile.in were following best
>
> practices, about half of the existing rules would go away.
>
>
>
> Anyway, let's estimate each rule in a Makefile.in takes 30 minutes to
>
> port to moz.build. Simple install rules will take less. More complicated
>
> actions (like say WebIDL or IPDL rules) will likely take a few hours.
>
> 551 rules x 30 minutes is ~280 hours, or 7 person-weeks. Multiply that
>
> number by 4 (to account for variables porting and because this is
>
> software), add 200 hours for reviews, and we're looking at ~1300 hours,
>
> or 32 person-weeks. Figure that whoever is working on this won't be
>
> doing it full time, and we're realistically looking at another year or
>
> so until completion. But, this is software estimation, so there is a
>
> giant asterisk on all these numbers.
This time estimate is only for the rules listed in this post, not the variable conversions listed in 'moz.build conversion remaining variables', correct? Joey put together an estimate for the variable conversions based on our rate of progress and number of variables to convert (I can't seem to find the exact numbers at the moment, but I recall it was also fairly large).
A number of the high-frequency conversions are simple true/false variables, like LIBXUL_LIBRARY, FAIL_ON_WARNINGS, and others. These should be relatively straightforward. But we still do have some big ones that are more difficult to convert, like DEFINES, *FLAGS, *LIBS, *INCLUDES, etc.
Just want to make sure we aren't being overly ambitious here with our estimates.
-Mike