d0060dfdbe83869c6ece95d0f5b875d864661fcf
[yaz-moved-to-github.git] / src / Makefile.am
1 ## This file is part of the YAZ toolkit.
2 ## Copyright (C) 1995-2010 Index Data
3
4 YAZ_VERSION_INFO=4:0:0
5
6 lib_LTLIBRARIES = libyaz.la libyaz_server.la libyaz_icu.la
7
8 dist-hook:
9         test -f $(srcdir)/cql.c || exit 1
10
11 tabdatadir = $(pkgdatadir)/z39.50
12 tabdata_DATA=datetime.asn esupdate.asn univres.asn z3950v3.asn z.tcl \
13  esadmin.asn charneg-3.asn mterm2.asn oclcui.asn facet.asn
14
15 illdatadir=$(pkgdatadir)/ill
16 illdata_DATA=ill9702.asn item-req.asn ill.tcl oclc-ill-req-ext.asn
17
18 EXTRA_DIST=$(tabdata_DATA) $(illdata_DATA) \
19  charconv.tcl codetables.xml codetables-iso5426.xml \
20  csvtodiag.tcl csvtobib1.tcl csvtosrw.tcl bib1.csv srw.csv \
21  csvtosru_update.tcl sru_update.csv mk_version.tcl \
22  oidtoc.tcl oid.csv sc_test.c
23
24 YAZCOMP=$(top_srcdir)/util/yaz-asncomp
25 YAZCOMP_Z = $(YAZCOMP) -d $(srcdir)/z.tcl -i yaz -I$(top_srcdir)/include
26 YAZCOMP_I = $(YAZCOMP) -d $(srcdir)/ill.tcl -i yaz -I$(top_srcdir)/include
27
28 AM_CPPFLAGS=-I$(top_srcdir)/include $(XML2_CFLAGS) $(SSL_CFLAGS) 
29 libyaz_la_LIBADD = $(SSL_LIBS) $(TCPD_LIBS)
30 libyaz_server_la_LIBADD = libyaz.la
31 libyaz_icu_la_CPPFLAGS = $(AM_CPPFLAGS) $(ICU_CPPFLAGS)
32 libyaz_icu_la_LIBADD = libyaz.la $(ICU_LIBS)
33
34 AM_YFLAGS=-p cql_
35
36 # MARC8->UTF8 conversion is generated from codetables.xml
37 marc8.c: charconv.tcl codetables.xml
38         $(TCLSH) $(srcdir)/charconv.tcl -p marc8 $(srcdir)/codetables.xml -o $@
39
40 # UTF-8->MARC8 conversion is generated from codetables.xml
41 marc8r.c: charconv.tcl codetables.xml
42         $(TCLSH) $(srcdir)/charconv.tcl -r -p marc8r $(srcdir)/codetables.xml -o $@
43
44 # ISO5426->UTF8 conversion is generated from codetables-iso5426.xml
45 iso5426.c: charconv.tcl codetables-iso5426.xml
46         $(TCLSH) $(srcdir)/charconv.tcl -p iso5426 $(srcdir)/codetables-iso5426.xml -o $@
47
48 # Generate OID database from CSV
49 oid_std.c $(top_srcdir)/include/yaz/oid_std.h: oidtoc.tcl oid.csv
50         $(TCLSH) $(srcdir)/oidtoc.tcl $(srcdir) $(srcdir)/oid.csv oid_std.c oid_std.h
51
52 # Generate diagnostics from CSVs
53 diagbib1.c $(top_srcdir)/include/yaz/diagbib1.h: csvtobib1.tcl bib1.csv
54         $(TCLSH) $(srcdir)/csvtobib1.tcl $(srcdir)
55
56 diagsrw.c $(top_srcdir)/include/yaz/diagsrw.h: csvtosrw.tcl srw.csv
57         $(TCLSH) $(srcdir)/csvtosrw.tcl $(srcdir)
58
59 diagsru_update.c $(top_srcdir)/include/yaz/diagsru_update.h: csvtosru_update.tcl sru_update.csv
60         $(TCLSH) $(srcdir)/csvtosru_update.tcl $(srcdir)
61
62 # Auto-generated C-files
63 GEN_FILES = oid_std.c \
64   marc8.c marc8r.c iso5426.c \
65   diagbib1.c diagsrw.c diagsru_update.c \
66   z-accdes1.c z-accform1.c z-acckrb1.c z-core.c z-facet-1.c \
67   z-diag1.c z-espec1.c z-estask.c z-exp.c z-grs.c z-mterm2.c z-opac.c \
68   z-uifr1.c z-rrf1.c z-rrf2.c z-sum.c z-sutrs.c z-oclcui.c\
69   zes-expi.c zes-exps.c zes-order.c zes-pquery.c zes-psched.c \
70   zes-pset.c zes-update0.c z-date.c z-univ.c zes-update.c zes-admin.c \
71   z-charneg.c \
72   ill-core.c item-req.c oclc-ill-req-ext.c
73
74 libyaz_la_SOURCES=version.c options.c log.c \
75  $(GEN_FILES) \
76   marcdisp.c marc_read_xml.c marc_read_iso2709.c marc_read_line.c \
77   wrbuf.c oid_db.c errno.c \
78   nmemsdup.c xmalloc.c readconf.c tpath.c nmem.c matchstr.c atoin.c \
79   siconv.c iconv-p.h utf8.c ucs4.c iso5428.c advancegreek.c \
80   odr_bool.c ber_bool.c ber_len.c ber_tag.c odr_util.c facet.c \
81   odr_null.c ber_null.c odr_int.c ber_int.c odr_tag.c odr_cons.c \
82   odr_seq.c odr_oct.c ber_oct.c odr_bit.c ber_bit.c odr_oid.c \
83   ber_oid.c odr_use.c odr_choice.c odr_any.c ber_any.c odr.c odr_mem.c \
84   dumpber.c odr_enum.c odr-priv.h \
85   comstack.c tcpip.c waislen.c unix.c \
86   prt-ext.c \
87   ill-get.c \
88   zget.c yaz-ccl.c diag-entry.c diag-entry.h \
89   logrpn.c \
90   otherinfo.c pquery.c sortspec.c charneg.c initopt.c \
91   zoom-c.c zoom-z3950.c zoom-sru.c zoom-query.c zoom-record-cache.c \
92   zoom-event.c \
93   record_render.c zoom-socket.c zoom-opt.c zoom-p.h sru-p.h \
94   grs1disp.c zgdu.c soap.c srw.c srwutil.c uri.c solr.c \
95   opacdisp.c cclfind.c ccltoken.c cclerrms.c cclqual.c cclptree.c cclp.h \
96   cclqfile.c cclstr.c cclxmlconfig.c ccl_stop_words.c \
97   cql.y cqlstdio.c cqltransform.c cqlutil.c xcqlutil.c cqlstring.c rpn2cql.c \
98   rpn2solr.c solrtransform.c \
99   cqlstrer.c querytowrbuf.c \
100   tcpdchk.c \
101   test.c timing.c \
102   xmlquery.c xmlerror.c http.c \
103   mime.c mime.h oid_util.c tokenizer.c \
104   record_conv.c retrieval.c elementset.c snprintf.c query-charset.c \
105   copy_types.c match_glob.c poll.c daemon.c \
106   iconv_encode_marc8.c iconv_encode_iso_8859_1.c iconv_encode_wchar.c \
107   iconv_decode_marc8.c iconv_decode_iso5426.c iconv_decode_danmarc.c sc.c \
108   json.c xml_include.c file_glob.c dirent.c mutex-p.h mutex.c condvar.c \
109   thread_id.c gettimeofday.c thread_create.c spipe.c
110
111 libyaz_la_LDFLAGS=-version-info $(YAZ_VERSION_INFO)
112
113 libyaz_server_la_SOURCES = statserv.c seshigh.c eventl.c \
114   requestq.c eventl.h session.h 
115
116 libyaz_server_la_LDFLAGS=-version-info $(YAZ_VERSION_INFO)
117
118 libyaz_icu_la_SOURCES = icu_chain.c icu_utf16.c icu_utf8.c \
119         icu_transform.c icu_casemap.c icu_tokenizer.c icu_sortkey.c
120 libyaz_icu_la_LDFLAGS=-version-info $(YAZ_VERSION_INFO)
121
122 # Rules for Z39.50 V3
123 z-accdes1.c \
124 z-accform1.c \
125 z-acckrb1.c \
126 z-diag1.c \
127 z-espec1.c \
128 z-estask.c \
129 z-exp.c \
130 z-grs.c \
131 z-opac.c \
132 z-uifr1.c \
133 z-rrf1.c \
134 z-rrf2.c \
135 z-sum.c \
136 z-sutrs.c \
137 zes-expi.c \
138 zes-exps.c \
139 zes-order.c \
140 zes-pquery.c \
141 zes-psched.c \
142 zes-pset.c \
143 zes-update0.c \
144 $(top_srcdir)/include/yaz/z-accdes1.h \
145 $(top_srcdir)/include/yaz/z-core.h: z-core.c
146
147 z-core.c: $(srcdir)/z.tcl $(srcdir)/z3950v3.asn $(YAZCOMP)
148         $(TCLSH) $(YAZCOMP_Z) $(srcdir)/z3950v3.asn
149
150 # Date extension
151 z-date.c \
152 $(top_srcdir)/include/yaz/z-date.h: $(srcdir)/z.tcl $(srcdir)/datetime.asn $(YAZCOMP)
153         $(TCLSH) $(YAZCOMP_Z) $(srcdir)/datetime.asn
154
155 # UNIverse extension
156 z-univ.c \
157 $(top_srcdir)/include/yaz/z-univ.h: \
158 $(srcdir)/z.tcl $(srcdir)/univres.asn $(YAZCOMP)
159         $(TCLSH) $(YAZCOMP_Z) $(srcdir)/univres.asn
160
161 # New Update extended service
162 zes-update.c \
163 $(top_srcdir)/include/yaz/zes-update.h: \
164 $(srcdir)/z.tcl $(srcdir)/esupdate.asn $(YAZCOMP)
165         $(TCLSH) $(YAZCOMP_Z) $(srcdir)/esupdate.asn
166
167 # Admin extended service
168 zes-admin.c \
169 $(top_srcdir)/include/yaz/zes-admin.h: \
170 $(srcdir)/z.tcl $(srcdir)/esadmin.asn $(YAZCOMP)
171         $(TCLSH) $(YAZCOMP_Z) $(srcdir)/esadmin.asn
172
173 # Charset negotiation
174 z-charneg.c \
175 $(top_srcdir)/include/yaz/z-charneg.h: \
176 $(srcdir)/z.tcl $(srcdir)/charneg-3.asn $(YAZCOMP)
177         $(TCLSH) $(YAZCOMP_Z) $(srcdir)/charneg-3.asn
178
179 # UserInfoFormat-multipleSearchTerms-2
180 z-mterm2.c \
181 $(top_srcdir)/include/yaz/z-mterm2.h: \
182 $(srcdir)/z.tcl $(srcdir)/mterm2.asn $(YAZCOMP)
183         $(TCLSH) $(YAZCOMP_Z) $(srcdir)/mterm2.asn
184
185 # UserInfoFormat-multipleSearchTerms-2
186 z-oclcui.c \
187 $(top_srcdir)/include/yaz/z-oclcui.h: \
188 $(srcdir)/z.tcl $(srcdir)/oclcui.asn $(YAZCOMP)
189         $(TCLSH) $(YAZCOMP_Z) $(srcdir)/oclcui.asn
190
191 # UserInfoFormat-facet-1
192 z-facet-1.c \
193 $(top_srcdir)/include/yaz/z-facet-1.h: $(srcdir)/facet.asn $(YAZCOMP)
194         $(TCLSH) $(YAZCOMP_Z) $(srcdir)/facet.asn
195
196
197 # ILL protocol
198 ill-core.c \
199 $(top_srcdir)/include/yaz/ill-core.h: \
200 $(srcdir)/ill.tcl $(srcdir)/ill9702.asn $(YAZCOMP)
201         $(TCLSH) $(YAZCOMP_I) $(srcdir)/ill9702.asn
202
203 # OCLC ILL Request Extension
204 oclc-ill-req-ext.c \
205 $(top_srcdir)/include/yaz/oclc-ill-req-ext.h: \
206 $(srcdir)/ill.tcl $(srcdir)/oclc-ill-req-ext.asn $(YAZCOMP)
207         $(TCLSH) $(YAZCOMP_I) $(srcdir)/oclc-ill-req-ext.asn
208
209 # Item Request
210 item-req.c \
211 $(top_srcdir)/include/yaz/item-req.h: \
212 $(srcdir)/ill.tcl $(srcdir)/item-req.asn $(YAZCOMP)
213         $(TCLSH) $(YAZCOMP_I) $(srcdir)/item-req.asn
214
215