Makefile
1.21 KB
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
PROJECT = softwarepublico
VERSION = 2014.07
COMPONENTS = colab
TARBALL_FORMAT = tar.gz
TARBALLS = $(patsubst %,build/$(PROJECT)-%-$(VERSION).$(TARBALL_FORMAT),$(COMPONENTS))
RPMS = $(patsubst %.$(TARBALL_FORMAT),%-1.$(ARCH).rpm, $(TARBALLS))
GENERATED += $(TARBALLS) $(RPMS)
ARCH = $(shell uname -m)
all: sdist rpm
sdist: $(TARBALLS)
rpm: $(RPMS)
$(TARBALLS): build/$(PROJECT)-%-$(VERSION).$(TARBALL_FORMAT): %
@echo "TAR $@"
@mkdir -p $$(dirname $@)
@tarball=$$(readlink -f $@); (cd ./$< && git archive --prefix=$(PROJECT)-$<-$(VERSION)/ HEAD | gzip - > $$tarball) || ($(RM) $@; false)
$(RPMS): build/$(PROJECT)-%-$(VERSION)-1.$(ARCH).rpm: build/$(PROJECT)-%-$(VERSION).$(TARBALL_FORMAT)
$(RPMS): build/$(PROJECT)-%-$(VERSION)-1.$(ARCH).rpm: rpm/%.spec
@echo "RPM $@"
@mkdir -p ~/rpmbuild/SOURCES
@component=$$(basename $< .spec) && \
ln -f build/$(PROJECT)-$$component-$(VERSION).$(TARBALL_FORMAT) ~/rpmbuild/SOURCES/ && \
rpmbuild --quiet -bb $< && \
ln -f ~/rpmbuild/RPMS/$(ARCH)/$(PROJECT)-$$component-$(VERSION)-1.$(ARCH).rpm $@
%.spec: %.spec.in
@echo SPEC $@
@(sed -e 's/@@version@@/$(VERSION)/g' $^ > $@) || ($(RM) $@; false)
GENERATED += $(patsubst %.in,%,$(wildcard rpm/*.spec.in))
clean:
$(RM) $(GENERATED)