path: root/README
diff options
authorFabien Tassin <>2007-12-13 18:18:54 +0100
committerFabien Tassin <>2007-12-13 18:18:54 +0100
commit892f8c8a7472d5aeb3302ebe0ae6169edea9ecc6 (patch)
treedbe73076eff4e9604f59db0a965ba9684afb5e90 /README
parent67ad59d8384cd47b034b6bb420ffa152e73912a3 (diff)
* First release after a full rewrite + packaging
Diffstat (limited to 'README')
1 files changed, 69 insertions, 50 deletions
diff --git a/README b/README
index a346352..abd530f 100644
--- a/README
+++ b/README
@@ -1,51 +1,70 @@
-This package has been created by Fabien Tassin <>.
+mozclient 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 "", 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 mozclient to Build-Depends
+- in debian/rules: add "include /usr/share/mozclient/"
+The following targets are then available to the caller of debian/rules:
+- get-orig-source
+ Build a tarball according to parameters from
+ 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:
+ ex: DEBIAN_DATE=20070911t1711
+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/mozclient 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 mozclient to Build-Depends
+- in debian/rules, add:
+ include /usr/share/mozclient/
+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
-It is *not* a debian package.
-It is composed of just a Makefile and a pile of patches.
-Those patches are targetting mozilla/ and add targets to
-fetch respectively nss, nspr and xulbrowser (browser build with libxul
-from xulrunner package).
-Depends on cvs, wget and quilt.
-To use:
- $ make (display usage)
- Usage:
- make client Fetch and patch mozilla client
- make firefox-orig Create firefox-3.0 sources tarball
- make xulrunner-orig Create xulrunner-1.9 sources tarball
- make thunderbird-orig Create thunderbird-3.0 sources tarball
- make seamonkey-orig Create seamonkey-2.0 sources tarball
- make nss-orig Create nss sources tarball
- make nspr-orig Create nspr sources tarball
- make sunbird-orig Create lightning-sunbird sources tarball (*)
- (*): this is in the MOZILLA_1_8_BRANCH, while everything else is in trunk
- You can also recreate a tarball from a specific timestamp by specifying
- Ex: make DEBIAN_DATE=20070911t1711 nspr-orig
- You can fetch a specific branch by specifying DEBIAN_BRANCH.
- Ex: make DEBIAN_BRANCH=MOZILLA_1_9a8_MINIBRANCH firefox-orig
- It is also possible to use both DEBIAN_DATE and DEBIAN_BRANCH to fetch
- the content of a branch at a particular date
- Alternatively, you can fetch a specific CO tag using DEBIAN_TAG.
- See 'make status' for a list of available tags.
- Ex: make DEBIAN_TAG=MOZILLA_1_9a8_RELEASE=3.0~alpha8 firefox-orig
- will create a tarball named firefox-3.0-3.0~alpha8+nobinonly.orig.tar.gz
- It is also possible to just call the new targets without
- building tarballs:
- $ make -f mozilla/ checkout MOZ_CO_PROJECT=nss
- $ make -f mozilla/ checkout MOZ_CO_PROJECT=nspr
- $ make -f mozilla/ checkout MOZ_CO_PROJECT=xulbrowser