Tuesday, April 27, 2010

Windows 64 bit builds - commencing

I am pretty excited to be working on this project since soon I will be buying a Windows 64 bit machine and I would like to take advantage of all types of performance improvements I can from my browser.

This project can be broken down in a fast way like this:
  • get a 64 bit machine from IT with a 64 bit Windows 2008
  • install the right tool-chain
  • generate manually the build
  • pass it to someone to QA it
  • make sure that Windows 08 can be managed by OPSI
  • automate the build process
  • clone more machines and include them on a pool
  • move these machines to production
  • run unit tests on Talos Rev3 machines
  • run talos
  • debug builds
  • symbols
For the curious, bug 558448 will be tracking this.

A bonus will be to investigate how to create Windows 32 bit builds on these machines since we don't want to have two separate pool of builders. The only problem is that it will definitively turn into scope creep if we choose to include it since the beginning. I will have to evaluate this with more time.

Any experienced Win32/64 cross-compiler guy out there?

Creative Commons License
This work by Zambrano Gasparnian, Armen is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.


  1. I mainly develop on WinXP x64 doing x86 and amd64 builds there.
    The MozillaBuild just works nowadays (if you actually start mozilla build from a 32bit cmd.exe). At least it does for moz-1.9.2, I didn't try to build central in quite some time.
    I'm producing x64 binary components with the mozilla build system for an extension as well, building the whole of moz-1.9.2 in the process:

    To get a working build there are some patches required, many of which already have bugs filed.
    Project (not mine):
    Patch instructions:

    Some things to consider for added benefit:
    - Ship mozilla-runtime in 32 AND 64bit to support both 32bit and 64bit plugins
    - what about js-ctypes? Would be great if those are invoked via a mozilla-runtime fitting the arch of the target
    *nix could also benefit from these (no more x86_64 flash headaches :p)

  2. Hi tn123, thanks for the input!

    WRT to the last part of your comment you might want to rise your concerns in http://groups.google.com/group/mozilla.dev.platform since I am more dedicated into the automating side of things rather than the actual Firefox product.