mozilla-devscripts is an abstract tarball creator based on Makefile inheritance which provides a get-new-orig target usable by Mozilla packages in Ubuntu. The package contains rules for the following projects: - firefox-3.0 - lightning-sunbird (from MOZILLA_1_8_BRANCH) - nspr - nss - seamonkey-2.0 - thunderbird-3.0 - xulrunner-1.9 A clean-up script, called "remove.binonly.sh", is called to remove all binary-only files. It is applied to all projects before packing. Traces of the cleaning are preserved inside that resulting tarball in REMOVED+nobinonly.txt. If nothing has been removed, both the log and the "+nobinonly" signature are dropped. To use : - in debian/control: add mozilla-devscripts to Build-Depends - in debian/rules: add "include /usr/share/mozilla-devscripts/yourproject.mk" The following targets are then available to the caller of debian/rules: - get-orig-source Build a tarball according to parameters from project.mk and optionally using either DEBIAN_DATE or DEBIAN_TAG - mozclient-status List all the registered CVS tags from upstream server The caller could specify the following parameters: DEBIAN_DATE in the form YYYYMMDDtHHMM ex: DEBIAN_DATE=20070911t1711 or DEBIAN_TAG in the form CVS_TAG=debian_version ex: DEBIAN_TAG=FIREFOX_3_0b2_RC1=3.0~b2~rc1 Projects files are stored in /usr/share/mozilla-devscripts as .mk files. They contain the following parameters: - MOZCLIENT_TARGET (mandatory): a label, usually 'project-orig' - MOZCLIENT_APPNAME (mandatory): package name - MOZCLIENT_PROJECT (mandatory): CVS project name - MOZCLIENT_BRANCH (optional): CVS branch name - MOZCLIENT_FILE (mandatory): source file containing the version - MOZCLIENT_GETVERSION (mandatory): how to transform the version - MOZCLIENT_URL (mandatory): an URL (usually on Bonsai) listing commits - MOZCLIENT_GETDATE (mandatory): get the last commit date for the project - MOZCLIENT_EMBEDDED (optional): create an embedded tarball (default: 0) - MOZCLIENT_WANTMOZDIR (optional): should the root dir be 'mozilla'? (default: 0 unless MOZCLIENT_EMBEDDED=1) Example with firefox-3.0: - in debian/control, add mozilla-devscripts to Build-Depends - in debian/rules, add: include /usr/share/mozilla-devscripts/firefox-3.0.mk That's it. You've gained get-orig-source. You can now call it: - debian/rules get-orig-source => firefox-3.0_3.0~b2~cvs20071120t1456+nobinonly.orig.tar.gz - debian/rules get-orig-source DEBIAN_DATE=20070914t1713 => firefox-3.0_3.0~a8~cvs20070914t1713+nobinonly.orig.tar.gz - debian/rules get-orig-source DEBIAN_TAG=FIREFOX_3_0b2_RC1=3.0~b2~rc1 => firefox-3.0_3.0~b2~rc1+nobinonly.orig.tar.gz