blob: dc0b6ae5f5d5faae92b1f5de83dcfedf615dd83a [file] [log] [blame]
Gavin McDonald0b75e1a2010-10-28 02:12:01 +00001#
2# Licensed to the Apache Software Foundation (ASF) under one
3# or more contributor license agreements. See the NOTICE file
4# distributed with this work for additional information
5# regarding copyright ownership. The ASF licenses this file
6# to you under the Apache License, Version 2.0 (the
7# "License"); you may not use this file except in compliance
8# with the License. You may obtain a copy of the License at
9#
10# http://www.apache.org/licenses/LICENSE-2.0
11#
12# Unless required by applicable law or agreed to in writing,
13# software distributed under the License is distributed on an
14# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15# KIND, either express or implied. See the License for the
16# specific language governing permissions and limitations
17# under the License.
18#
19
20ACLOCAL_AMFLAGS = -I ./aclocal
21
22pkgconfigdir = $(libdir)/pkgconfig
23
24lib_LTLIBRARIES = libthrift.la
25pkgconfig_DATA = thrift.pc
26
27## We only build the extra libraries if we have the dependencies,
28## but we install all of the headers unconditionally.
29if AMX_HAVE_LIBEVENT
30lib_LTLIBRARIES += libthriftnb.la
31pkgconfig_DATA += thrift-nb.pc
32endif
33if AMX_HAVE_ZLIB
34lib_LTLIBRARIES += libthriftz.la
35pkgconfig_DATA += thrift-z.pc
36endif
37
38AM_CXXFLAGS = -Wall
39AM_CPPFLAGS = $(BOOST_CPPFLAGS) -I$(srcdir)/src
40
41# Define the source files for the module
42
43libthrift_la_SOURCES = src/Thrift.cpp \
44 src/concurrency/Mutex.cpp \
45 src/concurrency/Monitor.cpp \
46 src/concurrency/PosixThreadFactory.cpp \
47 src/concurrency/ThreadManager.cpp \
48 src/concurrency/TimerManager.cpp \
49 src/concurrency/Util.cpp \
50 src/protocol/TBinaryProtocol.cpp \
51 src/protocol/TCompactProtocol.cpp \
52 src/protocol/TDebugProtocol.cpp \
53 src/protocol/TDenseProtocol.cpp \
54 src/protocol/TJSONProtocol.cpp \
55 src/protocol/TBase64Utils.cpp \
56 src/transport/TTransportException.cpp \
57 src/transport/TFDTransport.cpp \
58 src/transport/TFileTransport.cpp \
59 src/transport/TSimpleFileTransport.cpp \
60 src/transport/THttpClient.cpp \
61 src/transport/TSocket.cpp \
62 src/transport/TSocketPool.cpp \
63 src/transport/TServerSocket.cpp \
64 src/transport/TTransportUtils.cpp \
65 src/transport/TBufferTransports.cpp \
66 src/server/TServer.cpp \
67 src/server/TSimpleServer.cpp \
68 src/server/TThreadPoolServer.cpp \
69 src/server/TThreadedServer.cpp \
70 src/processor/PeekProcessor.cpp
71
72libthriftnb_la_SOURCES = src/server/TNonblockingServer.cpp
73
74libthriftz_la_SOURCES = src/transport/TZlibTransport.cpp
75
76
77# Flags for the various libraries
78libthriftnb_la_CPPFLAGS = $(AM_CPPFLAGS) $(LIBEVENT_CPPFLAGS)
79libthriftz_la_CPPFLAGS = $(AM_CPPFLAGS) $(ZLIB_CPPFLAGS)
80
81
82include_thriftdir = $(includedir)/thrift
83include_thrift_HEADERS = \
84 $(top_builddir)/config.h \
85 src/Thrift.h \
86 src/TReflectionLocal.h \
87 src/TProcessor.h \
88 src/TLogging.h
89
90include_concurrencydir = $(include_thriftdir)/concurrency
91include_concurrency_HEADERS = \
92 src/concurrency/Exception.h \
93 src/concurrency/Mutex.h \
94 src/concurrency/Monitor.h \
95 src/concurrency/PosixThreadFactory.h \
96 src/concurrency/Thread.h \
97 src/concurrency/ThreadManager.h \
98 src/concurrency/TimerManager.h \
99 src/concurrency/FunctionRunner.h \
100 src/concurrency/Util.h
101
102include_protocoldir = $(include_thriftdir)/protocol
103include_protocol_HEADERS = \
104 src/protocol/TBinaryProtocol.h \
105 src/protocol/TCompactProtocol.h \
106 src/protocol/TDenseProtocol.h \
107 src/protocol/TDebugProtocol.h \
108 src/protocol/TOneWayProtocol.h \
109 src/protocol/TBase64Utils.h \
110 src/protocol/TJSONProtocol.h \
111 src/protocol/TProtocolTap.h \
112 src/protocol/TProtocolException.h \
113 src/protocol/TProtocol.h
114
115include_transportdir = $(include_thriftdir)/transport
116include_transport_HEADERS = \
117 src/transport/TFDTransport.h \
118 src/transport/TFileTransport.h \
119 src/transport/TSimpleFileTransport.h \
120 src/transport/TServerSocket.h \
121 src/transport/TServerTransport.h \
122 src/transport/THttpClient.h \
123 src/transport/TSocket.h \
124 src/transport/TSocketPool.h \
125 src/transport/TTransport.h \
126 src/transport/TTransportException.h \
127 src/transport/TTransportUtils.h \
128 src/transport/TBufferTransports.h \
129 src/transport/TShortReadTransport.h \
130 src/transport/TZlibTransport.h
131
132include_serverdir = $(include_thriftdir)/server
133include_server_HEADERS = \
134 src/server/TServer.h \
135 src/server/TSimpleServer.h \
136 src/server/TThreadPoolServer.h \
137 src/server/TThreadedServer.h \
138 src/server/TNonblockingServer.h
139
140include_processordir = $(include_thriftdir)/processor
141include_processor_HEADERS = \
142 src/processor/PeekProcessor.h \
143 src/processor/StatsProcessor.h
144
145noinst_PROGRAMS = concurrency_test
146
147concurrency_test_SOURCES = src/concurrency/test/Tests.cpp \
148 src/concurrency/test/ThreadFactoryTests.h \
149 src/concurrency/test/ThreadManagerTests.h \
150 src/concurrency/test/TimerManagerTests.h
151
152concurrency_test_LDADD = libthrift.la
153
154EXTRA_DIST = \
155 README \
156 thrift-nb.pc.in \
157 thrift.pc.in \
158 thrift-z.pc.in