Mail XForms Technical Documentation

De Trustedbird Client Wiki
English | Français

> Documentation > Add-on: Mail XForms > Technical Documentation


How to build Thunderbird 3 + XForms add-on

Linux/Debian requirements

$ sudo apt-get build-dep thunderbird
$ sudo apt-get install mercurial libasound2-dev libcurl4-openssl-dev libnotify-dev


Windows requirements

https://developer.mozilla.org/en/Windows_Build_Prerequisites


Get source code

Initial checkout

# Clone Thunderbird 3 repository
$ hg clone http://hg.mozilla.org/comm-central/
$ cd comm-central

# Checkout
$ python client.py checkout

# Checkout XForms
$ hg clone http://hg.mozilla.org/xforms mozilla/extensions/xforms
$ hg clone http://hg.mozilla.org/schema-validation mozilla/extensions/schema-validation
# Create .mozconfig file with:
ac_add_options --enable-application=mail
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/obj
mk_add_options MOZ_MAKE_FLAGS="-j4"
ac_add_options --enable-extensions="default,xforms,schema-validation"
ac_add_options --enable-static

Update source (not needed if source has just been cloned)

$ cd comm-central
$ python client.py checkout
$ hg pull -u -R mozilla/extensions/xforms
$ hg pull -u -R mozilla/extensions/schema-validation


Build

$ make -f client.mk

=> Thunderbird: obj/mozilla/dist/bin/thunderbird

=> XForms add-on: obj/mozilla/dist/xpi-stage/xforms/*


Edit obj/mozilla/dist/xpi-stage/xforms/install.rdf and set minVersion and maxVersion with:

minVersion=1.9.1
maxVersion=1.9.1.*

Then create xforms.xpi by zipping obj/mozilla/dist/xpi-stage/xforms/.


# Create Thunderbird package
$ make -C obj/mail/installer/

=> Thunderbird package + XForms add-on: obj/mozilla/dist/thunderbird-3.0*.en-US.linux-i686.tar.bz2