~ubuntu-branches/ubuntu/raring/vlock/raring

« back to all changes in this revision

Viewing changes to Makefile

  • Committer: Bazaar Package Importer
  • Author(s): Alexander Wirt
  • Date: 2008-06-17 17:13:25 UTC
  • mfrom: (1.1.2 upstream) (3.1.1 lenny)
  • Revision ID: james.westby@ubuntu.com-20080617171325-ic8yy6tol0165i96
Tags: 2.2.2-3
* Don't try to chgrp to "vlock" during build time (Closes: #486665)
* Bump standards version (No changes)

Show diffs side-by-side

added added

removed removed

Lines of Context:
2
2
 
3
3
include config.mk
4
4
 
5
 
override CFLAGS += -Isrc -DPREFIX="\"$(PREFIX)\""
6
 
 
7
5
VPATH = src
8
6
 
9
 
VLOCK_VERSION = 2.1
 
7
VLOCK_VERSION = 2.2.2
10
8
 
11
 
PROGRAMS = \
12
 
                                        vlock \
13
 
                                        vlock-current \
14
 
                                        vlock-new \
15
 
                                        vlock-all \
16
 
                                        vlock-nosysrq
 
9
PROGRAMS = vlock vlock-main
17
10
 
18
11
.PHONY: all
19
12
all: $(PROGRAMS)
20
13
 
 
14
.PHONY: debug
 
15
debug:
 
16
        @$(MAKE) DEBUG=y
 
17
 
 
18
ifeq ($(ENABLE_PLUGINS),yes)
 
19
all: plugins
 
20
endif
 
21
 
 
22
.PHONY: plugins
 
23
plugins: modules scripts
 
24
 
 
25
.PHONY: modules
 
26
modules:
 
27
        @$(MAKE) -C modules
 
28
 
 
29
.PHONY: scripts
 
30
scripts:
 
31
        @$(MAKE) -C scripts
 
32
 
 
33
.PHONY: check memcheck
 
34
check memcheck:
 
35
        @$(MAKE) -C tests $@
 
36
 
 
37
### configuration ###
 
38
 
 
39
config.mk:
 
40
        $(info )
 
41
        $(info ###################################################)
 
42
        $(info # Creating default configuration.                 #)
 
43
        $(info # Run ./configure or edit config.mk to customize. #)
 
44
        $(info ###################################################)
 
45
        $(info )
 
46
        @./configure --quiet
 
47
 
 
48
### installation rules ###
 
49
 
 
50
.PHONY: install
 
51
install: install-programs install-man
 
52
 
 
53
ifeq ($(ENABLE_PLUGINS),yes)
 
54
install: install-plugins
 
55
endif
 
56
 
 
57
.PHONY: install-programs
 
58
install-programs: $(PROGRAMS)
 
59
        $(MKDIR_P) -m 755 $(DESTDIR)$(PREFIX)/bin
 
60
        $(INSTALL) -m 755 -o root -g $(ROOT_GROUP) vlock $(DESTDIR)$(BINDIR)/vlock
 
61
        $(MKDIR_P) -m 755 $(DESTDIR)$(PREFIX)/sbin
 
62
        $(INSTALL) -m 4711 -o root -g $(ROOT_GROUP) vlock-main $(DESTDIR)$(SBINDIR)/vlock-main
 
63
 
 
64
.PHONY: install-plugins
 
65
install-plugins: install-modules install-scripts
 
66
 
 
67
.PHONY: install-modules
 
68
install-modules:
 
69
        @$(MAKE) -C modules install
 
70
 
 
71
.PHONY: install-scripts
 
72
install-scripts:
 
73
        @$(MAKE) -C scripts install
 
74
 
 
75
.PHONY: install-man
 
76
install-man:
 
77
        $(MKDIR_P) -m 755 $(DESTDIR)$(MANDIR)/man1
 
78
        $(INSTALL) -m 644 -o root -g $(ROOT_GROUP) man/vlock.1 $(DESTDIR)$(MANDIR)/man1/vlock.1
 
79
        $(MKDIR_P) -m 755 $(DESTDIR)$(MANDIR)/man8
 
80
        $(INSTALL) -m 644 -o root -g $(ROOT_GROUP) man/vlock-main.8 $(DESTDIR)$(MANDIR)/man8/vlock-main.8
 
81
        $(MKDIR_P) -m 755 $(DESTDIR)$(MANDIR)/man5
 
82
        $(INSTALL) -m 644 -o root -g $(ROOT_GROUP) man/vlock-plugins.5 $(DESTDIR)$(MANDIR)/man5/vlock-plugins.5
 
83
 
 
84
 
 
85
### build rules ###
 
86
 
21
87
vlock: vlock.sh config.mk Makefile
22
88
        $(BOURNE_SHELL) -n $<
23
89
        sed \
24
90
                -e 's,%BOURNE_SHELL%,$(BOURNE_SHELL),' \
25
91
                -e 's,%PREFIX%,$(PREFIX),' \
26
92
                -e 's,%VLOCK_VERSION%,$(VLOCK_VERSION),' \
 
93
                -e 's,%VLOCK_ENABLE_PLUGINS%,$(ENABLE_PLUGINS),' \
27
94
                $< > $@.tmp
28
95
        mv -f $@.tmp $@
29
96
 
30
 
ifneq ($(USE_ROOT_PASS),y)
31
 
vlock-current : override CFLAGS += -DNO_ROOT_PASS
 
97
override CFLAGS += -Isrc
 
98
 
 
99
vlock-main: vlock-main.o prompt.o auth-$(AUTH_METHOD).o console_switch.o util.o
 
100
 
 
101
auth-pam.o: auth-pam.c prompt.h auth.h
 
102
auth-shadow.o: auth-shadow.c prompt.h auth.h
 
103
prompt.o: prompt.c prompt.h
 
104
vlock-main.o: vlock-main.c auth.h prompt.h util.h
 
105
plugins.o: plugins.c tsort.h plugin.h plugins.h list.h util.h
 
106
module.o : override CFLAGS += -DVLOCK_MODULE_DIR="\"$(MODULEDIR)\""
 
107
module.o: module.c plugin.h list.h util.h
 
108
script.o : override CFLAGS += -DVLOCK_SCRIPT_DIR="\"$(SCRIPTDIR)\""
 
109
script.o: script.c plugin.h process.h list.h util.h
 
110
plugin.o: plugin.c plugin.h list.h util.h
 
111
tsort.o: tsort.c tsort.h list.h
 
112
list.o: list.c list.h util.h
 
113
console_switch.o: console_switch.c console_switch.h
 
114
process.o: process.c process.h
 
115
util.o: util.c util.h
 
116
 
 
117
ifneq ($(ENABLE_ROOT_PASSWORD),yes)
 
118
vlock-main.o : override CFLAGS += -DNO_ROOT_PASS
32
119
endif
33
120
 
34
121
ifeq ($(AUTH_METHOD),pam)
35
 
vlock-current : override LDFLAGS += $(PAM_LIBS)
 
122
vlock-main : override LDLIBS += $(PAM_LIBS)
36
123
endif
37
124
 
38
125
ifeq ($(AUTH_METHOD),shadow)
39
 
vlock-current : override LDFLAGS += -lcrypt
40
 
endif
41
 
 
42
 
vlock-current: vlock-current.c prompt.c auth-$(AUTH_METHOD).c
43
 
 
44
 
ifeq ($(USE_PAM),y)
45
 
vlock-nosysrq vlock-all : override LDFLAGS += $(PAM_LIBS)
46
 
vlock-nosysrq vlock-all : override CFLAGS += -DUSE_PAM
47
 
endif
48
 
 
49
 
ifndef VLOCK_GROUP
50
 
VLOCK_GROUP = root
51
 
ifndef VLOCK_MODE
52
 
VLOCK_MODE = 4711
53
 
endif
54
 
else # VLOCK_GROUP is defined
55
 
ifndef VLOCK_MODE
56
 
VLOCK_MODE = 4710
57
 
endif
58
 
endif
59
 
 
60
 
.PHONY: install
61
 
install: install-programs install-man
62
 
 
63
 
.PHONY: install-programs
64
 
install-programs: $(PROGRAMS)
65
 
        $(INSTALL) -D -m 755 -o root -g $(ROOT_GROUP) vlock $(DESTDIR)$(PREFIX)/bin/vlock
66
 
        $(INSTALL) -D -m 4711 -o root -g $(ROOT_GROUP) vlock-current $(DESTDIR)$(PREFIX)/sbin/vlock-current
67
 
        $(INSTALL) -D -m 755 -o root -g $(ROOT_GROUP) vlock-all $(DESTDIR)$(PREFIX)/sbin/vlock-all
68
 
        $(INSTALL) -D -m $(VLOCK_MODE) -o root -g $(VLOCK_GROUP) vlock-nosysrq $(DESTDIR)$(PREFIX)/sbin/vlock-nosysrq
69
 
        $(INSTALL) -D -m $(VLOCK_MODE) -o root -g $(VLOCK_GROUP) vlock-new $(DESTDIR)$(PREFIX)/sbin/vlock-new
70
 
 
71
 
.PHONY: install-man
72
 
install-man:
73
 
        $(INSTALL) -D -m 644 -o root -g $(ROOT_GROUP) man/vlock.1 $(DESTDIR)$(PREFIX)/share/man/man1/vlock.1
74
 
        $(INSTALL) -D -m 644 -o root -g $(ROOT_GROUP) man/vlock-current.8 $(DESTDIR)$(PREFIX)/share/man/man8/vlock-current.8
75
 
        $(INSTALL) -D -m 644 -o root -g $(ROOT_GROUP) man/vlock-all.8 $(DESTDIR)$(PREFIX)/share/man/man8/vlock-all.8
76
 
        $(INSTALL) -D -m 644 -o root -g $(ROOT_GROUP) man/vlock-new.8 $(DESTDIR)$(PREFIX)/share/man/man8/vlock-new.8
77
 
        $(INSTALL) -D -m 644 -o root -g $(ROOT_GROUP) man/vlock-nosysrq.8 $(DESTDIR)$(PREFIX)/share/man/man8/vlock-nosysrq.8
 
126
vlock-main : override LDLIBS += $(CRYPT_LIB)
 
127
endif
 
128
 
 
129
ifeq ($(ENABLE_PLUGINS),yes)
 
130
vlock-main: plugins.o plugin.o module.o process.o script.o tsort.o list.o
 
131
# -rdynamic is needed so that the all plugin can access the symbols from console_switch.o
 
132
vlock-main : override LDFLAGS += -rdynamic
 
133
vlock-main : override LDLIBS += $(DL_LIB)
 
134
vlock-main.o : override CFLAGS += -DUSE_PLUGINS
 
135
vlock-main.o: plugins.h
 
136
endif
 
137
 
 
138
.PHONY: realclean
 
139
realclean: clean
 
140
        $(RM) config.mk
78
141
 
79
142
.PHONY: clean
80
143
clean:
81
 
        rm -f $(PROGRAMS)
 
144
        $(RM) $(PROGRAMS) $(wildcard *.o)
 
145
        @$(MAKE) -C modules clean
 
146
        @$(MAKE) -C scripts clean
 
147
        @$(MAKE) -C tests clean