summaryrefslogtreecommitdiffstats
path: root/encap/src/encap-profiles/reports/Makefile
blob: e2f1529e5053703cfeaf1d9debf593135583a388 (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
80
81
82
83
84
85
86
87
88
89
90
# $Id$

.PHONY : test log all install clean distclean encaps rename
.SUFFIXES :
.SUFFIXES : .ep .installed .packaged .d

export BASEDIR = /usr/local
export ENCAPDIR := ${BASEDIR}/encap
export EPKG := ${BASEDIR}/bin/epkg
export MKENCAP := ${BASEDIR}/bin/mkencap
export SHELL = /bin/sh
srcdir = .
export EP2TARGET := $(srcdir)/ep2target
PAGER ?= more

BCFG2_DJANGO := $(basename $(wildcard bcfg2-django-*.ep))
BCFG2_MOD_PYTHON := $(basename $(wildcard bcfg2-mod_python-*.ep))
BCFG2_PYSQLITE := $(basename $(wildcard bcfg2-pysqlite-*.ep))
SQLITE := $(basename $(wildcard sqlite-*.ep))

sources := $(BCFG2_DJANGO) $(BCFG2_MOD_PYTHON) $(BCFG2_PYSQLITE) $(SQLITE)

%.installed : %.ep # Clean, compile and install an encap package
	@printf "***** START .ep.installed for |$*| ***** \n"
	-$(EPKG) -q -r $(ENCAPDIR)/$*
	-rm -rf $(ENCAPDIR)/$*
	-$(MKENCAP) -m /usr/local/bin/m4 -b -DUP $(srcdir)/$*.ep > ./$*.log 2>&1
	-$(MKENCAP) -m /usr/local/bin/m4 -b -T $(srcdir)/$*.ep >> ./$*.log 2>&1
	$(MKENCAP) -m /usr/local/bin/m4 -b -CBI $(srcdir)/$*.ep >> ./$*.log 2>&1
	$(EPKG) -q -i $(ENCAPDIR)/$*
	test -h $(BASEDIR)/var/encap/$*
	touch ./$*.installed
	@printf "***** STOP .ep.installed for |$*| ***** \n"

%.packaged : %.installed # Create .tar.gz encap packages
	@printf "***** START .installed.packaged for |$*| ***** \n"
	-rm $(ENCAPDIR)/$*-*.tar.gz
	-(cd $(ENCAPDIR) && $(MKENCAP) -e $*)
	-(cd $(ENCAPDIR) && $(MKENCAP) -c $*)
	mv $(ENCAPDIR)/$*-encap-*.tar.gz ./
	touch ./$*.packaged
	@printf "***** STOP .installed.packaged for |$*| ***** \n"

%.d : %.ep # Create dependancy files from .ep files
	@printf "***** START .d.ep for |$*| ***** \n"
	$(EP2TARGET) $< > $@
	@printf "***** STOP .d.ep for |$*| ***** \n"

log :
	( $(MAKE) install > ./make.log 2>&1 \
	&& $(MAKE) encaps >> ./make.log 2>&1 \
	&& $(MAKE) rename >> ./make.log 2>&1 ) &

all : install encaps rename

.DELETE_ON_ERROR : # delete the target of a rule if it has changed and its
                   # commands exit with a nonzero exit status

install : $(EPKG) $(MKENCAP) $(EP2TARGET) $(M4).installed $(addsuffix .installed,$(sources))

encaps : $(EPKG) $(MKENCAP) $(EP2TARGET) $(addsuffix .packaged,$(sources))

rename : encaps
	if [ "$(OS)x" != "x" ]; then OS="$(OS)"; fi && \
	if [ "$${OS}x" != "x" ]; then \
		for OLDNAME in `(ls . | grep .*-encap-.*.tar.gz) || break`; do \
			NEWNAME="`printf "%s\n" "$${OLDNAME}" \
				| awk -F- '{$$NF = "OSDIST.tar.gz" ; print}' \
				| sed s:\ :-:g | sed s:OSDIST:\$${OS}:g`" ; \
			if [ "$${OLDNAME}x" != "$${NEWNAME}x" ]; then \
				mv ./$${OLDNAME} ./$${NEWNAME}; \
			fi; \
		done; \
	fi
	for OLDNAME in `(ls . | grep .*-doc-.*-encap-.*.tar.gz) || break`; do \
		NEWNAME="`printf "%s\n" "$${OLDNAME}" \
			| awk -F- '{$$NF = "OSDIST.tar.gz" ; print}' \
			| sed s:\ :-:g | sed s:OSDIST:share:g`" ; \
		if [ "$${OLDNAME}x" != "$${NEWNAME}x" ]; then \
			mv ./$${OLDNAME} ./$${NEWNAME}; \
		fi; \
	done;

clean :
	-(rm ./*.log; rm ./*.packaged; rm ./*.gz; rm ./*~)

distclean : clean
	-rm ./*.d

include $(addsuffix .d,$(sources))