Create directories. "cp -R" isn't portable.
[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 \
14         eap.conf experimental.conf hints huntgroups ldap.attrmap        \
15          naspasswd otp.conf     \
16         preproxy_users proxy.conf radiusd.conf radrelay.conf            \
17         realms snmp.conf sql.conf sqlippool.conf users vmpsd.conf \
18         sites-available/default sites-available/example
19
20 #
21 #       This target is here for local debugging
22 #
23 all:
24         @if [ ! -d sites-enabled ]; then \
25                 mkdir sites-enabled; \
26         fi
27         @if [ ! -f sites-enabled/default ]; then \
28                 cd sites-enabled && ln -s ../sites-available/default; \
29         fi
30
31 install:
32         $(INSTALL) -d -m 750    $(R)$(raddbdir)
33         $(INSTALL) -d -m 750    $(R)$(raddbdir)/sites-available
34         $(INSTALL) -d -m 750    $(R)$(raddbdir)/sites-enabled
35         @echo "Creating/updating files in $(R)$(raddbdir)"; \
36         for i in $(FILES); do \
37                 [ ! -f $(R)$(raddbdir)/$$i ] && $(INSTALL) -m 640 $$i $(R)$(raddbdir)/$$i; \
38                 if [ "`find $$i -newer $(R)$(raddbdir)/$$i`" ]; then \
39                         echo "** $(R)$(raddbdir)/$$i"; \
40                         nt=1; \
41                 fi; \
42         done; \
43         if [ "$$nt" ]; then \
44                 echo "**";\
45                 echo "** WARNING ** WARNING ** WARNING ** WARNING ** WARNING ** WARNING ** WARNING **";\
46                 echo "** WARNING ** WARNING ** WARNING ** WARNING ** WARNING ** WARNING ** WARNING **";\
47                 echo "**";\
48                 echo "** The sample configuration files in `pwd`";\
49                 echo "** are newer than those in $(R)$(raddbdir)";\
50                 echo "**";\
51                 echo "** Please investigate and manually copy (if appropriate) the files listed above.";\
52                 echo "**";\
53                 echo "** WARNING ** WARNING ** WARNING ** WARNING ** WARNING ** WARNING ** WARNING **";\
54                 echo "** WARNING ** WARNING ** WARNING ** WARNING ** WARNING ** WARNING ** WARNING **";\
55         fi
56         chmod 640 $(R)$(raddbdir)/naspasswd $(R)$(raddbdir)/clients.conf
57         if [ ! -d $(R)$(raddbdir)/certs ]; then \
58                 $(INSTALL) -d -m 750    $(R)$(raddbdir)/certs; \
59                 $(INSTALL) -m 750 certs/bootstrap $(R)$(raddbdir)/certs; \
60                 for i in Makefile README xpextensions ca.cnf server.cnf client.cnf; do \
61                         $(INSTALL) -m 640 certs/$$i $(R)$(raddbdir)/certs; \
62                 done; \
63         fi
64         if [ ! -d $(R)$(raddbdir)/sql ]; then \
65                 mkdir $(R)$(raddbdir)/sql; \
66                 for db in mysql mssql oracle postgresql; do \
67                         $(INSTALL) -d -m 750 $(R)$(raddbdir)/sql/$$db; \
68                 done; \
69                 cp -R sql/* $(R)$(raddbdir)/sql 2>/dev/null || true; \
70         fi
71         if [ ! -f $(R)$(raddbdir)/sites-enabled/default ]; then \
72                 cd $(R)$(raddbdir)/sites-enabled/; \
73                 ln -s ../sites-available/default; \
74         fi
75
76 clean: