makefile typo
[freeside.git] / Makefile
1 #!/usr/bin/make
2
3 DATASOURCE = DBI:Pg:host=localhost;dbname=freeside
4 #DATASOURCE=DBI:mysql:freeside
5
6 DB_USER = freeside
7 DB_PASSWORD=
8
9 TEMPLATE = asp
10 #mason's a bit dodgy still
11 #TEMPLATE = mason
12
13 FREESIDE_DOCUMENT_ROOT = /var/www/freeside
14
15 #---
16
17 #not changable yet
18 FREESIDE_CONF = /usr/local/etc/freeside
19
20 help:
21         @echo "supported targets: aspdocs masondocs alldocs docs install-docs"
22         @echo "                   perl-modules install-perl-modules"
23         @echo "                   install deploy"
24         @echo "                   create-database"
25         @echo "                   clean"
26
27 aspdocs: httemplate/* httemplate/*/* httemplate/*/*/* httemplate/*/*/*/* httemplate/*/*/*/*/*
28         rm -rf aspdocs
29         cp -pr httemplate aspdocs
30         touch aspdocs
31
32 masondocs: httemplate/* httemplate/*/* httemplate/*/*/* httemplate/*/*/*/* httemplate/*/*/*/*/*
33         rm -rf masondocs
34         cp -pr httemplate masondocs
35         ( cd masondocs; \
36           ../bin/masonize; \
37         )
38         touch masondocs
39
40 alldocs: aspdocs masondocs
41
42 docs:
43         make ${TEMPLATE}docs
44
45 install-docs: docs
46         mv ${FREESIDE_DOCUMENT_ROOT} ${FREESIDE_DOCUMENT_ROOT}.`date +%Y%m%d%H%M%S`
47         cp -r ${TEMPLATE}docs ${FREESIDE_DOCUMENT_ROOT}
48
49 perl-modules:
50         cd FS; \
51         [ -e Makefile ] || perl Makefile.PL; \
52         make
53
54 install-perl-modules: perl-modules
55         cd FS; \
56         make install UNINST=1
57
58 install: install-perl-modules install-docs
59
60 deploy: install
61         /etc/init.d/apache restart
62
63 create-database:
64         perl -e 'use DBIx::DataSource qw( create_database ); create_database( \'${DATASOURCE}\', \'${DB_USER}\', \'${DB_PASSWORD}\' ) or die $DBIx::DataSource::errstr;'
65
66 create-config: install-perl-modules
67         [ -d ${FREESIDE_CONF} ] || mkdir ${FREESIDE_CONF}
68         chown freeside ${FREESIDE_CONF}
69
70         echo -e "${DATASOURCE}\n${DB_USER}\n${DB_PASSWORD}" >${FREESIDE_CONF}/secrets
71
72         [ -d "${FREESIDE_CONF}/conf.${DATASOURCE}" ] \
73           || mkdir "${FREESIDE_CONF}/conf.${DATASOURCE}"
74         chown freeside "${FREESIDE_CONF}/conf.${DATASOURCE}"
75
76         [ -d "${FREESIDE_CONF}/counters.${DATASOURCE}" ] \
77           || mkdir "${FREESIDE_CONF}/counters.${DATASOURCE}"
78         chown freeside "${FREESIDE_CONF}/counters.${DATASOURCE}"
79
80         [ -d "${FREESIDE_CONF}/cache.${DATASOURCE}" ] \
81           || mkdir "${FREESIDE_CONF}/cache.${DATASOURCE}"
82         chown freeside "${FREESIDE_CONF}/cache.${DATASOURCE}"
83
84         [ -d "${FREESIDE_CONF}/export.${DATASOURCE}" ] \
85           || mkdir "${FREESIDE_CONF}/export.${DATASOURCE}"
86         chown freeside "${FREESIDE_CONF}/export.${DATASOURCE}"
87
88 clean:
89         rm -rf aspdocs masondocs
90         cd FS; \
91         make clean
92