Makefile.am (30807B)
1 ## Process this file with automake to produce Makefile.in 2 3 ACLOCAL_AMFLAGS = -I m4 4 5 # We use serial-tests so that test output will be written directly to stdout 6 # which is much preferred in CI environments where the test logs may be hard 7 # to get at after the fact. Most of our tests are bundled into a single 8 # executable anyway so cannot easily be parallelized. 9 AUTOMAKE_OPTIONS = foreign subdir-objects serial-tests 10 11 # When running distcheck, verify that we've included all the files needed by 12 # the cmake build. 13 distcheck-hook: 14 rm -rf distcheck-cmake 15 (mkdir distcheck-cmake && cd distcheck-cmake && cmake ../$(distdir) && make -j6 check) 16 rm -rf distcheck-cmake 17 18 AM_CXXFLAGS = -I$(srcdir)/src -I$(builddir)/src -DKJ_HEADER_WARNINGS -DCAPNP_HEADER_WARNINGS -DCAPNP_INCLUDE_DIR='"$(includedir)"' $(PTHREAD_CFLAGS) 19 20 AM_LDFLAGS = $(PTHREAD_CFLAGS) 21 22 EXTRA_DIST = \ 23 README.txt \ 24 LICENSE.txt \ 25 $(test_capnpc_inputs) \ 26 src/capnp/compiler/capnp-test.sh \ 27 src/capnp/testdata/segmented-packed \ 28 src/capnp/testdata/errors.capnp.nobuild \ 29 src/capnp/testdata/errors2.capnp.nobuild \ 30 src/capnp/testdata/short.txt \ 31 src/capnp/testdata/flat \ 32 src/capnp/testdata/binary \ 33 src/capnp/testdata/errors.txt \ 34 src/capnp/testdata/errors2.txt \ 35 src/capnp/testdata/segmented \ 36 src/capnp/testdata/packed \ 37 src/capnp/testdata/pretty.txt \ 38 src/capnp/testdata/lists.binary \ 39 src/capnp/testdata/packedflat \ 40 src/capnp/testdata/pretty.json \ 41 src/capnp/testdata/short.json \ 42 src/capnp/testdata/annotated-json.binary \ 43 src/capnp/testdata/annotated.json \ 44 CMakeLists.txt \ 45 cmake/CapnProtoMacros.cmake \ 46 cmake/CapnProtoTargets.cmake \ 47 cmake/CapnProtoConfig.cmake.in \ 48 cmake/CapnProtoConfigVersion.cmake.in \ 49 src/CMakeLists.txt \ 50 src/kj/CMakeLists.txt \ 51 src/capnp/CMakeLists.txt 52 53 CLEANFILES = $(test_capnpc_outputs) test_capnpc_middleman distcheck-cmake 54 55 # Deletes all the files generated by autoreconf. 56 MAINTAINERCLEANFILES = \ 57 aclocal.m4 \ 58 config.guess \ 59 config.sub \ 60 configure \ 61 depcomp \ 62 install-sh \ 63 ltmain.sh \ 64 Makefile.in \ 65 missing \ 66 mkinstalldirs \ 67 config.h.in \ 68 stamp.h.in \ 69 m4/ltsugar.m4 \ 70 m4/libtool.m4 \ 71 m4/ltversion.m4 \ 72 m4/lt~obsolete.m4 \ 73 m4/ltoptions.m4 74 75 maintainer-clean-local: 76 -rm -rf build-aux 77 78 # gmake defines an implicit rule building n from n.o. Unfortunately, this triggers on our .capnp 79 # files because they generate .capnp.c++ which is compiled to .capnp.o. In addition to being 80 # nonsense, this leads to cyclic dependency issues and could even cause the .capnp files to be 81 # unexpectedly overwritten! We need to cancel the implicit rule by declaring an explicit one. 82 # 83 # I want the hours of my life back that I spent figuring this out. 84 %.capnp: 85 @: 86 87 public_capnpc_inputs = \ 88 src/capnp/c++.capnp \ 89 src/capnp/schema.capnp \ 90 src/capnp/stream.capnp \ 91 src/capnp/rpc.capnp \ 92 src/capnp/rpc-twoparty.capnp \ 93 src/capnp/persistent.capnp 94 95 capnpc_inputs = \ 96 $(public_capnpc_inputs) \ 97 src/capnp/compiler/lexer.capnp \ 98 src/capnp/compiler/grammar.capnp \ 99 src/capnp/compat/json.capnp 100 101 capnpc_outputs = \ 102 src/capnp/c++.capnp.c++ \ 103 src/capnp/c++.capnp.h \ 104 src/capnp/schema.capnp.c++ \ 105 src/capnp/schema.capnp.h \ 106 src/capnp/stream.capnp.c++ \ 107 src/capnp/stream.capnp.h \ 108 src/capnp/rpc.capnp.c++ \ 109 src/capnp/rpc.capnp.h \ 110 src/capnp/rpc-twoparty.capnp.c++ \ 111 src/capnp/rpc-twoparty.capnp.h \ 112 src/capnp/persistent.capnp.c++ \ 113 src/capnp/persistent.capnp.h \ 114 src/capnp/compat/json.capnp.h \ 115 src/capnp/compat/json.capnp.c++ \ 116 src/capnp/compiler/lexer.capnp.c++ \ 117 src/capnp/compiler/lexer.capnp.h \ 118 src/capnp/compiler/grammar.capnp.c++ \ 119 src/capnp/compiler/grammar.capnp.h 120 121 includecapnpdir = $(includedir)/capnp 122 includecapnpcompatdir = $(includecapnpdir)/compat 123 includekjdir = $(includedir)/kj 124 includekjparsedir = $(includekjdir)/parse 125 includekjstddir = $(includekjdir)/std 126 includekjcompatdir = $(includekjdir)/compat 127 128 dist_includecapnp_DATA = $(public_capnpc_inputs) 129 dist_includecapnpcompat_DATA = src/capnp/compat/json.capnp 130 131 pkgconfigdir = $(libdir)/pkgconfig 132 pkgconfig_DATA = $(CAPNP_PKG_CONFIG_FILES) 133 134 cmakeconfigdir = $(libdir)/cmake/CapnProto 135 cmakeconfig_DATA = $(CAPNP_CMAKE_CONFIG_FILES) \ 136 cmake/CapnProtoMacros.cmake \ 137 cmake/CapnProtoTargets.cmake 138 139 noinst_HEADERS = \ 140 src/kj/miniposix.h \ 141 src/kj/async-io-internal.h 142 143 includekj_HEADERS = \ 144 src/kj/common.h \ 145 src/kj/units.h \ 146 src/kj/memory.h \ 147 src/kj/refcount.h \ 148 src/kj/array.h \ 149 src/kj/list.h \ 150 src/kj/vector.h \ 151 src/kj/string.h \ 152 src/kj/string-tree.h \ 153 src/kj/hash.h \ 154 src/kj/table.h \ 155 src/kj/map.h \ 156 src/kj/encoding.h \ 157 src/kj/exception.h \ 158 src/kj/debug.h \ 159 src/kj/arena.h \ 160 src/kj/io.h \ 161 src/kj/tuple.h \ 162 src/kj/one-of.h \ 163 src/kj/function.h \ 164 src/kj/mutex.h \ 165 src/kj/source-location.h \ 166 src/kj/thread.h \ 167 src/kj/threadlocal.h \ 168 src/kj/filesystem.h \ 169 src/kj/async-prelude.h \ 170 src/kj/async.h \ 171 src/kj/async-inl.h \ 172 src/kj/time.h \ 173 src/kj/timer.h \ 174 src/kj/async-unix.h \ 175 src/kj/async-win32.h \ 176 src/kj/async-io.h \ 177 src/kj/async-queue.h \ 178 src/kj/main.h \ 179 src/kj/test.h \ 180 src/kj/windows-sanity.h 181 182 includekjparse_HEADERS = \ 183 src/kj/parse/common.h \ 184 src/kj/parse/char.h 185 186 includekjstd_HEADERS = \ 187 src/kj/std/iostream.h 188 189 includekjcompat_HEADERS = \ 190 src/kj/compat/gtest.h \ 191 src/kj/compat/url.h \ 192 src/kj/compat/http.h \ 193 src/kj/compat/gzip.h \ 194 src/kj/compat/readiness-io.h \ 195 src/kj/compat/tls.h 196 197 includecapnp_HEADERS = \ 198 src/capnp/c++.capnp.h \ 199 src/capnp/common.h \ 200 src/capnp/blob.h \ 201 src/capnp/endian.h \ 202 src/capnp/layout.h \ 203 src/capnp/orphan.h \ 204 src/capnp/list.h \ 205 src/capnp/any.h \ 206 src/capnp/message.h \ 207 src/capnp/capability.h \ 208 src/capnp/membrane.h \ 209 src/capnp/schema.capnp.h \ 210 src/capnp/stream.capnp.h \ 211 src/capnp/schema-lite.h \ 212 src/capnp/schema.h \ 213 src/capnp/schema-loader.h \ 214 src/capnp/schema-parser.h \ 215 src/capnp/dynamic.h \ 216 src/capnp/pretty-print.h \ 217 src/capnp/serialize.h \ 218 src/capnp/serialize-async.h \ 219 src/capnp/serialize-packed.h \ 220 src/capnp/serialize-text.h \ 221 src/capnp/pointer-helpers.h \ 222 src/capnp/generated-header-support.h \ 223 src/capnp/raw-schema.h \ 224 src/capnp/rpc-prelude.h \ 225 src/capnp/rpc.h \ 226 src/capnp/rpc-twoparty.h \ 227 src/capnp/rpc.capnp.h \ 228 src/capnp/rpc-twoparty.capnp.h \ 229 src/capnp/persistent.capnp.h \ 230 src/capnp/ez-rpc.h 231 232 includecapnpcompat_HEADERS = \ 233 src/capnp/compat/json.h \ 234 src/capnp/compat/json.capnp.h \ 235 src/capnp/compat/std-iterator.h \ 236 src/capnp/compat/websocket-rpc.h 237 238 if BUILD_KJ_TLS 239 MAYBE_KJ_TLS_LA=libkj-tls.la 240 MAYBE_KJ_TLS_TESTS= \ 241 src/kj/compat/readiness-io-test.c++ \ 242 src/kj/compat/tls-test.c++ 243 else 244 MAYBE_KJ_TLS_LA= 245 MAYBE_KJ_TLS_TESTS= 246 endif 247 248 if BUILD_KJ_GZIP 249 MAYBE_KJ_GZIP_LA=libkj-gzip.la 250 MAYBE_KJ_GZIP_TESTS= \ 251 src/kj/compat/gzip-test.c++ 252 else 253 MAYBE_KJ_TLS_LA= 254 MAYBE_KJ_TLS_TESTS= 255 endif 256 257 if LITE_MODE 258 lib_LTLIBRARIES = libkj.la libkj-test.la libcapnp.la 259 else 260 lib_LTLIBRARIES = libkj.la libkj-test.la libkj-async.la libkj-http.la $(MAYBE_KJ_TLS_LA) $(MAYBE_KJ_GZIP_LA) libcapnp.la libcapnp-rpc.la libcapnp-json.la libcapnp-websocket.la libcapnpc.la 261 endif 262 263 libkj_la_LIBADD = $(PTHREAD_LIBS) 264 libkj_la_LDFLAGS = -release $(SO_VERSION) -no-undefined 265 libkj_la_SOURCES= \ 266 src/kj/common.c++ \ 267 src/kj/units.c++ \ 268 src/kj/memory.c++ \ 269 src/kj/refcount.c++ \ 270 src/kj/array.c++ \ 271 src/kj/list.c++ \ 272 src/kj/string.c++ \ 273 src/kj/string-tree.c++ \ 274 src/kj/source-location.c++ \ 275 src/kj/hash.c++ \ 276 src/kj/table.c++ \ 277 src/kj/encoding.c++ \ 278 src/kj/exception.c++ \ 279 src/kj/debug.c++ \ 280 src/kj/arena.c++ \ 281 src/kj/io.c++ \ 282 src/kj/mutex.c++ \ 283 src/kj/thread.c++ \ 284 src/kj/time.c++ \ 285 src/kj/filesystem.c++ \ 286 src/kj/filesystem-disk-unix.c++ \ 287 src/kj/filesystem-disk-win32.c++ \ 288 src/kj/test-helpers.c++ \ 289 src/kj/main.c++ \ 290 src/kj/parse/char.c++ 291 292 libkj_test_la_LIBADD = libkj.la $(PTHREAD_LIBS) 293 libkj_test_la_LDFLAGS = -release $(VERSION) -no-undefined 294 libkj_test_la_SOURCES = src/kj/test.c++ 295 296 if !LITE_MODE 297 libkj_async_la_LIBADD = libkj.la $(ASYNC_LIBS) $(PTHREAD_LIBS) 298 libkj_async_la_LDFLAGS = -release $(SO_VERSION) -no-undefined 299 libkj_async_la_SOURCES= \ 300 src/kj/async.c++ \ 301 src/kj/async-unix.c++ \ 302 src/kj/async-win32.c++ \ 303 src/kj/async-io.c++ \ 304 src/kj/async-io-unix.c++ \ 305 src/kj/async-io-win32.c++ \ 306 src/kj/timer.c++ 307 308 libkj_http_la_LIBADD = libkj-async.la libkj.la $(ASYNC_LIBS) $(PTHREAD_LIBS) 309 libkj_http_la_LDFLAGS = -release $(SO_VERSION) -no-undefined 310 libkj_http_la_SOURCES= \ 311 src/kj/compat/url.c++ \ 312 src/kj/compat/http.c++ 313 314 libkj_tls_la_LIBADD = libkj-async.la libkj.la -lssl -lcrypto $(ASYNC_LIBS) $(PTHREAD_LIBS) 315 libkj_tls_la_LDFLAGS = -release $(SO_VERSION) -no-undefined 316 libkj_tls_la_SOURCES= \ 317 src/kj/compat/readiness-io.c++ \ 318 src/kj/compat/tls.c++ 319 320 libkj_gzip_la_LIBADD = libkj-async.la libkj.la -lz $(ASYNC_LIBS) $(PTHREAD_LIBS) 321 libkj_gzip_la_LDFLAGS = -release $(SO_VERSION) -no-undefined 322 libkj_gzip_la_SOURCES= \ 323 src/kj/compat/gzip.c++ 324 325 endif !LITE_MODE 326 327 if !LITE_MODE 328 heavy_sources = \ 329 src/capnp/schema.c++ \ 330 src/capnp/schema-loader.c++ \ 331 src/capnp/dynamic.c++ \ 332 src/capnp/stringify.c++ 333 endif !LITE_MODE 334 335 libcapnp_la_LIBADD = libkj.la $(PTHREAD_LIBS) 336 libcapnp_la_LDFLAGS = -release $(SO_VERSION) -no-undefined 337 libcapnp_la_SOURCES= \ 338 src/capnp/c++.capnp.c++ \ 339 src/capnp/blob.c++ \ 340 src/capnp/arena.h \ 341 src/capnp/arena.c++ \ 342 src/capnp/layout.c++ \ 343 src/capnp/list.c++ \ 344 src/capnp/any.c++ \ 345 src/capnp/message.c++ \ 346 src/capnp/schema.capnp.c++ \ 347 src/capnp/stream.capnp.c++ \ 348 src/capnp/serialize.c++ \ 349 src/capnp/serialize-packed.c++ \ 350 $(heavy_sources) 351 352 if !LITE_MODE 353 354 libcapnp_rpc_la_LIBADD = libcapnp.la libkj-async.la libkj.la $(ASYNC_LIBS) $(PTHREAD_LIBS) 355 libcapnp_rpc_la_LDFLAGS = -release $(SO_VERSION) -no-undefined 356 libcapnp_rpc_la_SOURCES= \ 357 src/capnp/serialize-async.c++ \ 358 src/capnp/capability.c++ \ 359 src/capnp/membrane.c++ \ 360 src/capnp/dynamic-capability.c++ \ 361 src/capnp/rpc.c++ \ 362 src/capnp/rpc.capnp.c++ \ 363 src/capnp/rpc-twoparty.c++ \ 364 src/capnp/rpc-twoparty.capnp.c++ \ 365 src/capnp/persistent.capnp.c++ \ 366 src/capnp/ez-rpc.c++ 367 368 libcapnp_json_la_LIBADD = libcapnp.la libkj.la $(PTHREAD_LIBS) 369 libcapnp_json_la_LDFLAGS = -release $(SO_VERSION) -no-undefined 370 libcapnp_json_la_SOURCES= \ 371 src/capnp/compat/json.c++ \ 372 src/capnp/compat/json.capnp.c++ 373 374 libcapnp_websocket_la_LIBADD = libcapnp.la libcapnp-rpc.la libkj.la libkj-async.la libkj-http.la $(PTHREAD_LIBS) 375 libcapnp_websocket_la_LDFLAGS = -release $(SO_VERSION) -no-undefined 376 libcapnp_websocket_la_SOURCES= \ 377 src/capnp/compat/websocket-rpc.c++ 378 379 libcapnpc_la_LIBADD = libcapnp.la libkj.la $(PTHREAD_LIBS) 380 libcapnpc_la_LDFLAGS = -release $(SO_VERSION) -no-undefined 381 libcapnpc_la_SOURCES= \ 382 src/capnp/compiler/type-id.h \ 383 src/capnp/compiler/type-id.c++ \ 384 src/capnp/compiler/error-reporter.h \ 385 src/capnp/compiler/error-reporter.c++ \ 386 src/capnp/compiler/lexer.capnp.h \ 387 src/capnp/compiler/lexer.capnp.c++ \ 388 src/capnp/compiler/lexer.h \ 389 src/capnp/compiler/lexer.c++ \ 390 src/capnp/compiler/grammar.capnp.h \ 391 src/capnp/compiler/grammar.capnp.c++ \ 392 src/capnp/compiler/parser.h \ 393 src/capnp/compiler/parser.c++ \ 394 src/capnp/compiler/resolver.h \ 395 src/capnp/compiler/generics.h \ 396 src/capnp/compiler/generics.c++ \ 397 src/capnp/compiler/node-translator.h \ 398 src/capnp/compiler/node-translator.c++ \ 399 src/capnp/compiler/compiler.h \ 400 src/capnp/compiler/compiler.c++ \ 401 src/capnp/schema-parser.c++ \ 402 src/capnp/serialize-text.c++ 403 404 bin_PROGRAMS = capnp capnpc-capnp capnpc-c++ 405 406 capnp_LDADD = libcapnpc.la libcapnp-json.la libcapnp.la libkj.la $(PTHREAD_LIBS) 407 capnp_SOURCES = \ 408 src/capnp/compiler/module-loader.h \ 409 src/capnp/compiler/module-loader.c++ \ 410 src/capnp/compiler/capnp.c++ 411 412 capnpc_capnp_LDADD = libcapnp.la libkj.la $(PTHREAD_LIBS) 413 capnpc_capnp_SOURCES = src/capnp/compiler/capnpc-capnp.c++ 414 415 capnpc_c___LDADD = libcapnp.la libkj.la $(PTHREAD_LIBS) 416 capnpc_c___SOURCES = src/capnp/compiler/capnpc-c++.c++ 417 418 # Symlink capnpc -> capnp. The capnp binary will behave like the old capnpc 419 # binary (i.e. like "capnp compile") when invoked via this symlink. 420 # 421 # Also attempt to run ldconfig, because otherwise users get confused. If 422 # it fails (e.g. because the platform doesn't have it, or because the 423 # user doesn't have root privileges), don't worry about it. 424 # 425 # We need to specify the path for OpenBSD. 426 install-exec-hook: 427 ln -sf capnp $(DESTDIR)$(bindir)/capnpc 428 if [ `uname` == 'OpenBSD' ]; then \ 429 (ldconfig /usr/local/lib /usr/lib /usr/X11R6/lib > /dev/null 2>&1 || true); \ 430 else \ 431 ldconfig < /dev/null > /dev/null 2>&1 || true; \ 432 fi 433 uninstall-hook: 434 rm -f $(DESTDIR)$(bindir)/capnpc 435 436 else LITE_MODE 437 438 install-exec-hook: 439 ldconfig < /dev/null > /dev/null 2>&1 || true 440 441 endif LITE_MODE 442 443 # Source files intentionally not included in the dist at this time: 444 # src/capnp/serialize-snappy* 445 # src/capnp/benchmark/... 446 # src/capnp/compiler/... 447 448 # Tests ============================================================== 449 450 test_capnpc_inputs = \ 451 src/capnp/test.capnp \ 452 src/capnp/test-import.capnp \ 453 src/capnp/test-import2.capnp \ 454 src/capnp/compat/json-test.capnp 455 456 test_capnpc_outputs = \ 457 src/capnp/test.capnp.c++ \ 458 src/capnp/test.capnp.h \ 459 src/capnp/test-import.capnp.c++ \ 460 src/capnp/test-import.capnp.h \ 461 src/capnp/test-import2.capnp.c++ \ 462 src/capnp/test-import2.capnp.h \ 463 src/capnp/compat/json-test.capnp.c++ \ 464 src/capnp/compat/json-test.capnp.h 465 466 if USE_EXTERNAL_CAPNP 467 468 test_capnpc_middleman: $(test_capnpc_inputs) 469 @$(MKDIR_P) src 470 $(CAPNP) compile --src-prefix=$(srcdir)/src -o$(CAPNPC_CXX):src -I$(srcdir)/src $$(for FILE in $(test_capnpc_inputs); do echo $(srcdir)/$$FILE; done) 471 touch test_capnpc_middleman 472 473 else 474 475 test_capnpc_middleman: capnp$(EXEEXT) capnpc-c++$(EXEEXT) $(test_capnpc_inputs) 476 @$(MKDIR_P) src 477 ./capnp$(EXEEXT) compile --src-prefix=$(srcdir)/src -o./capnpc-c++$(EXEEXT):src -I$(srcdir)/src $$(for FILE in $(test_capnpc_inputs); do echo $(srcdir)/$$FILE; done) 478 touch test_capnpc_middleman 479 480 endif 481 482 $(test_capnpc_outputs): test_capnpc_middleman 483 484 BUILT_SOURCES = $(test_capnpc_outputs) 485 486 check_LIBRARIES = libcapnp-test.a 487 libcapnp_test_a_SOURCES = \ 488 src/capnp/test-util.c++ \ 489 src/capnp/test-util.h 490 nodist_libcapnp_test_a_SOURCES = $(test_capnpc_outputs) 491 492 if LITE_MODE 493 494 check_PROGRAMS = capnp-test 495 compiler_tests = 496 capnp_test_LDADD = libcapnp-test.a libcapnp.la libkj-test.la libkj.la 497 498 else !LITE_MODE 499 500 check_PROGRAMS = capnp-test capnp-evolution-test capnp-afl-testcase 501 if HAS_FUZZING_ENGINE 502 check_PROGRAMS += capnp-llvm-fuzzer-testcase 503 endif 504 heavy_tests = \ 505 src/kj/async-test.c++ \ 506 src/kj/async-xthread-test.c++ \ 507 src/kj/async-coroutine-test.c++ \ 508 src/kj/async-unix-test.c++ \ 509 src/kj/async-unix-xthread-test.c++ \ 510 src/kj/async-win32-test.c++ \ 511 src/kj/async-win32-xthread-test.c++ \ 512 src/kj/async-io-test.c++ \ 513 src/kj/async-queue-test.c++ \ 514 src/kj/parse/common-test.c++ \ 515 src/kj/parse/char-test.c++ \ 516 src/kj/std/iostream-test.c++ \ 517 src/kj/compat/url-test.c++ \ 518 src/kj/compat/http-test.c++ \ 519 $(MAYBE_KJ_GZIP_TESTS) \ 520 $(MAYBE_KJ_TLS_TESTS) \ 521 src/capnp/canonicalize-test.c++ \ 522 src/capnp/capability-test.c++ \ 523 src/capnp/membrane-test.c++ \ 524 src/capnp/schema-test.c++ \ 525 src/capnp/schema-loader-test.c++ \ 526 src/capnp/schema-parser-test.c++ \ 527 src/capnp/dynamic-test.c++ \ 528 src/capnp/stringify-test.c++ \ 529 src/capnp/serialize-async-test.c++ \ 530 src/capnp/serialize-text-test.c++ \ 531 src/capnp/rpc-test.c++ \ 532 src/capnp/rpc-twoparty-test.c++ \ 533 src/capnp/ez-rpc-test.c++ \ 534 src/capnp/compat/json-test.c++ \ 535 src/capnp/compat/websocket-rpc-test.c++ \ 536 src/capnp/compiler/lexer-test.c++ \ 537 src/capnp/compiler/type-id-test.c++ 538 capnp_test_LDADD = \ 539 libcapnp-test.a \ 540 libcapnpc.la \ 541 libcapnp-rpc.la \ 542 libcapnp-websocket.la \ 543 libcapnp-json.la \ 544 libcapnp.la \ 545 libkj-http.la \ 546 $(MAYBE_KJ_GZIP_LA) \ 547 $(MAYBE_KJ_TLS_LA) \ 548 libkj-async.la \ 549 libkj-test.la \ 550 libkj.la \ 551 $(ASYNC_LIBS) \ 552 $(PTHREAD_LIBS) 553 554 endif !LITE_MODE 555 556 capnp_test_CPPFLAGS = -Wno-deprecated-declarations 557 capnp_test_SOURCES = \ 558 src/kj/common-test.c++ \ 559 src/kj/memory-test.c++ \ 560 src/kj/refcount-test.c++ \ 561 src/kj/array-test.c++ \ 562 src/kj/list-test.c++ \ 563 src/kj/string-test.c++ \ 564 src/kj/string-tree-test.c++ \ 565 src/kj/table-test.c++ \ 566 src/kj/map-test.c++ \ 567 src/kj/encoding-test.c++ \ 568 src/kj/exception-test.c++ \ 569 src/kj/debug-test.c++ \ 570 src/kj/arena-test.c++ \ 571 src/kj/units-test.c++ \ 572 src/kj/tuple-test.c++ \ 573 src/kj/one-of-test.c++ \ 574 src/kj/function-test.c++ \ 575 src/kj/io-test.c++ \ 576 src/kj/mutex-test.c++ \ 577 src/kj/time-test.c++ \ 578 src/kj/threadlocal-test.c++ \ 579 src/kj/filesystem-test.c++ \ 580 src/kj/filesystem-disk-test.c++ \ 581 src/kj/test-test.c++ \ 582 src/capnp/common-test.c++ \ 583 src/capnp/blob-test.c++ \ 584 src/capnp/endian-test.c++ \ 585 src/capnp/endian-fallback-test.c++ \ 586 src/capnp/endian-reverse-test.c++ \ 587 src/capnp/layout-test.c++ \ 588 src/capnp/any-test.c++ \ 589 src/capnp/message-test.c++ \ 590 src/capnp/encoding-test.c++ \ 591 src/capnp/orphan-test.c++ \ 592 src/capnp/serialize-test.c++ \ 593 src/capnp/serialize-packed-test.c++ \ 594 src/capnp/fuzz-test.c++ \ 595 $(heavy_tests) 596 597 if !LITE_MODE 598 capnp_evolution_test_LDADD = libcapnpc.la libcapnp.la libkj.la 599 capnp_evolution_test_SOURCES = src/capnp/compiler/evolution-test.c++ 600 601 capnp_afl_testcase_LDADD = libcapnp-test.a libcapnp-rpc.la libcapnp.la libkj.la libkj-async.la 602 capnp_afl_testcase_SOURCES = src/capnp/afl-testcase.c++ 603 604 if HAS_FUZZING_ENGINE 605 capnp_llvm_fuzzer_testcase_LDADD = libcapnp-test.a libcapnp-rpc.la libcapnp.la libkj.la libkj-async.la 606 capnp_llvm_fuzzer_testcase_SOURCES = src/capnp/llvm-fuzzer-testcase.c++ 607 capnp_llvm_fuzzer_testcase_LDFLAGS = $(LIB_FUZZING_ENGINE) 608 endif 609 endif !LITE_MODE 610 611 if LITE_MODE 612 TESTS = capnp-test 613 else !LITE_MODE 614 TESTS = capnp-test capnp-evolution-test src/capnp/compiler/capnp-test.sh 615 endif !LITE_MODE