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