Merge branch 'sam'
[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 README
17
18 DEFAULT_SITES = default inner-tunnel
19
20 DEFAULT_MODULES = acct_unique always attr_filter attr_rewrite chap checkval \
21                 counter cui detail detail.log digest dynamic_clients eap \
22                 echo exec expiration expr files inner-eap linelog logintime \
23                 mschap ntlm_auth pap passwd preprocess radutmp realm \
24                 replicate soh sradutmp unix utf8 wimax
25
26 #
27 #       This target is here for local debugging
28 #
29 all: sites-enabled mods-enabled
30
31 .PHONY: sites-enabled
32 sites-enabled:
33         @if [ ! -d sites-enabled ]; then \
34                 mkdir sites-enabled; \
35         fi
36         @cd sites-enabled/; \
37          for x in $(DEFAULT_SITES); do \
38             if [ ! -f $$x ]; then \
39                 ln -s ../sites-available/$$x; \
40             fi; \
41         done
42
43 .PHONY: mods-enabled
44 mods-enabled:
45         @if [ ! -d mods-enabled ]; then \
46                 mkdir mods-enabled; \
47         fi
48         @cd mods-enabled/; \
49          for x in $(DEFAULT_MODULES); do \
50             if [ ! -f $$x ]; then \
51                 ln -s ../mods-available/$$x; \
52             fi; \
53         done
54
55 install:
56         $(INSTALL) -d -m 750    $(R)$(raddbdir)
57         $(INSTALL) -d -m 750    $(R)$(raddbdir)/sites-available
58         $(INSTALL) -d -m 750    $(R)$(raddbdir)/sites-enabled
59         $(INSTALL) -d -m 750    $(R)$(raddbdir)/mods-available
60         $(INSTALL) -d -m 750    $(R)$(raddbdir)/mods-enabled
61         @echo "Creating/updating files in $(R)$(raddbdir)"; \
62         for i in $(FILES) `find sites-available/ mods-available/ -type f -print | sed 's/.*~//;s/.*#.*//' `; do \
63                 [ ! -f $(R)$(raddbdir)/$$i ] && $(INSTALL) -m 640 $$i $(R)$(raddbdir)/$$i; \
64                 if [ "`find $$i -newer $(R)$(raddbdir)/$$i`" ]; then \
65                         echo "** $(R)$(raddbdir)/$$i"; \
66                         nt=1; \
67                 fi; \
68         done; \
69         if [ "$$nt" ]; then \
70                 echo "**";\
71                 echo "** WARNING ** WARNING ** WARNING ** WARNING ** WARNING ** WARNING ** WARNING **";\
72                 echo "** WARNING ** WARNING ** WARNING ** WARNING ** WARNING ** WARNING ** WARNING **";\
73                 echo "**";\
74                 echo "** The sample configuration files in `pwd`";\
75                 echo "** are newer than those in $(R)$(raddbdir)";\
76                 echo "**";\
77                 echo "** Please investigate and manually copy (if appropriate) the files listed above.";\
78                 echo "**";\
79                 echo "** WARNING ** WARNING ** WARNING ** WARNING ** WARNING ** WARNING ** WARNING **";\
80                 echo "** WARNING ** WARNING ** WARNING ** WARNING ** WARNING ** WARNING ** WARNING **";\
81         fi
82         chmod 640 $(R)$(raddbdir)/clients.conf
83         if [ ! -d $(R)$(raddbdir)/certs ]; then \
84                 $(INSTALL) -d -m 750    $(R)$(raddbdir)/certs; \
85                 $(INSTALL) -m 750 certs/bootstrap $(R)$(raddbdir)/certs; \
86                 for i in Makefile README xpextensions ca.cnf server.cnf client.cnf; do \
87                         $(INSTALL) -m 640 certs/$$i $(R)$(raddbdir)/certs; \
88                 done; \
89                 $(MAKE) -C $(R)$(raddbdir)/certs; \
90         fi
91         if [ ! -d $(R)$(raddbdir)/sql ]; then \
92                 find sql -name CVS -prune -o -print | \
93                   while read file; do \
94                     if [ -d "$$file" ]; then \
95                       $(INSTALL) -d -m 750 "$(R)$(raddbdir)/$$file"; \
96                     else \
97                       $(INSTALL) -m 640 "$$file" "$(R)$(raddbdir)/$$file"; \
98                     fi; \
99                   done; \
100         fi
101         @cd $(R)$(raddbdir)/sites-enabled/; \
102          for x in $(DEFAULT_SITES); do \
103             if [ ! -f $$x ]; then \
104                 ln -s ../sites-available/$$x; \
105             fi; \
106         done
107         @cd $(R)$(raddbdir)/mods-enabled/; \
108          for x in $(DEFAULT_MODULES); do \
109             if [ ! -f $$x ]; then \
110                 ln -s ../mods-available/$$x; \
111             fi; \
112         done
113
114 clean:
115         @rm -rf *~ $(addprefix sites-enabled/,$(DEFAULT_SITES)) \
116                 $(addprefix mods-enabled/,$(DEFAULT_MODULES))
117
118 triggers:
119         @grep exec_trigger `find ../src -name "*.c" -print` | grep '"' | sed -e 's/.*,//' -e 's/ *"//' -e 's/");.*//'