]> git.evergreen-ils.org Git - Evergreen.git/blob - Open-ILS/src/Makefile.am
LP#1838995: (follow-up) adjust ID for new permission
[Evergreen.git] / Open-ILS / src / Makefile.am
1 # Copyright (C) 2008 Equinox Software, Inc.
2 # Kevin Beswick <kevinbeswick00@gmail.com>
3 #
4 # This program is free software; you can redistribute it and/or
5 # modify it under the terms of the GNU General Public License
6 # as published by the Free Software Foundation; either version 2
7 # of the License, or (at your option) any later version.
8 #
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 # GNU General Public License for more details.
13 #
14 ## Process this file with automake to generate Makefile.in
15
16
17 export STAFF_CLIENT_BUILD_ID = `/bin/cat @top_srcdir@/Open-ILS/xul/staff_client/build/BUILD_ID`
18 export DEF_LDFLAGS = -L. -L$(TMP) -L$(OPENSRF_LIBS)
19 export DEF_CFLAGS = -D_LARGEFILE64_SOURCE -pipe -g -Wall -O2 -fPIC -I@top_srcdir@/include -I$(LIBXML2_HEADERS) -I$(APACHE2_HEADERS) -I$(APR_HEADERS)  -I$(LIBXML2_HEADERS)/libxml  -I$(TMP) -I$(OPENSRF_HEADERS)
20 export DEF_LDLIBS = -lopensrf 
21
22
23 # Establish some installation directories and such
24 prefix=@prefix@
25 exec_prefix=@exec_prefix@
26 datadir=@localstatedir@/data
27 examples = @top_srcdir@/Open-ILS/examples
28 supportscr = @srcdir@/support-scripts
29
30 # Collect files to be used by multiple targets
31
32 autojsbinscripts = @srcdir@/extras/autogen.sh
33
34 # Decide which entities to build
35
36 sysconf_DATA = $(examples)/action_trigger_filters.json.example \
37                $(examples)/opensrf.xml.example \
38                $(examples)/opensrf_core.xml.example \
39                $(examples)/fm_IDL.xml \
40                $(examples)/oils_sip.xml.example \
41                $(examples)/lib_ips.txt.example \
42                $(examples)/oils_yaz.xml.example \
43                $(examples)/kpac.xml.example \
44                $(examples)/oils_z3950.xml.example \
45                $(examples)/marc_stream_importer.conf.example
46
47 #----------------------------
48 # Build ILS CORE
49 #----------------------------
50
51 if BUILDILSCORE
52
53 #Add directories to build
54 OILSCORE_DIRS = c-apps extras perlmods
55 #Add manual (non-automake) install targets for simplicity of installing.
56 OILSCORE_INST = ilscore-install
57
58 core_data = @srcdir@/extras/ils_events.xml \
59             $(examples)/hold_notification_template.example
60
61 core_scripts =   $(examples)/oils_ctl.sh \
62                  $(supportscr)/fine_generator.pl \
63                  $(supportscr)/hold_targeter.pl \
64                  $(supportscr)/hold_targeter_legacy.pl \
65                  $(supportscr)/reshelving_complete.srfsh \
66                  $(supportscr)/clear_expired_circ_history.srfsh \
67                  $(supportscr)/update_hard_due_dates.srfsh \
68                  $(supportscr)/refresh_carousels.srfsh \
69                  $(supportscr)/juv_to_adult.srfsh \
70                  $(supportscr)/thaw_expired_frozen_holds.srfsh \
71                  $(supportscr)/long-overdue-status-update.pl \
72                  $(supportscr)/oils_header.pl \
73                  $(supportscr)/badge_score_generator.pl \
74                  $(supportscr)/purge_at_events.srfsh \
75                  $(supportscr)/purge_holds.srfsh \
76                  $(supportscr)/purge_circulations.srfsh \
77                  $(supportscr)/purge_pending_users.srfsh \
78                  $(supportscr)/clear_cc_number.srfsh \
79                  $(supportscr)/age_money.srfsh \
80                  $(supportscr)/sitemap_generator \
81                  $(srcdir)/extras/eg_config \
82                  $(srcdir)/extras/openurl_map.pl \
83                  $(srcdir)/extras/import/marc_add_ids \
84                  $(supportscr)/pingest.pl
85
86 installautojs = $(autojsbinscripts)
87
88 endif
89
90 #--------------------
91 # Build Apache modules
92 #--------------------
93
94 if BUILDAPACHEMODS
95 OILSWEB_DIR = apachemods
96 endif
97
98 #---------------------
99 # Build ILS Reporter
100 #---------------------
101
102 if BUILDILSREPORTER
103 OILSREP_INST = reporter-install
104 #reporter-install
105 reporter_scripts = @srcdir@/reporter/clark-kent.pl \
106                    @srcdir@/reporter/find_orphaned_reports.pl
107 reporter_data = @srcdir@/reporter/report-fail \
108                @srcdir@/reporter/report-success
109 endif
110
111 #------------------------------
112
113 # scripts that are generated from *.in files and can
114 # be deleted by a make clean
115 gen_scripts = \
116         @srcdir@/extras/fast-extract \
117         @srcdir@/extras/import/marc2are.pl \
118         @srcdir@/extras/import/marc2bre.pl \
119         @srcdir@/extras/import/marc2sre.pl \
120         @srcdir@/extras/import/parallel_pg_loader.pl \
121         $(supportscr)/action_trigger_aggregator.pl \
122         $(supportscr)/action_trigger_runner.pl \
123         $(supportscr)/authority_control_fields.pl \
124         $(supportscr)/authority_authority_linker.pl \
125         $(supportscr)/eg_db_config \
126         $(supportscr)/marc_export \
127         $(supportscr)/marc_stream_importer.pl \
128         $(supportscr)/offline-blocked-list.pl
129
130 # config files that are generated from *.in files and can
131 # be deleted by a make clean
132 gen_docs = \
133         $(examples)/apache_24/eg_startup \
134         $(examples)/apache_24/eg_24.conf \
135         $(examples)/apache_24/eg_vhost_24.conf
136
137 bin_SCRIPTS = $(core_scripts) $(gen_scripts) $(reporter_scripts) $(installautojs)
138
139 CLEANFILES = $(gen_scripts)
140
141 data_DATA = $(core_data) $(reporter_data)
142
143 doc_DATA = $(gen_docs)
144
145 # Take care of which subdirectories to build, and which extra files to include in a distribution.
146
147 SUBDIRS = $(OILSCORE_DIRS) $(OILSWEB_DIR)
148
149 EXTRA_DIST = @srcdir@/perlmods \
150         @srcdir@/data \
151         @srcdir@/templates \
152         @top_srcdir@/Open-ILS/xsl \
153         @srcdir@/cgi-bin \
154         $(gen_scripts) \
155         $(gen_docs) \
156         @srcdir@/extras/eg_config
157
158 do_subst = $(SED) \
159         -e 's,[@]bindir[@],$(bindir),g' \
160         -e 's,[@]datarootdir[@],$(datarootdir),g' \
161         -e 's,[@]docdir[@],$(docdir),g' \
162         -e 's,[@]exec_prefix[@],$(exec_prefix),g' \
163         -e 's,[@]includedir[@],$(includedir),g' \
164         -e 's,[@]libdir[@],$(libdir),g' \
165         -e 's,[@]localstatedir[@],$(localstatedir),g' \
166         -e 's,[@]prefix[@],$(prefix),g' \
167         -e 's,[@]sysconfdir[@],$(sysconfdir),g'
168
169 # Install header files
170
171 oilsincludedir = @includedir@/openils
172 headsdir = @top_srcdir@/Open-ILS/include/openils
173 oilsinclude_HEADERS = $(headsdir)/idl_fieldmapper.h $(headsdir)/oils_constants.h $(headsdir)/oils_event.h $(headsdir)/oils_idl.h $(headsdir)/oils_utils.h
174
175 # Install everything that did not get installed by autotools
176
177 install-data-hook: $(OILSCORE_INST) $(OILSWEB_INST) $(OILSUPDATES_INST) $(OILSREP_INST)
178
179 uninstall-hook:
180         rm -R $(TEMPLATEDIR)
181         rm -R $(BOOTSTRAPTEMPLATEDIR)
182         rm -R $(XSLDIR)
183         rm -R $(CGIDIR)
184
185 @srcdir@/extras/fast-extract: Makefile @srcdir@/extras/fast-extract.in
186         $(do_subst) @srcdir@/extras/fast-extract.in > "$@"
187         chmod 755 "$@"
188
189 @srcdir@/extras/import/marc2are.pl: Makefile @srcdir@/extras/import/marc2are.pl.in
190         $(do_subst) @srcdir@/extras/import/marc2are.pl.in > "$@"
191         chmod 755 "$@"
192
193 @srcdir@/extras/import/marc2bre.pl: Makefile @srcdir@/extras/import/marc2bre.pl.in
194         $(do_subst) @srcdir@/extras/import/marc2bre.pl.in > "$@"
195         chmod 755 "$@"
196
197 @srcdir@/extras/import/marc2sre.pl: Makefile @srcdir@/extras/import/marc2sre.pl.in
198         $(do_subst) @srcdir@/extras/import/marc2sre.pl.in > "$@"
199         chmod 755 "$@"
200
201 @srcdir@/extras/import/parallel_pg_loader.pl: Makefile @srcdir@/extras/import/parallel_pg_loader.pl.in
202         $(do_subst) @srcdir@/extras/import/parallel_pg_loader.pl.in > "$@"
203         chmod 755 "$@"
204
205 $(supportscr)/action_trigger_aggregator.pl: Makefile $(supportscr)/action_trigger_aggregator.pl.in
206         $(do_subst) $(supportscr)/action_trigger_aggregator.pl.in > "$@"
207         chmod 755 "$@"
208
209 $(supportscr)/action_trigger_runner.pl: Makefile $(supportscr)/action_trigger_runner.pl.in
210         $(do_subst) $(supportscr)/action_trigger_runner.pl.in > "$@"
211         chmod 755 "$@"
212
213 $(supportscr)/authority_authority_linker.pl: Makefile $(supportscr)/authority_authority_linker.pl.in
214         $(do_subst) $(supportscr)/authority_authority_linker.pl.in > "$@"
215         chmod 755 "$@"
216
217 $(supportscr)/authority_control_fields.pl: Makefile $(supportscr)/authority_control_fields.pl.in
218         $(do_subst) $(supportscr)/authority_control_fields.pl.in > "$@"
219         chmod 755 "$@"
220
221 $(supportscr)/eg_db_config: Makefile $(supportscr)/eg_db_config.in
222         $(do_subst) $(supportscr)/eg_db_config.in > "$@"
223         chmod 755 "$@"
224
225 $(supportscr)/marc_export: Makefile $(supportscr)/marc_export.in
226         $(do_subst) $(supportscr)/marc_export.in > "$@"
227         chmod 755 "$@"
228
229 $(supportscr)/marc_stream_importer.pl: Makefile $(supportscr)/marc_stream_importer.pl.in
230         $(do_subst) $(supportscr)/marc_stream_importer.pl.in > "$@"
231         chmod 755 "$@"
232
233 $(supportscr)/offline-blocked-list.pl: Makefile $(supportscr)/offline-blocked-list.pl.in
234         $(do_subst) $(supportscr)/offline-blocked-list.pl.in > "$@"
235         chmod 755 "$@"
236
237 $(examples)/apache_24/eg_startup: Makefile $(examples)/apache_24/eg_startup.in
238         $(do_subst) $(examples)/apache_24/eg_startup.in > "$@"
239
240 $(examples)/apache_24/eg_24.conf: Makefile $(examples)/apache_24/eg.conf.in
241         $(do_subst) $(examples)/apache_24/eg.conf.in > "$@"
242
243 $(examples)/apache_24/eg_vhost_24.conf: Makefile $(examples)/apache_24/eg_vhost.conf.in
244         $(do_subst) $(examples)/apache_24/eg_vhost.conf.in > "$@"
245
246 #perl-install and string-templates-install      
247 ilscore-install:
248         @echo $@
249         $(MKDIR_P) $(DESTDIR)$(TEMPLATEDIR)
250         @echo "Installing templates to $(DESTDIR)$(TEMPLATEDIR)"
251         cp -r @srcdir@/templates/* $(DESTDIR)$(TEMPLATEDIR)
252         $(MKDIR_P) $(DESTDIR)$(BOOTSTRAPTEMPLATEDIR)
253         @echo "Installing Bootstrap templates to $(DESTDIR)$(BOOTSTRAPTEMPLATEDIR)"
254         cp -r @srcdir@/templates-bootstrap/* $(DESTDIR)$(BOOTSTRAPTEMPLATEDIR)
255         -@if test -d @srcdir@/data/locale; then \
256                 $(MKDIR_P) $(DESTDIR)$(datadir)/locale/ && \
257                 echo "Installing template data files to $(datadir)/locale/" && \
258                 cp -r @srcdir@/data/locale/* $(datadir)/locale/ ;\
259         fi;
260         $(MKDIR_P) $(DESTDIR)$(datadir)/overdue/
261         sed -i 's|LOCALSTATEDIR|@localstatedir@|g' '$(DESTDIR)@sysconfdir@/oils_sip.xml.example'
262         sed -i 's|SYSCONFDIR|@sysconfdir@|g' '$(DESTDIR)@sysconfdir@/oils_sip.xml.example'
263         sed -i 's|LIBDIR|@libdir@|g' '$(DESTDIR)@sysconfdir@/oils_sip.xml.example'
264         sed -i 's|LOCALSTATEDIR|@localstatedir@|g' '$(DESTDIR)@sysconfdir@/opensrf_core.xml.example'
265         sed -i 's|SYSCONFDIR|@sysconfdir@|g' '$(DESTDIR)@sysconfdir@/opensrf_core.xml.example'
266         sed -i 's|LOCALSTATEDIR|@localstatedir@|g' '$(DESTDIR)@sysconfdir@/opensrf.xml.example'
267         sed -i 's|SYSCONFDIR|@sysconfdir@|g' '$(DESTDIR)@sysconfdir@/opensrf.xml.example'
268         sed -i 's|LIBDIR|@libdir@|g' '$(DESTDIR)@sysconfdir@/opensrf.xml.example'
269         sed -i 's|LOCALSTATEDIR|@localstatedir@|g' '$(DESTDIR)@sysconfdir@/marc_stream_importer.conf.example'
270         sed -i 's|SYSCONFDIR|@sysconfdir@|g' '$(DESTDIR)@sysconfdir@/marc_stream_importer.conf.example'
271         sed -i 's|BINDIR|@bindir@|g' '$(DESTDIR)@bindir@/autogen.sh'
272         sed -i 's|LOCALSTATEDIR|@localstatedir@|g' '$(DESTDIR)@bindir@/autogen.sh'
273         sed -i 's|SYSCONFDIR|@sysconfdir@|g' '$(DESTDIR)@bindir@/autogen.sh'
274         sed -i 's|BINDIR|@bindir@|g' '$(DESTDIR)@bindir@/reshelving_complete.srfsh'
275         sed -i 's|BINDIR|@bindir@|g' '$(DESTDIR)@bindir@/clear_expired_circ_history.srfsh'
276         sed -i 's|BINDIR|@bindir@|g' '$(DESTDIR)@bindir@/update_hard_due_dates.srfsh'
277         sed -i 's|BINDIR|@bindir@|g' '$(DESTDIR)@bindir@/refresh_carousels.srfsh'
278         sed -i 's|BINDIR|@bindir@|g' '$(DESTDIR)@bindir@/juv_to_adult.srfsh'
279         sed -i 's|BINDIR|@bindir@|g' '$(DESTDIR)@bindir@/long-overdue-status-update.pl'
280         sed -i 's|SYSCONFDIR|@sysconfdir@|g' '$(DESTDIR)@bindir@/long-overdue-status-update.pl'
281         sed -i 's|BINDIR|@bindir@|g' '$(DESTDIR)@bindir@/thaw_expired_frozen_holds.srfsh'
282         sed -i 's|BINDIR|@bindir@|g' '$(DESTDIR)@bindir@/clear_cc_number.srfsh'
283         sed -i 's|BINDIR|@bindir@|g' '$(DESTDIR)@bindir@/age_money.srfsh'
284         sed -i 's|BINDIR|@bindir@|g' '$(DESTDIR)@bindir@/purge_at_events.srfsh'
285         sed -i 's|BINDIR|@bindir@|g' '$(DESTDIR)@bindir@/purge_circulations.srfsh'
286         sed -i 's|BINDIR|@bindir@|g' '$(DESTDIR)@bindir@/purge_holds.srfsh'
287         sed -i 's|BINDIR|@bindir@|g' '$(DESTDIR)@bindir@/purge_pending_users.srfsh'
288         sed -i 's|LOCALSTATEDIR|@localstatedir@|g' '$(DESTDIR)@bindir@/oils_ctl.sh'
289         sed -i 's|SYSCONFDIR|@sysconfdir@|g' '$(DESTDIR)@bindir@/oils_ctl.sh'
290
291 reporter-install:
292         sed -i 's|SYSCONFDIR|@sysconfdir@|g' '$(DESTDIR)@bindir@/clark-kent.pl'
293         sed -i 's|SYSCONFDIR|@sysconfdir@|g' '$(DESTDIR)@bindir@/find_orphaned_reports.pl'
294
295 docs-install: gen_docs
296         $(MKDIR_P) $(DESTDIR)$(docdir)