summaryrefslogtreecommitdiff
path: root/Makefile
blob: cb127774605c2bb73d9ae5aba04ed88441af6b9e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
# Created by Fabien Tassin <fta@sofaraway.org> in Sept 2007

MOZ_CLIENT = mozilla/client.mk
CVS_LOC    = :pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot

STAMP ?= stamped

############################################################################
DEBIAN_FF3_TARGET  = firefox-orig
DEBIAN_FF3_APPNAME = firefox-trunk
DEBIAN_FF3_FILE    = mozilla/browser/config/version.txt
DEBIAN_FF3_DATE    = $(shell wget -O - -q --read-timeout=10 --user-agent="" --tries=3 'http://bonsai.mozilla.org/cvsquery.cgi?treeid=default&module=SeaMonkeyBrowser&branch=HEAD&branchtype=match&dir=&file=&filetype=match&who=&whotype=match&sortby=Date&hours=2&date=week&mindate=&maxdate=&cvsroot=%2Fcvsroot' 2> /dev/null | grep "a href='http://webtools.mozilla.org/registry/who.cgi" | head -1 | tr '<>' '@' | cut -d@ -f5 | tr -d ':-' | sed -e 's/&nbsp;.*//')
DEBIAN_FF3_VERSION = $(shell cat $(DEBIAN_FF3_FILE) | sed -e 's/a\([0-9]*\)pre/~a\1/')~cvs$(DEBIAN_FF3_DATE)

DEBIAN_XUL_TARGET  = xulrunner-orig
DEBIAN_XUL_APPNAME = xulrunner-1.9
DEBIAN_XUL_FILE    = mozilla/config/milestone.txt
DEBIAN_XUL_DATE    = $(shell wget -O - -q --read-timeout=10 --user-agent="" --tries=3 'http://bonsai.mozilla.org/cvsquery.cgi?treeid=default&module=SeaMonkeyBrowser&branch=HEAD&branchtype=match&dir=&file=&filetype=match&who=&whotype=match&sortby=Date&hours=2&date=week&mindate=&maxdate=&cvsroot=%2Fcvsroot' 2> /dev/null | grep "a href='http://webtools.mozilla.org/registry/who.cgi" | head -1 | tr '<>' '@' | cut -d@ -f5 | tr -d ':-' | sed -e 's/&nbsp;.*//')
DEBIAN_XUL_VERSION = $(shell tail -1 $(DEBIAN_XUL_FILE) | sed -e 's/\(a[0-9]*\)pre/~\1/')~cvs$(DEBIAN_XUL_DATE)

DEBIAN_NSS_TARGET  = nss-orig
DEBIAN_NSS_APPNAME = nss-trunk
DEBIAN_NSS_FILE    = mozilla/security/nss/lib/nss/nss.h
DEBIAN_NSS_DATE    = $(shell wget -O - -q --read-timeout=10 --user-agent="" --tries=3 'http://bonsai.mozilla.org/cvsquery.cgi?treeid=NSS&module=all&branch=HEAD&branchtype=match&dir=mozilla%2Fdbm+mozilla%2Fsecurity%2Fnss+mozilla%2Fsecurity%2Fcoreconf+mozilla%2Fsecurity%2Fdbm&file=&filetype=match&who=&whotype=match&sortby=Date&hours=2&date=month&mindate=&maxdate=&cvsroot=%2Fcvsroot' 2> /dev/null | grep "a href='http://webtools.mozilla.org/registry/who.cgi" | head -1 | tr '<>' '@' | cut -d@ -f5 | tr -d ':-' | sed -e 's/&nbsp;.*//')
DEBIAN_NSS_VERSION = $(shell grep -E '^\#define NSS_V(MAJOR|MINOR|PATCH)' $(DEBIAN_NSS_FILE) | awk '{print $$3}' | tr '\n' '.' | sed -e 's,\.$$,,')~cvs$(DEBIAN_NSS_DATE)

DEBIAN_NSPR_TARGET  = nspr-orig
DEBIAN_NSPR_APPNAME = nspr-trunk
DEBIAN_NSPR_FILE    = mozilla/nsprpub/configure.in
DEBIAN_NSPR_DATE    = $(shell wget -O - -q --read-timeout=10 --user-agent="" --tries=3 'http://bonsai.mozilla.org/cvsquery.cgi?treeid=default&module=all&branch=HEAD&branchtype=match&dir=mozilla%2Fnsprpub&file=&filetype=match&who=&whotype=match&sortby=Date&hours=2&date=explicit&mindate=1177522884&maxdate=1588258884&cvsroot=%2Fcvsroot' 2> /dev/null | grep "a href='http://webtools.mozilla.org/registry/who.cgi" | head -1 | tr '<>' '@' | cut -d@ -f5 | tr -d ':-' | sed -e 's/&nbsp;.*//')
DEBIAN_NSPR_VERSION = $(shell grep -E '^MOD_(MAJOR|MINOR|PATCH)_VERSION' $(DEBIAN_NSPR_FILE) | cut -d= -f2 | tr '\n' '.' | sed -e 's,\.$$,,')~cvs$(DEBIAN_NSPR_DATE)

############################################################################

help:
	@echo "Usage:"
	@echo "   make client                Fetch and patch mozilla client"
	@printf "   make %-20s  Create %s sources tarball\n" $(DEBIAN_FF3_TARGET) $(DEBIAN_FF3_APPNAME)
	@printf "   make %-20s  Create %s sources tarball\n" $(DEBIAN_XUL_TARGET) $(DEBIAN_XUL_APPNAME)
	@printf "   make %-20s  Create %s sources tarball\n" $(DEBIAN_NSS_TARGET) $(DEBIAN_NSS_APPNAME)
	@printf "   make %-20s  Create %s sources tarball\n" $(DEBIAN_NSPR_TARGET) $(DEBIAN_NSPR_APPNAME)

deps:
	@if [ ! -f /usr/bin/cvs ]   ; then echo "**ERROR** Depends on missing cvs. Abort"; exit 1; fi
	@if [ ! -f /usr/bin/quilt ] ; then echo "**ERROR** Depends on missing quilt. Abort"; exit 1; fi
	@if [ ! -f /usr/bin/wget ]  ; then echo "**ERROR** Depends on missing wget. Abort"; exit 1; fi

$(MOZ_CLIENT): deps
	cvs -d $(CVS_LOC) co $@
	rm -rf .pc $(STAMP)

$(DEBIAN_FF3_FILE):
$(DEBIAN_XUL_FILE):
$(DEBIAN_NSS_FILE):
$(DEBIAN_NSPR_FILE):
	cvs -d $(CVS_LOC) co $@

client: $(STAMP)

$(STAMP): $(MOZ_CLIENT)
	@echo Patching
	quilt --quiltrc /dev/null push -a || test $$? = 2
	touch $(STAMP)

unpatch:
	@echo Unpatching
	-quilt --quiltrc /dev/null pop -a -R || test $$? = 2
	rm -rf .pc $(STAMP)

clean: unpatch
	rm -rf cvsco.log* $(MOZ_CLIENT) mozilla

$(DEBIAN_FF3_TARGET): $(MOZ_CLIENT) $(STAMP) $(DEBIAN_FF3_FILE)
	make -f $(MOZ_CLIENT) checkout MOZ_CO_PROJECT=xulbrowser
	rm -rf $(DEBIAN_FF3_APPNAME)-$(DEBIAN_FF3_VERSION) $(DEBIAN_FF3_APPNAME)_$(DEBIAN_FF3_VERSION).orig.tar.gz
	mkdir $(DEBIAN_FF3_APPNAME)-$(DEBIAN_FF3_VERSION)
	tar jcf $(DEBIAN_FF3_APPNAME)-$(DEBIAN_FF3_VERSION)/browser-snapshot-$(DEBIAN_FF3_DATE).tar.bz2 --exclude=CVS --exclude=.cvsignore mozilla
	rm -f $(DEBIAN_FF3_APPNAME)_$(DEBIAN_FF3_VERSION).orig.tar.gz
	tar zcf $(DEBIAN_FF3_APPNAME)_$(DEBIAN_FF3_VERSION).orig.tar.gz $(DEBIAN_FF3_APPNAME)-$(DEBIAN_FF3_VERSION)
	rm -rf mozilla cvsco.log* $(STAMP) .pc $(DEBIAN_FF3_APPNAME)-$(DEBIAN_FF3_VERSION)

$(DEBIAN_XUL_TARGET): $(MOZ_CLIENT) $(STAMP) $(DEBIAN_XUL_FILE)
	make -f $(MOZ_CLIENT) checkout MOZ_CO_PROJECT=xulrunner
	mkdir $(DEBIAN_XUL_APPNAME)-$(DEBIAN_XUL_VERSION)
	mv mozilla $(DEBIAN_XUL_APPNAME)-$(DEBIAN_XUL_VERSION)
	rm -f $(DEBIAN_XUL_APPNAME)_$(DEBIAN_XUL_VERSION).orig.tar.gz
	tar zcf $(DEBIAN_XUL_APPNAME)_$(DEBIAN_XUL_VERSION).orig.tar.gz --exclude=CVS --exclude=.cvsignore $(DEBIAN_XUL_APPNAME)-$(DEBIAN_XUL_VERSION)
	rm -rf cvsco.log* $(STAMP) .pc $(DEBIAN_XUL_APPNAME)-$(DEBIAN_XUL_VERSION)

$(DEBIAN_NSS_TARGET): $(MOZ_CLIENT) $(STAMP) $(DEBIAN_NSS_FILE)
	make -f $(MOZ_CLIENT) checkout MOZ_CO_PROJECT=nss
	mkdir $(DEBIAN_NSS_APPNAME)-$(DEBIAN_NSS_VERSION)
	mv mozilla $(DEBIAN_NSS_APPNAME)-$(DEBIAN_NSS_VERSION)
	rm -f $(DEBIAN_NSS_APPNAME)_$(DEBIAN_NSS_VERSION).orig.tar.gz
	tar zcf $(DEBIAN_NSS_APPNAME)_$(DEBIAN_NSS_VERSION).orig.tar.gz --exclude=CVS --exclude=.cvsignore $(DEBIAN_NSS_APPNAME)-$(DEBIAN_NSS_VERSION)
	rm -rf cvsco.log* $(STAMP) .pc $(DEBIAN_NSS_APPNAME)-$(DEBIAN_NSS_VERSION)

$(DEBIAN_NSPR_TARGET): $(MOZ_CLIENT) $(STAMP) $(DEBIAN_NSPR_FILE)
	make -f $(MOZ_CLIENT) checkout MOZ_CO_PROJECT=nspr
	mkdir $(DEBIAN_NSPR_APPNAME)-$(DEBIAN_NSPR_VERSION)
	mv mozilla $(DEBIAN_NSPR_APPNAME)-$(DEBIAN_NSPR_VERSION)
	rm -f $(DEBIAN_NSPR_APPNAME)_$(DEBIAN_NSPR_VERSION).orig.tar.gz
	tar zcf $(DEBIAN_NSPR_APPNAME)_$(DEBIAN_NSPR_VERSION).orig.tar.gz --exclude=CVS --exclude=.cvsignore $(DEBIAN_NSPR_APPNAME)-$(DEBIAN_NSPR_VERSION)
	rm -rf cvsco.log* $(STAMP) .pc $(DEBIAN_NSPR_APPNAME)-$(DEBIAN_NSPR_VERSION)