File: Makefile

package info (click to toggle)
perlmoo 0.045
  • links: PTS
  • area: main
  • in suites: slink
  • size: 404 kB
  • ctags: 242
  • sloc: perl: 5,211; makefile: 111; sh: 77
file content (73 lines) | stat: -rw-r--r-- 2,552 bytes parent folder | download
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
# Change to where you want the moo installed.
BINDIR=/usr/local/bin
LIBDIR=/usr/local/lib/perlmoo
VARDIR=/var/lib/perlmoo
ETCDIR=/usr/local/etc/
MANDIR=/usr/local/man/man1

all: db/db.pl Version.pm

install: all
	install -d $(PREFIX)/$(BINDIR) $(PREFIX)/$(VARDIR) \
		$(PREFIX)/$(LIBDIR) $(PREFIX)/$(ETCDIR) $(PREFIX)/$(MANDIR)
	install perlmoo perlmoo-* $(PREFIX)/$(BINDIR)/
	install -m 0644 db/db.pl $(PREFIX)/$(VARDIR)
	install -m 0644 *.pl *.pm $(PREFIX)/$(LIBDIR)
	install -m 0644 *.1 $(PREFIX)/$(MANDIR)
	ln -s perlmoo.1 $(PREFIX)/$(MANDIR)/perlmoo-dbconvert.1
	ln -s perlmoo.1 $(PREFIX)/$(MANDIR)/perlmoo-test.1
	ln -s perlmoo.1 $(PREFIX)/$(MANDIR)/perlmoo-wizpasswd.1
	ln -s perlmoo.1 $(PREFIX)/$(MANDIR)/perlmoo-initdb.1
	sed -e 's!dbdir=.*!dbdir="$(VARDIR)";!' \
		-e 's!sourcedir=.*!sourcedir="$(LIBDIR)";!' \
		< perlmoo.conf > $(PREFIX)/$(ETCDIR)/perlmoo.conf

db/db.pl: basedb.pl perlmoo-initdb perlmoo-initdb *.pm Version.pm
	-mkdir db
	./perlmoo-initdb

clean:
	rm -f db/db.pl db/db-postmortem.pl
	-rmdir db

realclean:
	rm -f db/* Version.pm
	-rmdir db

convert:
	./perlmoo-dbconvert
	cp db/db.pl db/db.pl.old
	mv db/db.pl.new db/db.pl

test: db/db.pl
	./perlmoo-test

# Create the version module.
VERSION=$(shell perl -e '$$_=<>;print m/\((.*?)\)/'<debian/changelog)
Version.pm:
	echo -e "package Version;\n\$$version='$(VERSION)';" > Version.pm

# Install in the proper location on my ftp server and web server. Not intended
# for use by anyone except the author.
OLD_VER=$(shell perl -e '<>;<>;while(<>){last if /^ --/};<>;$$_=<>;print m/\((.*?)\)/'<debian/changelog)
dist:
	dpkg-buildpackage -rfakeroot -tc
	if [ `hostname` = 'kite' ] ; then \
		cp ../perlmoo_$(VERSION).tar.gz ../../public; \
		rm /home/ftp/pub/code/perlmoo/* || true; \
		cp README* TODO BUGS FAQ WISHLIST CHANGES /home/pub/programs/perlmoo/; \
		echo $(VERSION) > /home/pub/programs/perlmoo/LATEST-VERSION-IS; \
		cd ..; rm -rf perlmoo-$(OLD_VER); \
		[ -f ../public/perlmoo_$(OLD_VER).tar.gz ] && \
		tar zxf ../public/perlmoo_$(OLD_VER).tar.gz || \
		tar zxf ../outdated/perlmoo_$(OLD_VER).tar.gz; \
		diff -r -u --new-file perlmoo-$(OLD_VER) perlmoo-$(VERSION) \
			--exclude CHANGES --exclude db.pl\* > \
			/home/ftp/pub/code/perlmoo/diffs/perlmoo-$(VERSION).diff; \
		gzip -9f /home/ftp/pub/code/perlmoo/diffs/perlmoo-$(VERSION).diff; \
		cd /home/ftp/pub/code/perlmoo; \
		ln -sf ../debian/perlmoo_$(VERSION).tar.gz perlmoo_$(VERSION).tar.gz; \
                ln -sf ../debian/perlmoo_$(VERSION).tar.gz perlmoo.tar.gz ; \
	fi

.PHONY: test dist convert