d1669720b63718358f77968224e1a1d44a19f54b
[freeradius.git] / raddb / Makefile
1 #
2 # Makefile
3 #
4 # Version:      $Id$
5 #
6
7 include ../Make.inc
8
9 #
10 #  The list of files to install.
11 #
12 FILES = acct_users attrs attrs.access_reject attrs.accounting_response  \
13         attrs.pre-proxy clients.conf dictionary templates.conf  \
14         experimental.conf hints huntgroups ldap.attrmap                 \
15         policy.txt preproxy_users proxy.conf radiusd.conf trigger.conf  \
16         users   policy.conf attrs.access_challenge
17
18 DEFAULT_SITES = default inner-tunnel
19 ifneq "${OPENSSL_INCLUDE}" ""
20 DEFAULT_SITES += tls
21 endif
22
23 DEFAULT_MODULES = acct_unique always attr_filter attr_rewrite chap checkval \
24                 counter cui detail detail.log digest dynamic_clients eap \
25                 echo exec expiration expr files inner-eap linelog logintime \
26                 mschap ntlm_auth pap passwd preprocess radutmp realm \
27                 replicate soh sradutmp unix utf8 wimax
28
29 #
30 #       This target is here for local debugging
31 #
32 all: sites-enabled mods-enabled
33
34 .PHONY: sites-enabled
35 sites-enabled:
36         @if [ ! -d sites-enabled ]; then \
37                 mkdir sites-enabled; \
38         fi
39         @cd sites-enabled/; \
40          for x in $(DEFAULT_SITES); do \
41             if [ ! -f $$x ]; then \
42                 ln -s ../sites-available/$$x; \
43             fi; \
44         done
45
46 .PHONY: mods-enabled
47 mods-enabled:
48         @if [ ! -d mods-enabled ]; then \
49                 mkdir mods-enabled; \
50         fi
51         @cd mods-enabled/; \
52          for x in $(DEFAULT_MODULES); do \
53             if [ ! -f $$x ]; then \
54                 ln -s ../modules/$$x; \
55             fi; \
56         done
57
58 install:
59         $(INSTALL) -d -m 750    $(R)$(raddbdir)
60         $(INSTALL) -d -m 750    $(R)$(raddbdir)/sites-available
61         $(INSTALL) -d -m 750    $(R)$(raddbdir)/sites-enabled
62         $(INSTALL) -d -m 750    $(R)$(raddbdir)/modules
63         @echo "Creating/updating files in $(R)$(raddbdir)"; \
64         for i in $(FILES) `find sites-available/ modules/ -type f -print | sed 's/.*CVS.*//;s/.*~//;s/.*#.*//' `; do \
65                 [ ! -f $(R)$(raddbdir)/$$i ] && $(INSTALL) -m 640 $$i $(R)$(raddbdir)/$$i; \
66                 if [ "`find $$i -newer $(R)$(raddbdir)/$$i`" ]; then \
67                         echo "** $(R)$(raddbdir)/$$i"; \
68                         nt=1; \
69                 fi; \
70         done; \
71         if [ "$$nt" ]; then \
72                 echo "**";\
73                 echo "** WARNING ** WARNING ** WARNING ** WARNING ** WARNING ** WARNING ** WARNING **";\
74                 echo "** WARNING ** WARNING ** WARNING ** WARNING ** WARNING ** WARNING ** WARNING **";\
75                 echo "**";\
76                 echo "** The sample configuration files in `pwd`";\
77                 echo "** are newer than those in $(R)$(raddbdir)";\
78                 echo "**";\
79                 echo "** Please investigate and manually copy (if appropriate) the files listed above.";\
80                 echo "**";\
81                 echo "** WARNING ** WARNING ** WARNING ** WARNING ** WARNING ** WARNING ** WARNING **";\
82                 echo "** WARNING ** WARNING ** WARNING ** WARNING ** WARNING ** WARNING ** WARNING **";\
83         fi
84         chmod 640 $(R)$(raddbdir)/clients.conf
85         if [ ! -d $(R)$(raddbdir)/certs ]; then \
86                 $(INSTALL) -d -m 750    $(R)$(raddbdir)/certs; \
87                 $(INSTALL) -m 750 certs/bootstrap $(R)$(raddbdir)/certs; \
88                 for i in Makefile README xpextensions ca.cnf server.cnf client.cnf; do \
89                         $(INSTALL) -m 640 certs/$$i $(R)$(raddbdir)/certs; \
90                 done; \
91                 $(MAKE) -C $(R)$(raddbdir)/certs; \
92         fi
93         if [ ! -d $(R)$(raddbdir)/sql ]; then \
94                 find sql -name CVS -prune -o -print | \
95                   while read file; do \
96                     if [ -d "$$file" ]; then \
97                       $(INSTALL) -d -m 750 "$(R)$(raddbdir)/$$file"; \
98                     else \
99                       $(INSTALL) -m 640 "$$file" "$(R)$(raddbdir)/$$file"; \
100                     fi; \
101                   done; \
102         fi
103         @cd $(R)$(raddbdir)/sites-enabled/; \
104          for x in $(DEFAULT_SITES); do \
105             if [ ! -f $$x ]; then \
106                 ln -s ../sites-available/$$x; \
107             fi; \
108         done
109
110 clean:
111         @rm -rf *~ $(addprefix sites-enabled/,$(DEFAULT_SITES)) \
112                 $(addprefix mods-enabled/,$(DEFAULT_MODULES))
113
114 triggers:
115         @grep exec_trigger `find ../src -name "*.c" -print` | grep '"' | sed -e 's/.*,//' -e 's/ *"//' -e 's/");.*//'