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
|
VERSION = 3.7
PACKAGE = desktop-common-data
NAME = desktop-common-data
TAG := $(shell echo "V$(VERSION)_$(RELEASE)" | tr -- '-.' '__')
mandir=/usr/share/man
menus: applications.menu kde-applications.menu
menu/validated-menu: menu/applications.menu.in
xmllint --noout --dtdvalid menu/menu.dtd $?
applications.menu: menu/validated-menu
@echo -n "generating $@ "
@sed -e 's,@MAIN_DESKTOP@,GNOME,g' -e 's,@MAIN_TOOLKIT@,GTK,g' -e 's,@ALTERNATIVE_DESKTOP@,KDE,g' -e 's,@ALTERNATIVE_TOOLKIT@,Qt,g' < menu/applications.menu.in > $@
@xmllint --noout --dtdvalid menu/menu.dtd $@
@echo " OK"
kde-applications.menu: menu/validated-menu
@echo -n "generating $@ "
@sed -e 's,@MAIN_DESKTOP@,KDE,g' -e 's,@MAIN_TOOLKIT@,Qt,g' -e 's,@ALTERNATIVE_DESKTOP@,GNOME,g' -e 's,@ALTERNATIVE_TOOLKIT@,GTK,g' < menu/applications.menu.in > $@
@xmllint --noout --dtdvalid menu/menu.dtd $@
@echo " OK"
checktag:
@if [ -e ".git" ]; then \
if ! git diff --quiet ; then \
echo not all changes are committed, aborting ; \
exit 1 ; \
fi ; \
fi
@if [ "x$(VERSION)" == "x" -o "x$(RELEASE)" = "x" ]; then \
echo usage is "make VERSION=version_number RELEASE=release_number dist" ; \
exit 1 ; \
fi
clean:
find . -type d -name '.xvpics' -o -name '*~' |xargs rm -rf
rm -f applications.menu kde-applications.menu
# rules to build a distributable rpm
dist: menus checktag clean changelog
rm -rf ../$(NAME)-$(VERSION)*.tar* $(NAME)-$(VERSION)
@git archive --prefix=$(NAME)-$(VERSION)/ HEAD | xz >../$(NAME)-$(VERSION).tar.xz;
$(info $(NAME)-$(VERSION).tar.bz2 is ready)
tag: checktag
git tag $(TAG); \
.PHONY: ChangeLog log changelog
log: ChangeLog
changelog: ChangeLog
ChangeLog:
@if test -d "$$PWD/.git"; then \
../common/gitlog-to-changelog | sed -e '/\tgit-svn-id:.*/d' > $@.tmp \
&& mv -f $@.tmp $@ \
&& git commit ChangeLog -m 'generated changelog' \
|| (rm -f $@.tmp; \
echo Failed to generate ChangeLog, your ChangeLog may be outdated >&2; \
(test -f $@ || echo git-log is required to generate this file >> $@)); \
fi;
|