]> git.evergreen-ils.org Git - Evergreen.git/blob - Open-ILS/src/Makefile
web/js/opensrf directory has to exist before we can install into it
[Evergreen.git] / Open-ILS / src / Makefile
1 # vim:noet:ts=4
2
3 export LDFLAGS                  += -L . -L$(TMP) -L $(OPENSRF_LIBS)
4 export CFLAGS                   += -pipe -g -Wall -O2 -fPIC -I../../include -I$(LIBXML2_HEADERS) -I$(APACHE2_HEADERS) -I$(APR_HEADERS) \
5                                 -D_LARGEFILE64_SOURCE -I$(LIBXML2_HEADERS)/libxml  -I$(TMP) -I$(OPENSRF_HEADERS)
6
7 export INCDIR = "$(INCLUDEDIR)/openils/"
8
9 export STAFF_CLIENT_BUILD_ID = `/bin/cat ../xul/staff_client/build/BUILD_ID`
10
11 all:  c_apps client-xul mod_xmlent python-build
12
13 install:        perl-install python-install web-install server-xul string-templates-install xsl-install c_apps-install circ_rules-install offline-install storage-bootstrap cgi-bootstrap
14
15 web-install:    webcore-install autojs-install mod_xmlent-install offline-install reporter-install
16
17 circ_rules-install:
18         @echo $@
19         mkdir -p $(CIRCRULESDIR)
20         mkdir -p $(PENALTYRULESDIR)
21         mkdir -p $(CATALOGSCRIPTDIR)
22         cp javascript/backend/circ/*.js $(CIRCRULESDIR)
23         cp javascript/backend/penalty/*.js $(PENALTYRULESDIR)
24         cp javascript/backend/catalog/*.js $(CATALOGSCRIPTDIR)
25         cp support-scripts/fine_generator.pl $(BINDIR) 
26         cp support-scripts/hold_targeter.pl $(BINDIR) 
27         cp support-scripts/reshelving_complete.srfsh $(BINDIR) 
28         cp support-scripts/thaw_expired_frozen_holds.srfsh $(BINDIR) 
29         cp support-scripts/long-overdue-status-update.pl $(BINDIR) 
30
31
32 # -----------------------------------------------------------------------------------
33 # Web stuff
34 # -----------------------------------------------------------------------------------
35 mod_xmlent:
36         @echo $@
37         make -C apachemods mod_xmlent.so
38
39 oils_cgi:
40         @echo $@
41         make -C apachemods oils_cgi.so
42
43 oils_cgi-install:
44         @echo $@
45         make -C apachemods oils_cgi-install
46
47 mod_xmlent-install:
48         @echo $@
49         make -C apachemods mod_xmlent-install
50
51 client-xul:
52         @echo $@
53         @echo "Building staff client"
54         make -C ../xul/staff_client 
55
56 server-xul:
57         @echo $@
58         mkdir -p ${WEBDIR}
59         @echo "Creating ${WEBDIR}/xul/"
60         mkdir -p ${WEBDIR}/xul/
61         @echo "BUILD_ID = ${STAFF_CLIENT_BUILD_ID}"
62         @echo "Copying xul into ${WEBDIR}/xul/${STAFF_CLIENT_BUILD_ID}"
63         mkdir -p "${WEBDIR}/xul/${STAFF_CLIENT_BUILD_ID}"
64         cp -R ../xul/staff_client/build/server "${WEBDIR}/xul/${STAFF_CLIENT_BUILD_ID}/"
65
66 webcore-install:
67         @echo $@
68         echo "Copying web into $(WEBDIR)"
69         mkdir -p $(ADMINDIR)
70         cp -r ../admin/* $(ADMINDIR)
71         mkdir -p $(WEBDIR)
72         mkdir -p $(WEBDIR)/js/opensrf/
73         mkdir -p $(WEBDIR)/opac/extras/xsl/
74         cp -r ../web/* $(WEBDIR)
75         cp $(OPENSRF_LIBS)/javascript/* $(WEBDIR)/opac/common/js/
76         # dojo-ified opensrf libs
77         cp $(OPENSRF_LIBS)/javascript/opensrf*js $(WEBDIR)/js/opensrf/
78         cp $(OPENSRF_LIBS)/javascript/OpenSRF.js $(WEBDIR)/js/
79         ln -sf $(WEBDIR)/opac/skin/default/xml/index.xml $(WEBDIR)/opac/skin/default/xml/mresult.xml
80         ln -sf $(WEBDIR)/opac/skin/default/xml/index.xml $(WEBDIR)/opac/skin/default/xml/rresult.xml
81         ln -sf $(WEBDIR)/opac/skin/default/xml/index.xml $(WEBDIR)/opac/skin/default/xml/rdetail.xml
82         ln -sf $(WEBDIR)/opac/skin/default/xml/index.xml $(WEBDIR)/opac/skin/default/xml/advanced.xml
83         ln -sf $(WEBDIR)/opac/skin/default/xml/index.xml $(WEBDIR)/opac/skin/default/xml/myopac.xml
84         ln -sf $(WEBDIR)/opac/skin/default/xml/index.xml $(WEBDIR)/opac/skin/default/xml/cnbrowse.xml
85         cp ../xul/staff_client/chrome//content//util/date.js $(WEBDIR)/opac/common/js/
86         cp ../xsl/*.xsl $(WEBDIR)/opac/extras/xsl/
87         ln -sf $(ETCDIR)/fm_IDL.xml $(WEBDIR)/reports/
88         cp ../xul/staff_client/server/admin/adminlib.js $(WEBDIR)/reports/
89         mkdir -p $(WEBDIR)/opac/extras/slimpac/
90         
91
92 libfieldmapper: 
93         make -C apachemods libfieldmapper.so
94
95 libfieldmapper-install: 
96         make -C apachemods libfieldmapper-install
97
98 c_apps:
99         @echo $@
100         make -C c-apps
101         make -C extras oils_requestor
102
103 c_apps-install:
104         @echo $@
105         make -C c-apps install
106         make -C extras oils_requestor-install
107
108 autojs-install:
109         @echo $@
110         cp extras/fieldmapper.pl $(BINDIR)
111         cp extras/org_tree_js.pl $(BINDIR)
112         cp extras/org_lasso_js.pl $(BINDIR)
113         cp extras/org_tree_html_options.pl $(BINDIR)
114         cp extras/org_tree_proximity.pl $(BINDIR)
115         cp extras/autogen.sh $(BINDIR)
116         cp support-scripts/offline-blocked-list.pl $(BINDIR) # this should probably be somewhere else
117 # -----------------------------------------------------------------------------------
118
119 marcdumper:
120         @echo $@
121         make -C extras/marcdumper
122
123 marcdumper-install:
124         @echo $@
125         make -C extras/marcdumper install
126
127 # -----------------------------------------------------------------------------------
128
129 perl-install:
130         @echo $@
131         @echo "Installing Perl modules to $(PERLDIR)"
132         mkdir -p $(PERLDIR)
133         mkdir -p $(DATADIR)
134         mkdir -p $(BINDIR)
135         cp extras/ils_events.xml $(DATADIR)
136         cp -r perlmods/* $(PERLDIR)
137         cp ../examples/opensrf.xml.example $(ETCDIR)
138         cp ../examples/opensrf_core.xml.example $(ETCDIR)
139         cp ../examples/fm_IDL.xml $(ETCDIR)
140         cp ../examples/oils_sip.xml.example $(ETCDIR)
141         cp ../examples/hold_notification_template.example $(DATADIR)
142         cp ../examples/oils_ctl.sh $(BINDIR)
143         cp ../examples/lib_ips.txt.example $(ETCDIR)
144         mkdir -p $(TEMPLATEDIR)
145         cp -r templates/marc $(TEMPLATEDIR)
146
147 # ------------------------------------------------------------------------------
148
149 python-build:
150         if [ -n "$(EG_PYTHON_INSTALL)" ]; then echo $@; make -C python build; fi;
151
152 # -----------------------------------------------------------------------------------
153
154 python-install:
155         if [ -n "$(EG_PYTHON_INSTALL)" ]; then echo $@; make -C python install; fi;
156
157 # -----------------------------------------------------------------------------------
158
159 reporter-install:
160         @echo $@
161         @echo "Installing Reporter email templates to $(REPORTERDIR) and example configs to $(ETCDIR)"
162         cp reporter/clark-kent.pl $(BINDIR)
163         cp reporter/find_orphaned_reports.pl $(BINDIR)
164         cp reporter/report-fail $(DATADIR)
165         cp reporter/report-success $(DATADIR)
166         mkdir -p $(REPORTERDIR)
167
168 # -----------------------------------------------------------------------------------
169 offline-install:
170         @echo "Installing offline CGIs to $(CGIDIR)/offline";
171         mkdir -p $(CGIDIR)/offline;
172         mkdir -p $(DATADIR)/offline;
173         perl -pe "s{##CONFIG##}{$(ETCDIR)}" < offline/offline.pl > $(TMP)/offline.pl;
174         cp offline/offline-config.pl $(ETCDIR)
175         cp $(TMP)/offline.pl $(CGIDIR)/offline/
176         chmod +x $(CGIDIR)/offline/offline.pl
177
178 # -----------------------------------------------------------------------------------
179
180 cgi-bootstrap:
181         @echo "Installing cgi's to $(CGIDIR)"
182         mkdir -p $(TMP)/cgi-bin
183         mkdir -p $(CGIDIR)
184         for i in cgi-bin/*cgi; do perl -pe "s{##CONFIG##}{$(ETCDIR)}" < $$i > $(TMP)/$$i; done
185         cp $(TMP)/cgi-bin/*cgi $(CGIDIR)
186         cp -r cgi-bin/support $(CGIDIR)
187         cp cgi-bin/setup.pl $(ETCDIR)/live-db-setup.pl
188         chmod 755 $(CGIDIR)/*cgi
189
190 storage-bootstrap:
191         @echo $@
192         @echo ""
193         @echo "WARNING!"
194         @echo ""
195         @echo "storage-bootstrap will DESTROY all data within all of the ILS tables in your database."
196         @echo "The database this script will touch has a DBI DSN of"
197         @echo "    dbi:$(DBDRVR):host=$(DBHOST);dbname=$(DBNAME);port=$(DBPORT)"
198         @echo "Type control-c to avoid destroying all of the data.  Type enter to continue..."
199         @echo ""
200         @read X;
201         ./extras/import/build-oils-db.sh $(DBDRVR) $(DBHOST) $(DBPORT) $(DBNAME) $(DBUSER) $(DBPW) $(DBVER)
202
203 # -----------------------------------------------------------------------------------
204
205
206 string-templates-install:
207         @echo "Installing string templates to $(TEMPLATEDIR)"
208         mkdir -p $(TEMPLATEDIR)
209         cp -r templates/strings $(TEMPLATEDIR)
210
211 xsl-install:    
212         @echo "Installing XSL files to $(XSLDIR)"
213         mkdir -p $(XSLDIR)
214         cp ../xsl/*.xsl $(XSLDIR)
215 #       mkdir -p $(WEBDIR)/xsl/
216 #       cp ../xsl/*.xsl $(WEBDIR)/xsl/
217
218 clean:
219         @echo $@
220         make -C extras clean
221         make -C apachemods clean
222         make -C c-apps clean
223         if [ -n "$(EG_PYTHON_INSTALL)" ]; then echo $@; make -C python clean --all; fi;
224