File: Makelocal-version

package info (click to toggle)
restfuldb 0.16.0%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 17,936 kB
  • sloc: sh: 25,689; perl: 11,796; sql: 1,667; javascript: 917; makefile: 221
file content (54 lines) | stat: -rw-r--r-- 1,443 bytes parent folder | download | duplicates (3)
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
#--*- Makefile -*--

.PHONY: release major minor patch

VFILE = .version

VERSION := $(shell grep -v "^\#" ${VFILE})

VERSION_PM ?= lib/RestfulDB/Version.pm
VERSION_PMIN ?= ${VERSION_PM:%=%in}

RESTFULDB_VERSION_SCRIPT ?= tools/scripts/restfuldb-version
RESTFULDB_VERSION_SCRIPT_IN ?= ${RESTFULDB_VERSION_SCRIPT:%=%.in}

version.h: version.hin ${VFILE}
	sed 's/@VERSION@/${VERSION}/' $< > $@

${VERSION_PM}: ${VERSION_PMIN} ${VFILE}
	sed 's/@VERSION@/${VERSION}/' $< > $@

${RESTFULDB_VERSION_SCRIPT}: ${RESTFULDB_VERSION_SCRIPT_IN}
	sed 's/@VERSION@/${VERSION}/' $< > $@
	chmod 755 $@

release:
	svn ci
	perl -lpi -e 's/\(unreleased\)/(${VERSION})/ if $$. == 1' CHANGELOG
	svn ci -m "CHANGELOG: switching from 'unreleased' to '${VERSION}'"
	svn cp ^/trunk ^/branches/release/v${VERSION} \
	   -m "Preparing version ${VERSION} for release in the release branch."
	${MAKE} minor

major:
	awk -F. '/^#/{print} !/^#/{print $$1+1 ".0" ($$3 ? ".0" : "")}' \
		${VFILE} > ${VFILE}.$$$$; \
	cat ${VFILE}.$$$$ > ${VFILE}; \
	rm -f ${VFILE}.$$$$

minor:
	awk -F. '/^#/{print} !/^#/{print $$1 "." $$2+1 ($$3 ? ".0" : "")}' \
		${VFILE} > ${VFILE}.$$$$; \
	cat ${VFILE}.$$$$ > ${VFILE}; \
	rm -f ${VFILE}.$$$$

patch:
	awk -F. '/^#/{print} !/^#/{print $$1 "." $$2 "." $$3+1}' \
		${VFILE} > ${VFILE}.$$$$; \
	cat ${VFILE}.$$$$ > ${VFILE}; \
	rm -f ${VFILE}.$$$$

distclean: clean-version

clean-version:
	rm -f ${VESRSION_PM} ${RESTFULDB_VERSION_SCRIPT}