1#
2# Makefile.in	Makefile for the liblockfile package
3#
4
5MAJOR		= 1
6SOVER		= 1.0
7NFSVER		= 0.1
8
9CFLAGS		= @CFLAGS@ -I.
10LDFLAGS		= @LDFLAGS@
11CC		= @CC@
12
13prefix		= $(DESTDIR)@prefix@
14exec_prefix	= @exec_prefix@
15bindir		= @bindir@
16libdir		= @libdir@
17mandir		= $(DESTDIR)@mandir@
18nfslockdir	= @nfslockdir@
19includedir	= @includedir@
20datarootdir	= @datarootdir@
21MAILGROUP	= @MAILGROUP@
22
23VERSION		= $(shell sed -ne "1s/^liblockfile (\(.*\))/\1/p" < Changelog)
24
25all:		@TARGETS@
26install:	@INSTALL_TARGETS@
27
28static:		liblockfile.a dotlockfile
29shared:		liblockfile.so liblockfile.a dotlockfile
30nfslib:		nfslock.so.$(NFSVER)
31
32liblockfile.a:	lockfile.o
33		$(AR) rv liblockfile.a lockfile.o
34
35liblockfile.so: solockfile.o
36		$(CC) $(LDFLAGS) -fPIC -shared -Wl,-soname,liblockfile.so.1 \
37			-o liblockfile.so solockfile.o -lc
38
39nfslock.so.$(NFSVER):	nfslock.o
40		$(CC) $(LDFLAGS) -fPIC -shared -Wl,-soname,nfslock.so.0 \
41			-o nfslock.so.$(NFSVER) nfslock.o
42
43dotlockfile:	dotlockfile.o dlockfile.o
44		$(CC) $(LDFLAGS) -o dotlockfile dotlockfile.o dlockfile.o
45
46dotlockfile.o:	dotlockfile.c
47		$(CC) $(CFLAGS) -DLOCKPROG=\"$(bindir)/dotlockfile\" \
48			-c dotlockfile.c
49
50lockfile.o:	lockfile.c
51		$(CC) $(CFLAGS) -DLIB -DLOCKPROG=\"$(bindir)/dotlockfile\" \
52			-DSTATIC -c lockfile.c
53
54solockfile.o:	lockfile.c
55		$(CC) $(CFLAGS) -DLIB -DLOCKPROG=\"$(bindir)/dotlockfile\" \
56			-c lockfile.c -o solockfile.o
57
58dlockfile.o:	lockfile.c
59		$(CC) $(CFLAGS) -DLOCKPROG=\"$(bindir)/dotlockfile\" \
60			-c lockfile.c -o dlockfile.o
61
62install_static:	static install_common
63		install -d -m 755 -p $(libdir)
64		install -m 644 liblockfile.a $(libdir)
65
66install_shared:	shared install_static install_common
67		install -d -m 755 -p $(libdir)
68		install -m 755 liblockfile.so \
69			$(libdir)/liblockfile.so.$(SOVER)
70		ln -s liblockfile.so.$(SOVER) $(libdir)/liblockfile.so.$(MAJOR)
71		ln -s liblockfile.so.$(SOVER) $(libdir)/liblockfile.so
72		if test "$(DESTDIR)" = ""; then @LDCONFIG@; fi
73
74install_common:
75		install -d -m 755 -p $(includedir)
76		install -d -m 755 -p $(bindir)
77		install -d -m 755 -p $(mandir)/man1
78		install -d -m 755 -p $(mandir)/man3
79		install -m 644 lockfile.h maillock.h $(includedir)
80		install -m 755 dotlockfile $(bindir)
81		install -m 644 *.1 $(mandir)/man1
82		install -m 644 *.3 $(mandir)/man3
83
84install_nfslib:	nfslib
85		install -d -m 755 -p $(nfslockdir)
86		install -m 755 nfslock.so.$(NFSVER) $(nfslockdir)
87		if test "$(DESTDIR)" = ""; then @LDCONFIG@; fi
88
89test:		test-stamp
90		@:
91
92test-stamp:	dotlockfile
93		./run-tests.sh
94		touch test-stamp
95
96tar:		tarball
97		@:
98
99tarball:	clean
100		(tar --xform "s/^liblockfile/liblockfile-$(VERSION)/" \
101			--exclude Makefile --exclude autoconf.h --exclude maillock.h \
102			--exclude config.cache --exclude config.log --exclude config.status \
103			--exclude autom4te.cache \
104			--exclude-vcs --exclude-vcs-ignores \
105			-C .. -czf ../liblockfile-$(VERSION).tar.gz liblockfile )
106
107clean:
108		rm -f *.a *.o *.so *.so.* dotlockfile test-stamp
109
110distclean:	clean
111		rm -f Makefile autoconf.h maillock.h \
112			config.cache config.log config.status; \
113		rm -rf autom4te.cache
114
115