Allow srcdir!=dstdir for CVS checkout
[yaz-moved-to-github.git] / src / Makefile.am
1 ## This file is part of the YAZ toolkit.
2 ## Copyright (C) 1994-2005, Index Data, All rights reserved.
3 ## $Id: Makefile.am,v 1.22 2005-04-22 15:09:36 adam Exp $
4
5 if ISTHR
6 thrlib=libyazthread.la
7 endif
8
9 YAZ_VERSION_INFO=2:0:0
10
11 lib_LTLIBRARIES = libyaz.la $(thrlib) 
12
13 dist-hook:
14         test -f $(srcdir)/cql.c || exit 1
15
16 tabdatadir = $(pkgdatadir)/z39.50
17 tabdata_DATA=datetime.asn esupdate.asn univres.asn z3950v3.asn z.tcl \
18  esadmin.asn charneg-3.asn mterm2.asn oclcui.asn
19
20 illdatadir=$(pkgdatadir)/ill
21 illdata_DATA=ill9702.asn item-req.asn ill.tcl
22
23 EXTRA_DIST=$(tabdata_DATA) $(illdata_DATA) \
24  charconv.tcl codetables.xml \
25  csvtodiag.tcl csvtobib1.tcl csvtosrw.tcl bib1.csv srw.csv
26
27 YAZCOMP = ../util/yaz-asncomp
28 YAZCOMPLINE = $(YAZCOMP) -d z.tcl -i yaz -I../include $(YCFLAGS)
29
30 AM_CPPFLAGS=-I$(top_srcdir)/include $(XML2_CFLAGS) $(SSL_CFLAGS)
31 AM_YFLAGS=-p cql_
32 THREADED_FLAGS = @CFLAGSTHREADS@
33
34 # MARC8 conversion is generated from codetables.xml
35 $(srcdir)/marc8.c: charconv.tcl codetables.xml
36         cd $(srcdir); ./charconv.tcl -p marc8 codetables.xml -o marc8.c
37
38 # Generate diagnostics from CSVs
39 $(top_srcdir)/include/yaz/diagbib1.h $(srcdir)/diagbib1.c: csvtobib1.tcl bib1.csv
40         cd $(srcdir); ./csvtobib1.tcl
41
42 $(top_srcdir)/include/yaz/diagsrw.h $(srcdir)/diagsrw.c: csvtosrw.tcl srw.csv
43         cd $(srcdir); ./csvtosrw.tcl
44
45 libyaz_la_SOURCES=version.c options.c log.c marcdisp.c oid.c wrbuf.c \
46   nmemsdup.c xmalloc.c readconf.c tpath.c nmem.c matchstr.c atoin.c \
47   siconv.c marc8.c \
48   odr_bool.c ber_bool.c ber_len.c ber_tag.c odr_util.c \
49   odr_null.c ber_null.c odr_int.c ber_int.c odr_tag.c odr_cons.c \
50   odr_seq.c odr_oct.c ber_oct.c odr_bit.c ber_bit.c odr_oid.c \
51   ber_oid.c odr_use.c odr_choice.c odr_any.c ber_any.c odr.c odr_mem.c \
52   dumpber.c odr_enum.c odr-priv.h \
53   comstack.c tcpip.c waislen.c unix.c \
54   z-accdes1.c z-accform1.c z-acckrb1.c z-core.c \
55   z-diag1.c z-espec1.c z-estask.c z-exp.c z-grs.c z-mterm2.c z-opac.c \
56   z-uifr1.c z-rrf1.c z-rrf2.c z-sum.c z-sutrs.c z-oclcui.c\
57   zes-expi.c zes-exps.c zes-order.c zes-pquery.c zes-psched.c \
58   zes-pset.c zes-update0.c z-date.c z-univ.c zes-update.c zes-admin.c \
59   z-charneg.c \
60   prt-ext.c \
61   ill-core.c item-req.c ill-get.c \
62   zget.c yaz-ccl.c diag-entry.c diag-entry.h diagbib1.c diagsrw.c logrpn.c \
63   otherinfo.c pquery.c sortspec.c z3950oid.c charneg.c initopt.c \
64   zoom-c.c zoom-opt.c zoom-p.h grs1disp.c zgdu.c soap.c srw.c srwutil.c \
65   opacdisp.c cclfind.c ccltoken.c cclerrms.c cclqual.c cclptree.c \
66   cclqfile.c cclstr.c \
67   cql.y cqlstdio.c cqltransform.c cqlutil.c xcqlutil.c cqlstring.c \
68   cqlstrer.c \
69   eventl.c seshigh.c statserv.c requestq.c tcpdchk.c \
70   eventl.h service.c service.h session.h
71 libyaz_la_LDFLAGS=-version-info $(YAZ_VERSION_INFO)
72
73 libyazthread_la_SOURCES=
74 libyazthread_la_LIBADD=thr-nmem.lo thr-statserv.lo thr-eventl.lo
75 libyazthread_la_LDFLAGS=-version-info $(YAZ_VERSION_INFO)
76
77 # Rules for Z39.50 V3
78 $(srcdir)/z-accdes1.c \
79 $(srcdir)/z-accform1.c \
80 $(srcdir)/z-acckrb1.c \
81 $(srcdir)/z-core.c \
82 $(srcdir)/z-diag1.c \
83 $(srcdir)/z-espec1.c \
84 $(srcdir)/z-estask.c \
85 $(srcdir)/z-exp.c \
86 $(srcdir)/z-grs.c \
87 $(srcdir)/z-opac.c \
88 $(srcdir)/z-uifr1.c \
89 $(srcdir)/z-rrf1.c \
90 $(srcdir)/z-rrf2.c \
91 $(srcdir)/z-sum.c \
92 $(srcdir)/z-sutrs.c \
93 $(srcdir)/zes-expi.c \
94 $(srcdir)/zes-exps.c \
95 $(srcdir)/zes-order.c \
96 $(srcdir)/zes-pquery.c \
97 $(srcdir)/zes-psched.c \
98 $(srcdir)/zes-pset.c \
99 $(srcdir)/zes-update0.c \
100 $(top_srcdir)/include/yaz/z-accdes1.h \
101 $(top_srcdir)/include/yaz/z-core.h: \
102 $(srcdir)/z.tcl $(srcdir)/z3950v3.asn $(YAZCOMP)
103         cd $(srcdir); $(YAZCOMPLINE) z3950v3.asn
104
105 # Date extension
106 $(srcdir)/z-date.c \
107 $(top_srcdir)/include/yaz/z-date.h: $(srcdir)/z.tcl $(srcdir)/datetime.asn $(YAZCOMP)
108         cd $(srcdir); $(YAZCOMPLINE) datetime.asn
109
110 # UNIverse extension
111 $(srcdir)/z-univ.c \
112 $(top_srcdir)/include/yaz/z-univ.h: \
113 $(srcdir)/z.tcl $(srcdir)/univres.asn $(YAZCOMP)
114         cd $(srcdir); $(YAZCOMPLINE) univres.asn
115
116 # New Update extended service
117 $(srcdir)/zes-update.c \
118 $(top_srcdir)/include/yaz/zes-update.h: \
119 $(srcdir)/z.tcl $(srcdir)/esupdate.asn $(YAZCOMP)
120         cd $(srcdir); $(YAZCOMPLINE) esupdate.asn
121
122 # Admin extended service
123 $(srcdir)/zes-admin.c \
124 $(top_srcdir)/include/yaz/zes-admin.h: \
125 $(srcdir)/z.tcl $(srcdir)/esadmin.asn $(YAZCOMP)
126         cd $(srcdir); $(YAZCOMPLINE) esadmin.asn
127
128 # Charset negotiation
129 $(srcdir)/z-charneg.c: $(srcdir)/z.tcl $(srcdir)/charneg-3.asn
130         cd $(srcdir); $(YAZCOMPLINE) $(YCFLAGS) charneg-3.asn
131
132 # UserInfoFormat-multipleSearchTerms-2
133 $(srcdir)/z-mterm2.c: $(srcdir)/z.tcl $(srcdir)/mterm2.asn
134         cd $(srcdir); $(YAZCOMPLINE) mterm2.asn
135
136 # UserInfoFormat-multipleSearchTerms-2
137 $(srcdir)/z-oclcui.c: $(srcdir)/z.tcl $(srcdir)/oclcui.asn
138         cd $(srcdir); $(YAZCOMPLINE) oclcui.asn
139
140 # ILL protocol
141 $(srcdir)/ill-core.c \
142 $(top_srcdir)/include/yaz/ill-core.h: \
143 $(srcdir)/ill.tcl $(srcdir)/ill9702.asn $(YAZCOMP)
144         cd $(srcdir); $(YAZCOMP) -d ill.tcl -i yaz -I ../include $(YCFLAGS) ill9702.asn
145
146 # Item Request
147 $(srcdir)/item-req.c \
148 $(top_srcdir)/include/yaz/item-req.h: \
149 $(srcdir)/ill.tcl $(srcdir)/item-req.asn $(YAZCOMP)
150         cd $(srcdir); $(YAZCOMP) -d ill.tcl -i yaz -I ../include $(YCFLAGS) item-req.asn
151
152 # Threaded versions of objects.
153 thr-nmem.lo: nmem.c
154         $(LTCOMPILE) $(THREADED_FLAGS) -c $(srcdir)/nmem.c -o thr-nmem.lo
155
156 thr-statserv.lo: statserv.c
157         $(LTCOMPILE) $(THREADED_FLAGS) -c $(srcdir)/statserv.c -o thr-statserv.lo
158 thr-eventl.lo: eventl.c
159         $(LTCOMPILE) $(THREADED_FLAGS) -c $(srcdir)/eventl.c -o thr-eventl.lo
160
161