Makefile.am 24.8 KB
Newer Older
Kenton Varda's avatar
Kenton Varda committed
1 2
## Process this file with automake to produce Makefile.in

3 4
ACLOCAL_AMFLAGS = -I m4

Kenton Varda's avatar
Kenton Varda committed
5
AUTOMAKE_OPTIONS = foreign subdir-objects
Kenton Varda's avatar
Kenton Varda committed
6

7 8 9 10
# When running distcheck, verify that we've included all the files needed by
# the cmake build.
distcheck-hook:
	rm -rf distcheck-cmake
11
	(mkdir distcheck-cmake && cd distcheck-cmake && cmake ../$(distdir) && make -j6 check)
12 13
	rm -rf distcheck-cmake

14
AM_CXXFLAGS = -I$(srcdir)/src -I$(builddir)/src -DKJ_HEADER_WARNINGS -DCAPNP_HEADER_WARNINGS -DCAPNP_INCLUDE_DIR='"$(includedir)"' $(PTHREAD_CFLAGS)
15 16

AM_LDFLAGS = $(PTHREAD_CFLAGS)
Kenton Varda's avatar
Kenton Varda committed
17 18 19

EXTRA_DIST =                                                                 \
  README.txt                                                                 \
20
  LICENSE.txt                                                                \
Kenton Varda's avatar
Kenton Varda committed
21 22 23 24 25 26 27 28 29 30
  $(test_capnpc_inputs)                                                      \
  src/capnp/compiler/capnp-test.sh                                           \
  src/capnp/testdata/segmented-packed                                        \
  src/capnp/testdata/errors.capnp.nobuild                                    \
  src/capnp/testdata/short.txt                                               \
  src/capnp/testdata/flat                                                    \
  src/capnp/testdata/binary                                                  \
  src/capnp/testdata/errors.txt                                              \
  src/capnp/testdata/segmented                                               \
  src/capnp/testdata/packed                                                  \
31
  src/capnp/testdata/pretty.txt                                              \
32 33
  src/capnp/testdata/lists.binary                                            \
  src/capnp/testdata/packedflat                                              \
34 35 36 37 38
  CMakeLists.txt                                                             \
  cmake/FindCapnProto.cmake                                                  \
  src/CMakeLists.txt                                                         \
  src/kj/CMakeLists.txt                                                      \
  src/capnp/CMakeLists.txt
Kenton Varda's avatar
Kenton Varda committed
39

40
CLEANFILES = $(test_capnpc_outputs) test_capnpc_middleman distcheck-cmake
Kenton Varda's avatar
Kenton Varda committed
41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61

# Deletes all the files generated by autoreconf.
MAINTAINERCLEANFILES =   \
  aclocal.m4             \
  config.guess           \
  config.sub             \
  configure              \
  depcomp                \
  install-sh             \
  ltmain.sh              \
  Makefile.in            \
  missing                \
  mkinstalldirs          \
  config.h.in            \
  stamp.h.in             \
  m4/ltsugar.m4          \
  m4/libtool.m4          \
  m4/ltversion.m4        \
  m4/lt~obsolete.m4      \
  m4/ltoptions.m4

62 63 64
maintainer-clean-local:
	-rm -rf build-aux

65 66 67 68 69 70
# gmake defines an implicit rule building n from n.o.  Unfortunately, this triggers on our .capnp
# files because they generate .capnp.c++ which is compiled to .capnp.o.  In addition to being
# nonsense, this leads to cyclic dependency issues and could even cause the .capnp files to be
# unexpectedly overwritten!  We need to cancel the implicit rule by declaring an explicit one.
#
# I want the hours of my life back that I spent figuring this out.
71 72
%.capnp:
	@:
73

74
public_capnpc_inputs =                                         \
75
  src/capnp/c++.capnp                                          \
76 77
  src/capnp/schema.capnp                                       \
  src/capnp/rpc.capnp                                          \
78
  src/capnp/rpc-twoparty.capnp                                 \
79 80
  src/capnp/persistent.capnp                                   \
  src/capnp/compat/json.capnp
Kenton Varda's avatar
Kenton Varda committed
81

82 83 84 85
capnpc_inputs =                                                \
  $(public_capnpc_inputs)                                      \
  src/capnp/compiler/lexer.capnp                               \
  src/capnp/compiler/grammar.capnp
86

Kenton Varda's avatar
Kenton Varda committed
87
capnpc_outputs =                                               \
88 89 90
  src/capnp/c++.capnp.c++                                      \
  src/capnp/c++.capnp.h                                        \
  src/capnp/schema.capnp.c++                                   \
91
  src/capnp/schema.capnp.h                                     \
92 93
  src/capnp/rpc.capnp.c++                                      \
  src/capnp/rpc.capnp.h                                        \
94 95
  src/capnp/rpc-twoparty.capnp.c++                             \
  src/capnp/rpc-twoparty.capnp.h                               \
96 97
  src/capnp/persistent.capnp.c++                               \
  src/capnp/persistent.capnp.h                                 \
98 99
  src/capnp/compat/json.capnp.h                                \
  src/capnp/compat/json.capnp.c++                              \
100 101 102 103
  src/capnp/compiler/lexer.capnp.c++                           \
  src/capnp/compiler/lexer.capnp.h                             \
  src/capnp/compiler/grammar.capnp.c++                         \
  src/capnp/compiler/grammar.capnp.h
Kenton Varda's avatar
Kenton Varda committed
104

105
includecapnpdir = $(includedir)/capnp
106
includecapnpcompatdir = $(includecapnpdir)/compat
Kenton Varda's avatar
Kenton Varda committed
107
includekjdir = $(includedir)/kj
Kenton Varda's avatar
Kenton Varda committed
108
includekjparsedir = $(includekjdir)/parse
109
includekjstddir = $(includekjdir)/std
110
includekjcompatdir = $(includekjdir)/compat
Kenton Varda's avatar
Kenton Varda committed
111

112
dist_includecapnp_DATA = $(public_capnpc_inputs)
113

Kenton Varda's avatar
Kenton Varda committed
114
pkgconfigdir = $(libdir)/pkgconfig
115
pkgconfig_DATA = $(CAPNP_PKG_CONFIG_FILES)
Kenton Varda's avatar
Kenton Varda committed
116

117
cmakeconfigdir = $(libdir)/cmake/CapnProto
118 119 120
cmakeconfig_DATA = $(CAPNP_CMAKE_CONFIG_FILES)                 \
  cmake/CapnProtoMacros.cmake                                  \
  cmake/CapnProtoTargets.cmake
121

122
noinst_HEADERS = \
Tom Lee's avatar
Tom Lee committed
123
  src/kj/miniposix.h
124

Kenton Varda's avatar
Kenton Varda committed
125 126
includekj_HEADERS =                                            \
  src/kj/common.h                                              \
Kenton Varda's avatar
Kenton Varda committed
127
  src/kj/units.h                                               \
Kenton Varda's avatar
Kenton Varda committed
128
  src/kj/memory.h                                              \
Kenton Varda's avatar
Kenton Varda committed
129
  src/kj/refcount.h                                            \
Kenton Varda's avatar
Kenton Varda committed
130
  src/kj/array.h                                               \
131
  src/kj/vector.h                                              \
Kenton Varda's avatar
Kenton Varda committed
132
  src/kj/string.h                                              \
133
  src/kj/string-tree.h                                         \
134
  src/kj/encoding.h                                            \
Kenton Varda's avatar
Kenton Varda committed
135
  src/kj/exception.h                                           \
Kenton Varda's avatar
Kenton Varda committed
136
  src/kj/debug.h                                               \
137
  src/kj/arena.h                                               \
138
  src/kj/io.h                                                  \
139
  src/kj/tuple.h                                               \
Kenton Varda's avatar
Kenton Varda committed
140
  src/kj/one-of.h                                              \
141
  src/kj/function.h                                            \
Kenton Varda's avatar
Kenton Varda committed
142
  src/kj/mutex.h                                               \
143
  src/kj/thread.h                                              \
144
  src/kj/threadlocal.h                                         \
145
  src/kj/filesystem.h                                          \
146
  src/kj/async-prelude.h                                       \
Kenton Varda's avatar
Kenton Varda committed
147
  src/kj/async.h                                               \
Kenton Varda's avatar
Kenton Varda committed
148
  src/kj/async-inl.h                                           \
Kenton Varda's avatar
Kenton Varda committed
149
  src/kj/time.h                                                \
150
  src/kj/timer.h                                               \
Kenton Varda's avatar
Kenton Varda committed
151
  src/kj/async-unix.h                                          \
152
  src/kj/async-win32.h                                         \
153
  src/kj/async-io.h                                            \
154
  src/kj/main.h                                                \
155
  src/kj/test.h                                                \
156
  src/kj/windows-sanity.h
Kenton Varda's avatar
Kenton Varda committed
157 158 159 160

includekjparse_HEADERS =                                       \
  src/kj/parse/common.h                                        \
  src/kj/parse/char.h
Kenton Varda's avatar
Kenton Varda committed
161

162 163 164
includekjstd_HEADERS =                                         \
  src/kj/std/iostream.h

165
includekjcompat_HEADERS =                                      \
166
  src/kj/compat/gtest.h                                        \
167
  src/kj/compat/url.h                                          \
168
  src/kj/compat/http.h
169

170
includecapnp_HEADERS =                                         \
Kenton Varda's avatar
Kenton Varda committed
171
  src/capnp/c++.capnp.h                                        \
172 173 174 175
  src/capnp/common.h                                           \
  src/capnp/blob.h                                             \
  src/capnp/endian.h                                           \
  src/capnp/layout.h                                           \
176
  src/capnp/orphan.h                                           \
177
  src/capnp/list.h                                             \
Kenton Varda's avatar
Kenton Varda committed
178
  src/capnp/any.h                                              \
179
  src/capnp/message.h                                          \
Kenton Varda's avatar
Kenton Varda committed
180
  src/capnp/capability.h                                       \
181
  src/capnp/membrane.h                                         \
Kenton Varda's avatar
Kenton Varda committed
182
  src/capnp/schema.capnp.h                                     \
183
  src/capnp/schema-lite.h                                      \
184 185
  src/capnp/schema.h                                           \
  src/capnp/schema-loader.h                                    \
186
  src/capnp/schema-parser.h                                    \
187
  src/capnp/dynamic.h                                          \
188
  src/capnp/pretty-print.h                                     \
189
  src/capnp/serialize.h                                        \
190
  src/capnp/serialize-async.h                                  \
191
  src/capnp/serialize-packed.h                                 \
192
  src/capnp/serialize-text.h                                   \
193
  src/capnp/pointer-helpers.h                                  \
194
  src/capnp/generated-header-support.h                         \
195
  src/capnp/raw-schema.h                                       \
196
  src/capnp/rpc-prelude.h                                      \
197
  src/capnp/rpc.h                                              \
198 199
  src/capnp/rpc-twoparty.h                                     \
  src/capnp/rpc.capnp.h                                        \
200
  src/capnp/rpc-twoparty.capnp.h                               \
201
  src/capnp/persistent.capnp.h                                 \
202
  src/capnp/ez-rpc.h
Kenton Varda's avatar
Kenton Varda committed
203

204 205 206 207
includecapnpcompat_HEADERS =                                   \
  src/capnp/compat/json.h                                      \
  src/capnp/compat/json.capnp.h

208
if LITE_MODE
209
lib_LTLIBRARIES = libkj.la libkj-test.la libcapnp.la
210
else
211
lib_LTLIBRARIES = libkj.la libkj-test.la libkj-async.la libkj-http.la libcapnp.la libcapnp-rpc.la libcapnp-json.la libcapnpc.la
212
endif
Kenton Varda's avatar
Kenton Varda committed
213

214 215
# Don't include security release in soname -- we want to replace old binaries
# in this case.
216
SO_VERSION = $(shell echo $(VERSION) | sed -e 's/^\([0-9]*[.][0-9]*[.][0-9]*\)\([.][0-9]*\)*\(-.*\)*$$/\1\3/g')
217

218
libkj_la_LIBADD = $(PTHREAD_LIBS)
219
libkj_la_LDFLAGS = -release $(SO_VERSION) -no-undefined
220
libkj_la_SOURCES=                                              \
Kenton Varda's avatar
Kenton Varda committed
221
  src/kj/common.c++                                            \
Kenton Varda's avatar
Kenton Varda committed
222
  src/kj/units.c++                                             \
Kenton Varda's avatar
Kenton Varda committed
223
  src/kj/memory.c++                                            \
Kenton Varda's avatar
Kenton Varda committed
224
  src/kj/refcount.c++                                          \
Kenton Varda's avatar
Kenton Varda committed
225 226
  src/kj/array.c++                                             \
  src/kj/string.c++                                            \
227
  src/kj/string-tree.c++                                       \
228
  src/kj/encoding.c++                                          \
Kenton Varda's avatar
Kenton Varda committed
229
  src/kj/exception.c++                                         \
Kenton Varda's avatar
Kenton Varda committed
230
  src/kj/debug.c++                                             \
231
  src/kj/arena.c++                                             \
Kenton Varda's avatar
Kenton Varda committed
232
  src/kj/io.c++                                                \
233
  src/kj/mutex.c++                                             \
Kenton Varda's avatar
Kenton Varda committed
234
  src/kj/thread.c++                                            \
235
  src/kj/time.c++                                              \
236
  src/kj/filesystem.c++                                        \
237
  src/kj/filesystem-disk-unix.c++                                   \
238
  src/kj/filesystem-disk-win32.c++                             \
239
  src/kj/test-helpers.c++                                      \
240
  src/kj/main.c++                                              \
241 242
  src/kj/parse/char.c++

243 244 245 246
libkj_test_la_LIBADD = libkj.la $(PTHREAD_LIBS)
libkj_test_la_LDFLAGS = -release $(VERSION) -no-undefined
libkj_test_la_SOURCES = src/kj/test.c++

247
if !LITE_MODE
248
libkj_async_la_LIBADD = libkj.la $(ASYNC_LIBS) $(PTHREAD_LIBS)
249
libkj_async_la_LDFLAGS = -release $(SO_VERSION) -no-undefined
250 251 252
libkj_async_la_SOURCES=                                        \
  src/kj/async.c++                                             \
  src/kj/async-unix.c++                                        \
253
  src/kj/async-win32.c++                                       \
Kenton Varda's avatar
Kenton Varda committed
254
  src/kj/async-io.c++                                          \
255
  src/kj/async-io-unix.c++                                     \
256
  src/kj/async-io-win32.c++                                    \
257
  src/kj/timer.c++
258

259
libkj_http_la_LIBADD = libkj-async.la libkj.la $(ASYNC_LIBS) $(PTHREAD_LIBS)
260 261
libkj_http_la_LDFLAGS = -release $(SO_VERSION) -no-undefined
libkj_http_la_SOURCES=                                         \
262
  src/kj/compat/url.c++                                        \
263
  src/kj/compat/http.c++
264 265 266 267 268 269 270 271 272
endif !LITE_MODE

if !LITE_MODE
heavy_sources =                                                \
  src/capnp/schema.c++                                         \
  src/capnp/schema-loader.c++                                  \
  src/capnp/dynamic.c++                                        \
  src/capnp/stringify.c++
endif !LITE_MODE
273

274
libcapnp_la_LIBADD = libkj.la $(PTHREAD_LIBS)
275
libcapnp_la_LDFLAGS = -release $(SO_VERSION) -no-undefined
276
libcapnp_la_SOURCES=                                           \
Kenton Varda's avatar
Kenton Varda committed
277
  src/capnp/c++.capnp.c++                                      \
278 279 280 281 282
  src/capnp/blob.c++                                           \
  src/capnp/arena.h                                            \
  src/capnp/arena.c++                                          \
  src/capnp/layout.c++                                         \
  src/capnp/list.c++                                           \
Kenton Varda's avatar
Kenton Varda committed
283
  src/capnp/any.c++                                            \
284
  src/capnp/message.c++                                        \
Kenton Varda's avatar
Kenton Varda committed
285
  src/capnp/schema.capnp.c++                                   \
286
  src/capnp/serialize.c++                                      \
287 288 289 290
  src/capnp/serialize-packed.c++                               \
  $(heavy_sources)

if !LITE_MODE
291

292
libcapnp_rpc_la_LIBADD = libcapnp.la libkj-async.la libkj.la $(ASYNC_LIBS) $(PTHREAD_LIBS)
293
libcapnp_rpc_la_LDFLAGS = -release $(SO_VERSION) -no-undefined
294
libcapnp_rpc_la_SOURCES=                                       \
295 296
  src/capnp/serialize-async.c++                                \
  src/capnp/capability.c++                                     \
297
  src/capnp/membrane.c++                                       \
298
  src/capnp/dynamic-capability.c++                             \
299 300
  src/capnp/rpc.c++                                            \
  src/capnp/rpc.capnp.c++                                      \
301
  src/capnp/rpc-twoparty.c++                                   \
302
  src/capnp/rpc-twoparty.capnp.c++                             \
303
  src/capnp/persistent.capnp.c++                               \
304
  src/capnp/ez-rpc.c++
305

306
libcapnp_json_la_LIBADD = libcapnp.la libkj.la $(PTHREAD_LIBS)
307 308 309 310 311
libcapnp_json_la_LDFLAGS = -release $(SO_VERSION) -no-undefined
libcapnp_json_la_SOURCES=                                      \
  src/capnp/compat/json.c++                                    \
  src/capnp/compat/json.capnp.c++

312
libcapnpc_la_LIBADD = libcapnp.la libkj.la $(PTHREAD_LIBS)
313
libcapnpc_la_LDFLAGS = -release $(SO_VERSION) -no-undefined
314
libcapnpc_la_SOURCES=                                          \
315 316
  src/capnp/compiler/type-id.h                                 \
  src/capnp/compiler/type-id.c++                               \
317 318 319 320 321 322 323 324 325 326 327 328 329 330
  src/capnp/compiler/error-reporter.h                          \
  src/capnp/compiler/error-reporter.c++                        \
  src/capnp/compiler/lexer.capnp.h                             \
  src/capnp/compiler/lexer.capnp.c++                           \
  src/capnp/compiler/lexer.h                                   \
  src/capnp/compiler/lexer.c++                                 \
  src/capnp/compiler/grammar.capnp.h                           \
  src/capnp/compiler/grammar.capnp.c++                         \
  src/capnp/compiler/parser.h                                  \
  src/capnp/compiler/parser.c++                                \
  src/capnp/compiler/node-translator.h                         \
  src/capnp/compiler/node-translator.c++                       \
  src/capnp/compiler/compiler.h                                \
  src/capnp/compiler/compiler.c++                              \
331 332
  src/capnp/schema-parser.c++                                  \
  src/capnp/serialize-text.c++
Kenton Varda's avatar
Kenton Varda committed
333

334
bin_PROGRAMS = capnp capnpc-capnp capnpc-c++
335

336
capnp_LDADD = libcapnpc.la libcapnp-json.la libcapnp.la libkj.la $(PTHREAD_LIBS)
337 338 339 340
capnp_SOURCES =                                                \
  src/capnp/compiler/module-loader.h                           \
  src/capnp/compiler/module-loader.c++                         \
  src/capnp/compiler/capnp.c++
341

342
capnpc_capnp_LDADD = libcapnp.la libkj.la $(PTHREAD_LIBS)
343 344
capnpc_capnp_SOURCES = src/capnp/compiler/capnpc-capnp.c++

345
capnpc_c___LDADD = libcapnp.la libkj.la $(PTHREAD_LIBS)
346 347
capnpc_c___SOURCES = src/capnp/compiler/capnpc-c++.c++

Kenton Varda's avatar
Kenton Varda committed
348 349
# Symlink capnpc -> capnp.  The capnp binary will behave like the old capnpc
# binary (i.e. like "capnp compile") when invoked via this symlink.
350 351 352 353
#
# Also attempt to run ldconfig, because otherwise users get confused.  If
# it fails (e.g. because the platform doesn't have it, or because the
# user doesn't have root privileges), don't worry about it.
Kenton Varda's avatar
Kenton Varda committed
354
install-exec-hook:
355
	ln -sf capnp $(DESTDIR)$(bindir)/capnpc
356
	ldconfig < /dev/null > /dev/null 2>&1 || true
Kenton Varda's avatar
Kenton Varda committed
357 358

uninstall-hook:
359
	rm -f $(DESTDIR)$(bindir)/capnpc
Kenton Varda's avatar
Kenton Varda committed
360

361 362 363 364 365 366 367
else LITE_MODE

install-exec-hook:
	ldconfig < /dev/null > /dev/null 2>&1 || true

endif LITE_MODE

Kenton Varda's avatar
Kenton Varda committed
368
# Source files intentionally not included in the dist at this time:
369 370 371
#  src/capnp/serialize-snappy*
#  src/capnp/benchmark/...
#  src/capnp/compiler/...
Kenton Varda's avatar
Kenton Varda committed
372 373 374

# Tests ==============================================================

Kenton Varda's avatar
Kenton Varda committed
375
test_capnpc_inputs =                                           \
376
  src/capnp/test.capnp                                         \
377 378
  src/capnp/test-import.capnp                                  \
  src/capnp/test-import2.capnp
Kenton Varda's avatar
Kenton Varda committed
379

Kenton Varda's avatar
Kenton Varda committed
380
test_capnpc_outputs =                                          \
381 382 383
  src/capnp/test.capnp.c++                                     \
  src/capnp/test.capnp.h                                       \
  src/capnp/test-import.capnp.c++                              \
384 385 386
  src/capnp/test-import.capnp.h                                \
  src/capnp/test-import2.capnp.c++                             \
  src/capnp/test-import2.capnp.h
Kenton Varda's avatar
Kenton Varda committed
387

388 389 390
if USE_EXTERNAL_CAPNP

test_capnpc_middleman: $(test_capnpc_inputs)
391
	@$(MKDIR_P) src
392 393 394 395 396 397
	$(CAPNP) compile --src-prefix=$(srcdir)/src -o$(CAPNPC_CXX):src -I$(srcdir)/src $^
	touch test_capnpc_middleman

else

test_capnpc_middleman: capnp$(EXEEXT) capnpc-c++$(EXEEXT) $(test_capnpc_inputs)
398
	@$(MKDIR_P) src
399 400 401 402 403 404 405
	echo $^ | (read CAPNP CAPNPC_CXX SOURCES && ./$$CAPNP compile --src-prefix=$(srcdir)/src -o./$$CAPNPC_CXX:src -I$(srcdir)/src $$SOURCES)
	touch test_capnpc_middleman

endif

$(test_capnpc_outputs): test_capnpc_middleman

406
BUILT_SOURCES = $(test_capnpc_outputs)
407

Kenton Varda's avatar
Kenton Varda committed
408 409 410 411 412 413
check_LIBRARIES = libcapnp-test.a
libcapnp_test_a_SOURCES =                                      \
  src/capnp/test-util.c++                                      \
  src/capnp/test-util.h
nodist_libcapnp_test_a_SOURCES = $(test_capnpc_outputs)

414 415 416 417
if LITE_MODE

check_PROGRAMS = capnp-test
compiler_tests =
Kenton Varda's avatar
Kenton Varda committed
418
capnp_test_LDADD = libcapnp-test.a libcapnp.la libkj-test.la libkj.la
419 420 421

else !LITE_MODE

Kenton Varda's avatar
Kenton Varda committed
422
check_PROGRAMS = capnp-test capnp-evolution-test capnp-afl-testcase
423 424 425
heavy_tests =                                                  \
  src/kj/async-test.c++                                        \
  src/kj/async-unix-test.c++                                   \
426
  src/kj/async-win32-test.c++                                  \
427 428 429
  src/kj/async-io-test.c++                                     \
  src/kj/parse/common-test.c++                                 \
  src/kj/parse/char-test.c++                                   \
430
  src/kj/std/iostream-test.c++                                 \
431
  src/kj/compat/url-test.c++                                   \
432
  src/kj/compat/http-test.c++                                  \
433
  src/capnp/canonicalize-test.c++                              \
434
  src/capnp/capability-test.c++                                \
435
  src/capnp/membrane-test.c++                                  \
436 437
  src/capnp/schema-test.c++                                    \
  src/capnp/schema-loader-test.c++                             \
438
  src/capnp/schema-parser-test.c++                             \
439 440 441
  src/capnp/dynamic-test.c++                                   \
  src/capnp/stringify-test.c++                                 \
  src/capnp/serialize-async-test.c++                           \
442
  src/capnp/serialize-text-test.c++                            \
443 444 445
  src/capnp/rpc-test.c++                                       \
  src/capnp/rpc-twoparty-test.c++                              \
  src/capnp/ez-rpc-test.c++                                    \
446
  src/capnp/compat/json-test.c++                               \
447
  src/capnp/compiler/lexer-test.c++                            \
448
  src/capnp/compiler/type-id-test.c++
Kenton Varda's avatar
Kenton Varda committed
449 450 451
capnp_test_LDADD =                                             \
  libcapnp-test.a                                              \
  libcapnpc.la                                                 \
452 453 454
  libcapnp-rpc.la                                              \
  libcapnp-json.la                                             \
  libcapnp.la                                                  \
455
  libkj-http.la                                                \
456 457
  libkj-async.la                                               \
  libkj-test.la                                                \
458 459 460
  libkj.la                                                     \
  $(ASYNC_LIBS)                                                \
  $(PTHREAD_LIBS)
461 462 463

endif !LITE_MODE

464
capnp_test_CPPFLAGS = -Wno-deprecated-declarations
465
capnp_test_SOURCES =                                           \
Kenton Varda's avatar
Kenton Varda committed
466
  src/kj/common-test.c++                                       \
Kenton Varda's avatar
Kenton Varda committed
467
  src/kj/memory-test.c++                                       \
Kenton Varda's avatar
Kenton Varda committed
468
  src/kj/refcount-test.c++                                     \
Kenton Varda's avatar
Kenton Varda committed
469
  src/kj/array-test.c++                                        \
Kenton Varda's avatar
Kenton Varda committed
470
  src/kj/string-test.c++                                       \
471
  src/kj/string-tree-test.c++                                  \
472
  src/kj/encoding-test.c++                                     \
473
  src/kj/exception-test.c++                                    \
Kenton Varda's avatar
Kenton Varda committed
474
  src/kj/debug-test.c++                                        \
475
  src/kj/arena-test.c++                                        \
Kenton Varda's avatar
Kenton Varda committed
476
  src/kj/units-test.c++                                        \
477
  src/kj/tuple-test.c++                                        \
Kenton Varda's avatar
Kenton Varda committed
478
  src/kj/one-of-test.c++                                       \
479
  src/kj/function-test.c++                                     \
480
  src/kj/io-test.c++                                           \
481
  src/kj/mutex-test.c++                                        \
482 483
  src/kj/threadlocal-test.c++                                  \
  src/kj/threadlocal-pthread-test.c++                          \
484 485
  src/kj/filesystem-test.c++                                   \
  src/kj/filesystem-disk-test.c++                              \
Kenton Varda's avatar
Kenton Varda committed
486
  src/kj/test-test.c++                                         \
487
  src/capnp/common-test.c++                                    \
488 489 490 491 492
  src/capnp/blob-test.c++                                      \
  src/capnp/endian-test.c++                                    \
  src/capnp/endian-fallback-test.c++                           \
  src/capnp/endian-reverse-test.c++                            \
  src/capnp/layout-test.c++                                    \
Kenton Varda's avatar
Kenton Varda committed
493
  src/capnp/any-test.c++                                       \
494 495
  src/capnp/message-test.c++                                   \
  src/capnp/encoding-test.c++                                  \
496
  src/capnp/orphan-test.c++                                    \
497 498
  src/capnp/serialize-test.c++                                 \
  src/capnp/serialize-packed-test.c++                          \
499
  src/capnp/fuzz-test.c++                                      \
500
  $(heavy_tests)
Kenton Varda's avatar
Kenton Varda committed
501

502
if !LITE_MODE
503 504
capnp_evolution_test_LDADD = libcapnpc.la libcapnp.la libkj.la
capnp_evolution_test_SOURCES = src/capnp/compiler/evolution-test.c++
Kenton Varda's avatar
Kenton Varda committed
505 506 507

capnp_afl_testcase_LDADD = libcapnp-test.a libcapnp-rpc.la libcapnp.la libkj.la libkj-async.la
capnp_afl_testcase_SOURCES = src/capnp/afl-testcase.c++
508
endif !LITE_MODE
509

510 511 512
if LITE_MODE
TESTS = capnp-test
else !LITE_MODE
513
TESTS = capnp-test capnp-evolution-test src/capnp/compiler/capnp-test.sh
514
endif !LITE_MODE