Newer
Older
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
#######################################################################################
# TEST, NON REGR. ETC...
TESTDIR=./test
.PHONY: diff test log
test_nc:
cd $(TESTDIR) ; make test ; cd $(curdir)
test:
cd $(TESTDIR) ; make ; make time
cd $(curdir)
#######################################################################################
# git entry points
#######################################################################################
# Workflow:
# C=git commit ; A=git amend ; U=update_version ; O=opam pack
# to make sure the sha and the version are good, one should never
# do U and then A.
# to avoid such problems, legal trace are defined by this automata:
# 0 -C-> 1
# 1 -P-> 1
# 1 -A-> 1
# 1 -U-> 0
# to implement such a workflow, C puts a lock (state 1) and U removes it (state 0)
update_version:
rm -f src/lv6version.ml
make src/lv6version.ml
cp _oasis _oasis.save
cat _oasis.save | sed "s/^Version:.*/Version: $(VERSION)/" > _oasis
rm committed
make clean && make
cia:
test -f committed || (git commit -a -F log && touch committed)
ci:
test -f committed || (git commit -F log && touch committed)
amend:
test -f committed && git commit -a -F log --amend
###############################
# forge
push:
git push git+ssh://$(USER)@scm.forge.imag.fr/var/lib/gforge/chroot/scmrepos/git/lustre/lus2lic.git
pull:
git pull git+ssh://$(USER)@scm.forge.imag.fr/var/lib/gforge/chroot/scmrepos/git/lustre/lus2lic.git
###############################
# opam-ing
NAME=lustre-v6
PACKNAME=$(NAME).$(VERSION)
WWW=/import/www/DIST-TOOLS/SYNCHRONE
HTTP=http://www-verimag.imag.fr/DIST-TOOLS/SYNCHRONE
$(PACKNAME).tgz:
git archive --prefix=$(PACKNAME)/ -o $(PACKNAME).tgz HEAD
$(WWW)/pool/$(PACKNAME).tgz: $(PACKNAME).tgz
mv $^ $@
opam : $(WWW)/pool/$(PACKNAME).tgz
cd $(WWW)/opam-repository/packages && \
oasis2opam $(HTTP)/pool/$(PACKNAME).tgz && \
cd .. ; opam-admin check && opam-admin make -g