File: Makefile

package info (click to toggle)
dnprogs 2.52
  • links: PTS
  • area: main
  • in suites: squeeze
  • size: 3,644 kB
  • ctags: 4,021
  • sloc: ansic: 26,737; cpp: 10,666; makefile: 832; sh: 537; awk: 13
file content (129 lines) | stat: -rw-r--r-- 4,220 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
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
# Top level Makefile for DECnet programs

include Makefile.common

#
# PKGNAME determines the .tar.gz file name and also is the directory name
#
PKGNAME=dnprogs
DATE="$(shell date +'%Y%m%d')"

SUBDIRS=include libdnet libdaemon libdap librms fal dndir dnsubmit dndel \
	dncopy apps dntask dnlogin mail phone dnetd libvaxdata dnroute \
	nml multinet scripts \
	contrib/ph3-der-loewe

ifneq ($(wildcard /usr/include/fuse.h),)
SUBDIRS+=dapfs
endif

all: 	
	@set -e; for i in $(SUBDIRS); do $(MAKE) -C $$i $@ ; done

install:
	@set -e; for i in $(SUBDIRS); do $(MAKE) -C $$i $@ ; done

dep depend:	
	@set -e; for i in $(SUBDIRS); do $(MAKE) -C $$i $@ ; done

tags:	
	etags */*.cc */*.c


clean:
	rm -rf debian/tmp
	rm -f debian/files
	rm -f debian/substvars
	rm -f debian/*~
	rm -rf rpmbuild
	rm -rf RPMS
	rm -rf SOURCES
	rm -rf SRPMS
	rm -rf BUILD
	rm -f .rpm*
	rm -f build
	rm -f core
	@for i in $(SUBDIRS); do $(MAKE) -C $$i $@ ; done

debclean:
	debian/rules clean
#
# Make the distribution tar file
#
dist:	clean
	cp debian/changelog NEWS
	for i in $(SUBDIRS); do cd $$i; rm -f .depend; cd ..; done
	if [ -L ../$(PKGNAME)-$(VERSION) ]; then rm ../$(PKGNAME)-$(VERSION); fi
	if [ ! -d ../$(PKGNAME)-$(VERSION) ]; then cd ..; ln -s $(PKGNAME) $(PKGNAME)-$(VERSION); fi
	cd ..; tar -czvhf /var/tmp/$(PKGNAME)-$(VERSION).tar.gz -X$(PKGNAME)-$(VERSION)/excludes-dist $(PKGNAME)-$(VERSION)/;
	if [ -L ../$(PKGNAME)-$(VERSION) ]; then rm ../$(PKGNAME)-$(VERSION); fi

#
# Make a snapshot release
#
snap:	
	for i in $(SUBDIRS); do cd $$i; rm -f .depend; cd ..; done	
	if [ -L ../$(PKGNAME)-$(DATE) ]; then rm ../$(PKGNAME)-$(DATE); fi
	if [ ! -d ../$(PKGNAME)-$(DATE) ]; then cd ..; ln -s $(PKGNAME) $(PKGNAME)-$(DATE); fi
	cd ..; tar -czvhf /var/tmp/$(PKGNAME)-$(DATE).tar.gz -X$(PKGNAME)-$(DATE)/excludes-dist $(PKGNAME)-$(DATE);
	if [ -L ../$(PKGNAME)-$(DATE) ]; then rm ../$(PKGNAME)-$(DATE); fi

#
# Make RPM package for Red Hat systems.
#
rpm:	
	rm -rf rpmbuild BUILD RPMS SOURCES
	$(MAKE) clean
	$(MAKE) dist
	echo "%_topdir `pwd`" > .rpmmacros
	echo "`rpm --showrc|grep \^macrofiles`:`pwd`/.rpmmacros" >.rpmrc
	$(MAKE) prefix=/usr RELEASE=true -j
	$(MAKE) DESTDIR=`pwd`/rpmbuild RELEASE=true install
	find `pwd`/rpmbuild/usr/share/man/ -type f|xargs gzip -9
	ln -sf libdnet.so.2 rpmbuild/usr/lib/libdnet.so.1
	mkdir SOURCES SRPMS
	cp /var/tmp/$(PKGNAME)-$(VERSION).tar.gz SOURCES
	install -d rpmbuild/etc/rc.d/init.d
	install -d rpmbuild/usr/doc
	rm rpmbuild/usr/share/man/man1/dntype.1
	rm rpmbuild/usr/share/man/man1/dnprint.1
	rm rpmbuild/usr/share/man/man3/dnet_accept.3
	rm rpmbuild/usr/share/man/man3/dnet_reject.3
	rm rpmbuild/usr/share/man/man3/dnet_endnode.3
	rm rpmbuild/usr/share/man/man3/dnet_nextnode.3
	rm rpmbuild/usr/share/man/man8/dneigh.8
	ln -s dncopy.1.gz rpmbuild/usr/share/man/man1/dntype.1.gz
	ln -s dnsubmit.1.gz rpmbuild/usr/share/man/man1/dnprint.1.gz
	ln -s dnet_daemon.3.gz rpmbuild/usr/share/man/man3/dnet_accept.3.gz
	ln -s dnet_daemon.3.gz rpmbuild/usr/share/man/man3/dnet_reject.3.gz
	ln -s dnet_getnode.3.gz rpmbuild/usr/share/man/man3/dnet_endnode.3.gz
	ln -s dnet_getnode.3.gz rpmbuild/usr/share/man/man3/dnet_nextnode.3.gz
	ln -s dnetinfo.8.gz rpmbuild/usr/share/man/man8/dneigh.8.gz
	sed -e's@/usr/local@/usr@g' < scripts/decnet.sh >rpmbuild/etc/rc.d/init.d/decnet
	sed -e's/%%PACKAGENAME%%/$(PKGNAME)/g'                          \
	    -e's/%%VERSION%%/$(VERSION)/g'                              \
	    -e's/%%MAJOR_VERSION%%/$(MAJOR_VERSION)/g'                  \
	    -e's@%%PREFIX%%@/usr@g'                                     \
	    -e's@%%LIBPREFIX%%@/usr@g'                                  \
	    -e's@%%CONFPREFIX%%@/@g'                                    \
	   < rpm.spec >$(PKGNAME).spec
	mkdir -p BUILD RPMS/$(ARCH)
	cp README Documentation/*.README BUILD
	cp debian/changelog BUILD/NEWS
	cp libvaxdata/libvaxdata.pdf BUILD
	rpmbuild -ba --target $(ARCH) --buildroot `pwd`/rpmbuild -v --rcfile .rpmrc $(PKGNAME).spec
	rm -f $(PKGNAME).spec .rpmrc .rpmmacros

#
# Make Debian package.
#
deb:
	rm -f Documentation/*~ Documentation/*.bak
	dpkg-buildpackage -rfakeroot 
#
# Dummy rule for sub-directories
#
dummy:


# DO NOT DELETE THIS LINE -- make  depend  depends  on it.