summaryrefslogtreecommitdiffstats
path: root/Makefile
blob: 1f90bbc1070fe5d4256365018c66ae83c4873b54 (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
include Makefile.config

PACKAGE = ldetect-lst
VERSION := $(shell rpm -q --qf '%{VERSION}\n' --specfile $(PACKAGE).spec | head -1)
RELEASE := $(shell rpm -q --qf '%{RELEASE}\n' --specfile $(PACKAGE).spec | head -1)
TAG := $(shell echo "V$(VERSION)_$(RELEASE)" | tr -- '-.' '__')

SVN_URL  := $(shell svn info | grep ^URL: | cut -f2 -d\ )
SVN_BASE := $(shell svn info | sed -n '/^URL: \(.*\/$(PACKAGE)\).*/s//\1/p')

FILES = AUTHORS ChangeLog Makefile Makefile.config convert ldetect-lst.spec lst update-ldetect-lst

.PHONY: changelog log

build: 
	make -C lst build

check:
	make -C lst check

clean:
	rm -f *~
	make -C lst clean

install: build
	install -d $(bindir) $(sbindir) $(dir)
	make -C lst install
	install update-ldetect-lst $(sbindir)
	install convert/merge2pcitable.pl $(bindir)

# rules to build a test rpm

localsrpm: check localdist
	rpm -ts $(PACKAGE)-$(VERSION).tar.bz2

localrpm: localdist buildrpm

localdist: cleandist dir localcopy tar

cleandist:
	rm -rf $(PACKAGE)-$(VERSION) $(PACKAGE)-$(VERSION).tar.bz2

dir:
	mkdir $(PACKAGE)-$(VERSION)

localcopy:
	tar c $(FILES) | tar x -C $(PACKAGE)-$(VERSION)

tar:
	tar cvf $(PACKAGE)-$(VERSION).tar $(PACKAGE)-$(VERSION)
	bzip2 -9vf $(PACKAGE)-$(VERSION).tar
	rm -rf $(PACKAGE)-$(VERSION)

buildrpm:
	rpm -ta $(PACKAGE)-$(VERSION).tar.bz2

# rules to build a distributable rpm

srpm: check changelog svntag dist
	rpm -ts $(PACKAGE)-$(VERSION).tar.bz2

rpm: srpm buildrpm

dist: cleandist dir export tar

export:
	svn co $(SVN_BASE)/tags/$(TAG) $(PACKAGE)-$(VERSION)

svntag:
	svn cp -m "tagged as $(TAG)" $(SVNTAGOPT) $(SVN_URL) $(SVN_BASE)/tags/$(TAG)

log: changelog

changelog: ../common/username.xml
	svn2cl --authors ../common/username.xml --accum
	rm -f ChangeLog.bak
	svn commit -m "Generated by cvs2cl the `LC_TIME=C date '+%d_%b'`" ChangeLog

# Makefile ends here