Makefile.am 29.8 KB
Newer Older
1 2
ACLOCAL_AMFLAGS = -I config

3 4
SUBDIRS = doc

5
DIST_SUBDIRS = doc builds builds/deprecated-msvc
6 7 8

pkgconfig_DATA = src/libzmq.pc

9 10 11 12 13 14 15
AM_CPPFLAGS = \
	-I$(top_builddir)/include \
	-I$(top_srcdir)/include

#
# libraries/binaries
#
16
lib_LTLIBRARIES = src/libzmq.la
17 18

include_HEADERS = \
Min RK's avatar
Min RK committed
19 20
	include/zmq.h \
	include/zmq_utils.h
21

22
src_libzmq_la_SOURCES = \
23 24 25 26 27 28
	src/address.cpp \
	src/address.hpp \
	src/array.hpp \
	src/atomic_counter.hpp \
	src/atomic_ptr.hpp \
	src/blob.hpp \
29 30
	src/client.cpp \
	src/client.hpp \
31 32 33
	src/clock.cpp \
	src/clock.hpp \
	src/command.hpp \
somdoron's avatar
somdoron committed
34
	src/condition_variable.hpp \
35 36 37 38 39
	src/config.hpp \
	src/ctx.cpp \
	src/ctx.hpp \
	src/curve_client.cpp \
	src/curve_client.hpp \
40
	src/curve_client_tools.hpp \
41 42
	src/curve_mechanism_base.cpp \
	src/curve_mechanism_base.hpp \
43 44 45 46 47 48 49 50
	src/curve_server.cpp \
	src/curve_server.hpp \
	src/dbuffer.hpp \
	src/dealer.cpp \
	src/dealer.hpp \
	src/decoder.hpp \
	src/devpoll.cpp \
	src/devpoll.hpp \
51 52
	src/dgram.cpp \
	src/dgram.hpp \
somdoron's avatar
somdoron committed
53 54
	src/dish.cpp \
	src/dish.hpp \
55 56 57 58 59 60 61 62 63 64
	src/dist.cpp \
	src/dist.hpp \
	src/encoder.hpp \
	src/epoll.cpp \
	src/epoll.hpp \
	src/err.cpp \
	src/err.hpp \
	src/fd.hpp \
	src/fq.cpp \
	src/fq.hpp \
somdoron's avatar
somdoron committed
65 66
	src/gather.cpp \
	src/gather.hpp \
67 68
	src/generic_mtrie.hpp \
	src/generic_mtrie_impl.hpp \
69 70 71 72 73 74 75 76 77
	src/gssapi_mechanism_base.cpp \
	src/gssapi_mechanism_base.hpp \
	src/gssapi_client.cpp \
	src/gssapi_client.hpp \
	src/gssapi_server.cpp \
	src/gssapi_server.hpp \
	src/i_encoder.hpp \
	src/i_engine.hpp \
	src/i_decoder.hpp \
somdoron's avatar
somdoron committed
78
	src/i_mailbox.hpp \
79 80 81 82 83 84 85
	src/i_poll_events.hpp \
	src/io_object.cpp \
	src/io_object.hpp \
	src/io_thread.cpp \
	src/io_thread.hpp \
	src/ip.cpp \
	src/ip.hpp \
86 87
	src/ip_resolver.cpp \
	src/ip_resolver.hpp \
88 89 90 91 92 93 94 95 96 97 98
	src/ipc_address.cpp \
	src/ipc_address.hpp \
	src/ipc_connecter.cpp \
	src/ipc_connecter.hpp \
	src/ipc_listener.cpp \
	src/ipc_listener.hpp \
	src/kqueue.cpp \
	src/kqueue.hpp \
	src/lb.cpp \
	src/lb.hpp \
	src/likely.hpp \
99
	src/macros.hpp \
100 101
	src/mailbox.cpp \
	src/mailbox.hpp \
somdoron's avatar
somdoron committed
102 103
	src/mailbox_safe.cpp \
	src/mailbox_safe.hpp \
104 105
	src/mechanism.cpp \
	src/mechanism.hpp  \
106 107
	src/mechanism_base.cpp \
	src/mechanism_base.hpp  \
108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136
	src/metadata.cpp \
	src/metadata.hpp \
	src/msg.cpp \
	src/msg.hpp \
	src/mtrie.cpp \
	src/mtrie.hpp \
	src/mutex.hpp \
	src/norm_engine.cpp \
	src/norm_engine.hpp \
	src/null_mechanism.cpp \
	src/null_mechanism.hpp \
	src/object.cpp \
	src/object.hpp \
	src/options.cpp \
	src/options.hpp \
	src/own.cpp \
	src/own.hpp \
	src/pair.cpp \
	src/pair.hpp \
	src/pgm_receiver.cpp \
	src/pgm_receiver.hpp \
	src/pgm_sender.cpp \
	src/pgm_sender.hpp \
	src/pgm_socket.cpp \
	src/pgm_socket.hpp \
	src/pipe.cpp \
	src/pipe.hpp \
	src/plain_client.cpp \
	src/plain_client.hpp \
137
	src/plain_common.hpp \
138 139 140 141 142 143 144 145
	src/plain_server.cpp \
	src/plain_server.hpp \
	src/platform.hpp \
	src/poll.cpp \
	src/poll.hpp \
	src/poller.hpp \
	src/poller_base.cpp \
	src/poller_base.hpp \
146 147
	src/polling_util.cpp \
	src/polling_util.hpp \
Laughing's avatar
Laughing committed
148 149
	src/pollset.cpp \
	src/pollset.hpp \
150 151
	src/precompiled.cpp \
	src/precompiled.hpp \
152 153 154 155 156 157 158 159
	src/proxy.cpp \
	src/proxy.hpp \
	src/pub.cpp \
	src/pub.hpp \
	src/pull.cpp \
	src/pull.hpp \
	src/push.cpp \
	src/push.hpp \
somdoron's avatar
somdoron committed
160 161
	src/radio.cpp \
	src/radio.hpp \
162 163 164 165 166 167 168 169 170 171 172 173 174 175
	src/random.cpp \
	src/random.hpp \
	src/raw_decoder.cpp \
	src/raw_decoder.hpp \
	src/raw_encoder.cpp \
	src/raw_encoder.hpp \
	src/reaper.cpp \
	src/reaper.hpp \
	src/rep.cpp \
	src/rep.hpp \
	src/req.cpp \
	src/req.hpp \
	src/router.cpp \
	src/router.hpp \
somdoron's avatar
somdoron committed
176 177
	src/scatter.cpp \
	src/scatter.hpp \
178 179
	src/select.cpp \
	src/select.hpp \
180 181
	src/server.cpp \
	src/server.hpp \
182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208
	src/session_base.cpp \
	src/session_base.hpp \
	src/signaler.cpp \
	src/signaler.hpp \
	src/socket_base.cpp \
	src/socket_base.hpp \
	src/socks.cpp \
	src/socks.hpp \
	src/socks_connecter.cpp \
	src/socks_connecter.hpp \
	src/stdint.hpp \
	src/stream.cpp \
	src/stream.hpp \
	src/stream_engine.cpp \
	src/stream_engine.hpp \
	src/sub.cpp \
	src/sub.hpp \
	src/tcp.cpp \
	src/tcp.hpp \
	src/tcp_address.cpp \
	src/tcp_address.hpp \
	src/tcp_connecter.cpp \
	src/tcp_connecter.hpp \
	src/tcp_listener.cpp \
	src/tcp_listener.hpp \
	src/thread.cpp \
	src/thread.hpp \
somdoron's avatar
somdoron committed
209 210
	src/timers.cpp \
	src/timers.hpp \
211 212 213 214 215 216 217 218
	src/tipc_address.cpp \
	src/tipc_address.hpp \
	src/tipc_connecter.cpp \
	src/tipc_connecter.hpp \
	src/tipc_listener.cpp \
	src/tipc_listener.hpp \
	src/trie.cpp \
	src/trie.hpp \
219 220 221 222
	src/udp_address.cpp \
	src/udp_address.hpp \
	src/udp_engine.cpp \
	src/udp_engine.hpp \
223 224 225 226 227 228 229 230 231
	src/v1_decoder.cpp \
	src/v1_decoder.hpp \
	src/v2_decoder.cpp \
	src/v2_decoder.hpp \
	src/v1_encoder.cpp \
	src/v1_encoder.hpp \
	src/v2_encoder.cpp \
	src/v2_encoder.hpp \
	src/v2_protocol.hpp \
Ilya Kulakov's avatar
Ilya Kulakov committed
232 233 234 235 236 237 238 239
	src/vmci.cpp \
	src/vmci.hpp \
	src/vmci_address.cpp \
	src/vmci_address.hpp \
	src/vmci_connecter.cpp \
	src/vmci_connecter.hpp \
	src/vmci_listener.cpp \
	src/vmci_listener.hpp \
240 241 242
	src/windows.hpp \
	src/wire.hpp \
	src/xpub.cpp \
243
	src/xpub.hpp \
244 245 246 247 248 249 250
	src/xsub.cpp \
	src/xsub.hpp \
	src/ypipe.hpp \
	src/ypipe_base.hpp \
	src/ypipe_conflate.hpp \
	src/yqueue.hpp \
	src/zmq.cpp \
Jens Auer's avatar
Jens Auer committed
251
	src/zmq_utils.cpp \
252 253 254
	src/decoder_allocators.cpp \
	src/decoder_allocators.hpp \
	src/socket_poller.cpp \
255
	src/socket_poller.hpp \
256 257
	src/zap_client.cpp \
	src/zap_client.hpp \
258
	src/zmq_draft.h
Jens Auer's avatar
Jens Auer committed
259

260 261
if USE_WEPOLL
src_libzmq_la_SOURCES += \
262 263
	external/wepoll/wepoll.c \
	external/wepoll/wepoll.h
264 265
endif

266 267 268 269 270 271
if USE_TWEETNACL
src_libzmq_la_SOURCES += \
	src/tweetnacl.c \
	src/tweetnacl.h
endif

272
if ON_MINGW
273
src_libzmq_la_LDFLAGS = \
274 275 276 277 278
	-no-undefined \
	-avoid-version \
	-version-info @LTVER@ \
	@LIBZMQ_EXTRA_LDFLAGS@
else
279 280 281 282 283 284 285
if ON_CYGWIN
src_libzmq_la_LDFLAGS = \
	-no-undefined \
	-avoid-version \
	-version-info @LTVER@ \
	@LIBZMQ_EXTRA_LDFLAGS@
else
286
if ON_ANDROID
287
src_libzmq_la_LDFLAGS = \
288 289 290
	-avoid-version \
	-version-info @LTVER@ \
	@LIBZMQ_EXTRA_LDFLAGS@
291
else
292
if ON_LINUX
293
src_libzmq_la_LDFLAGS = \
294 295 296 297
	-version-info @LTVER@ \
	@LIBZMQ_EXTRA_LDFLAGS@ \
	-Wl,--version-script=$(srcdir)/src/libzmq.vers
else
298 299 300 301 302 303
if ON_GNU
src_libzmq_la_LDFLAGS = \
	-version-info @LTVER@ \
	@LIBZMQ_EXTRA_LDFLAGS@ \
	-Wl,--version-script=$(srcdir)/src/libzmq.vers
else
304
src_libzmq_la_LDFLAGS = \
305 306 307 308 309 310
	-version-info @LTVER@ \
	@LIBZMQ_EXTRA_LDFLAGS@ \
	-Wl
endif
endif
endif
311
endif
312
endif
313

314 315 316 317 318
src_libzmq_la_CPPFLAGS = $(CODE_COVERAGE_CPPFLAGS) $(LIBUNWIND_CFLAGS)
src_libzmq_la_CFLAGS = $(CODE_COVERAGE_CFLAGS) $(LIBUNWIND_CFLAGS)
src_libzmq_la_CXXFLAGS = @LIBZMQ_EXTRA_CXXFLAGS@ $(CODE_COVERAGE_CXXFLAGS) \
	$(LIBUNWIND_CFLAGS)
src_libzmq_la_LIBADD = $(CODE_COVERAGE_LDFLAGS) $(LIBUNWIND_LIBS)
319

320 321 322 323 324
if USE_LIBSODIUM
src_libzmq_la_CPPFLAGS += ${sodium_CFLAGS}
src_libzmq_la_LIBADD += ${sodium_LIBS}
endif

325
if HAVE_PGM
326 327
src_libzmq_la_CPPFLAGS += ${pgm_CFLAGS}
src_libzmq_la_LIBADD += ${pgm_LIBS}
328 329
endif

330 331 332 333 334
if HAVE_NORM
src_libzmq_la_CPPFLAGS += ${norm_CFLAGS}
src_libzmq_la_LIBADD += ${norm_LIBS}
endif

335 336 337 338 339
if BUILD_GSSAPI
src_libzmq_la_CPPFLAGS += ${gssapi_krb5_CFLAGS}
src_libzmq_la_LIBADD += ${gssapi_krb5_LIBS}
endif

340
if ENABLE_PERF
341
noinst_PROGRAMS = \
342 343 344 345 346 347
	perf/local_lat \
	perf/remote_lat \
	perf/local_thr \
	perf/remote_thr \
	perf/inproc_lat \
	perf/inproc_thr
348

349 350
perf_local_lat_LDADD = src/libzmq.la
perf_local_lat_SOURCES = perf/local_lat.cpp
351

352 353
perf_remote_lat_LDADD = src/libzmq.la
perf_remote_lat_SOURCES = perf/remote_lat.cpp
354

355 356
perf_local_thr_LDADD = src/libzmq.la
perf_local_thr_SOURCES = perf/local_thr.cpp
357

358 359
perf_remote_thr_LDADD = src/libzmq.la
perf_remote_thr_SOURCES = perf/remote_thr.cpp
360

361 362
perf_inproc_lat_LDADD = src/libzmq.la
perf_inproc_lat_SOURCES = perf/inproc_lat.cpp
363

364 365
perf_inproc_thr_LDADD = src/libzmq.la
perf_inproc_thr_SOURCES = perf/inproc_thr.cpp
366
endif
367

368
if ENABLE_CURVE_KEYGEN
369
bin_PROGRAMS = tools/curve_keygen
370

371 372
tools_curve_keygen_LDADD = src/libzmq.la
tools_curve_keygen_SOURCES = tools/curve_keygen.cpp
373
endif
374

375 376 377
#
# tests
#
378
test_apps = \
379
	tests/test_ancillaries \
380 381 382 383 384 385 386 387 388 389 390
	tests/test_system \
	tests/test_pair_inproc \
	tests/test_pair_tcp \
	tests/test_reqrep_inproc \
	tests/test_reqrep_tcp \
	tests/test_hwm \
	tests/test_hwm_pubsub \
	tests/test_reqrep_device \
	tests/test_sub_forward \
	tests/test_invalid_rep \
	tests/test_msg_flags \
391
	tests/test_msg_ffn \
392 393 394 395 396 397 398 399 400 401 402 403 404 405 406
	tests/test_connect_resolve \
	tests/test_immediate \
	tests/test_last_endpoint \
	tests/test_term_endpoint \
	tests/test_srcfd \
	tests/test_monitor \
	tests/test_router_mandatory \
	tests/test_router_mandatory_hwm \
	tests/test_router_handover \
	tests/test_probe_router \
	tests/test_stream \
	tests/test_stream_empty \
	tests/test_stream_disconnect \
	tests/test_stream_timeout \
	tests/test_disconnect_inproc \
Dylan Cali's avatar
Dylan Cali committed
407 408
	tests/test_unbind_inproc \
	tests/test_unbind_wildcard \
409 410 411 412
	tests/test_ctx_options \
	tests/test_ctx_destroy \
	tests/test_security_null \
	tests/test_security_plain \
413
	tests/test_security_zap \
414 415 416 417 418 419 420 421 422 423 424 425
	tests/test_iov \
	tests/test_spec_req \
	tests/test_spec_rep \
	tests/test_spec_dealer \
	tests/test_spec_router \
	tests/test_spec_pushpull \
	tests/test_req_correlate \
	tests/test_req_relaxed \
	tests/test_conflate \
	tests/test_inproc_connect \
	tests/test_issue_566 \
	tests/test_proxy \
426
	tests/test_proxy_single_socket \
427
	tests/test_proxy_terminate \
428
	tests/test_getsockopt_memset \
429
	tests/test_setsockopt \
430 431 432 433 434
	tests/test_diffserv \
	tests/test_connect_rid \
	tests/test_bind_src_address \
	tests/test_metadata \
	tests/test_capabilities \
435
	tests/test_xpub_nodrop \
somdoron's avatar
somdoron committed
436
	tests/test_xpub_manual \
437
	tests/test_xpub_welcome_msg \
438
	tests/test_xpub_verbose \
439
	tests/test_atomics \
440
	tests/test_sockopt_hwm \
441
	tests/test_heartbeats \
442
	tests/test_stream_exceeds_buffer \
443 444
	tests/test_pub_invert_matching \
	tests/test_base85 \
445
	tests/test_bind_after_connect_tcp \
446
	tests/test_sodium \
447
	tests/test_reconnect_ivl \
448
	tests/test_mock_pub_sub \
449
	tests/test_socket_null
450

451
UNITY_CPPFLAGS = -I$(top_srcdir)/external/unity -DUNITY_USE_COMMAND_LINE_ARGS -DUNITY_EXCLUDE_FLOAT
452 453
UNITY_LIBS = $(top_builddir)/external/unity/libunity.a
noinst_LIBRARIES = external/unity/libunity.a
454 455 456
external_unity_libunity_a_SOURCES = external/unity/unity.c \
	external/unity/unity.h \
	external/unity/unity_internals.h
457

458 459 460
tests_test_ancillaries_SOURCES = tests/test_ancillaries.cpp
tests_test_ancillaries_LDADD = src/libzmq.la

461 462 463 464
tests_test_system_SOURCES = tests/test_system.cpp
tests_test_system_LDADD = src/libzmq.la

tests_test_pair_inproc_SOURCES = \
465 466
	tests/test_pair_inproc.cpp \
	tests/testutil.hpp
467
tests_test_pair_inproc_LDADD = src/libzmq.la
468

469
tests_test_pair_tcp_SOURCES = \
470 471
	tests/test_pair_tcp.cpp \
	tests/testutil.hpp
472
tests_test_pair_tcp_LDADD = src/libzmq.la
473

474
tests_test_reqrep_inproc_SOURCES = \
475 476
	tests/test_reqrep_inproc.cpp \
	tests/testutil.hpp
477
tests_test_reqrep_inproc_LDADD = src/libzmq.la
478

479
tests_test_reqrep_tcp_SOURCES = \
480 481
	tests/test_reqrep_tcp.cpp \
	tests/testutil.hpp
482 483
tests_test_reqrep_tcp_LDADD = src/libzmq.la ${UNITY_LIBS}
tests_test_reqrep_tcp_CPPFLAGS = ${UNITY_CPPFLAGS}
484

485 486 487
tests_test_hwm_SOURCES = tests/test_hwm.cpp tests/testutil_unity.hpp
tests_test_hwm_LDADD = src/libzmq.la ${UNITY_LIBS}
tests_test_hwm_CPPFLAGS = ${UNITY_CPPFLAGS}
488

489
tests_test_hwm_pubsub_SOURCES = tests/test_hwm_pubsub.cpp
490 491
tests_test_hwm_pubsub_LDADD = src/libzmq.la ${UNITY_LIBS}
tests_test_hwm_pubsub_CPPFLAGS = ${UNITY_CPPFLAGS}
492

493 494
tests_test_reqrep_device_SOURCES = tests/test_reqrep_device.cpp
tests_test_reqrep_device_LDADD = src/libzmq.la
495

496 497
tests_test_sub_forward_SOURCES = tests/test_sub_forward.cpp
tests_test_sub_forward_LDADD = src/libzmq.la
498

499 500
tests_test_invalid_rep_SOURCES = tests/test_invalid_rep.cpp
tests_test_invalid_rep_LDADD = src/libzmq.la
501

502 503
tests_test_msg_flags_SOURCES = tests/test_msg_flags.cpp
tests_test_msg_flags_LDADD = src/libzmq.la
504

505 506 507
tests_test_msg_ffn_SOURCES = tests/test_msg_ffn.cpp
tests_test_msg_ffn_LDADD = src/libzmq.la

508
tests_test_connect_resolve_SOURCES = tests/test_connect_resolve.cpp
509 510
tests_test_connect_resolve_LDADD = src/libzmq.la ${UNITY_LIBS}
tests_test_connect_resolve_CPPFLAGS = ${UNITY_CPPFLAGS}
511

512
tests_test_immediate_SOURCES = tests/test_immediate.cpp
513 514
tests_test_immediate_LDADD = src/libzmq.la ${UNITY_LIBS}
tests_test_immediate_CPPFLAGS = ${UNITY_CPPFLAGS}
515

516
tests_test_last_endpoint_SOURCES = tests/test_last_endpoint.cpp
517 518
tests_test_last_endpoint_LDADD = src/libzmq.la ${UNITY_LIBS}
tests_test_last_endpoint_CPPFLAGS = ${UNITY_CPPFLAGS}
519

520 521
tests_test_term_endpoint_SOURCES = tests/test_term_endpoint.cpp
tests_test_term_endpoint_LDADD = src/libzmq.la
522

523 524
tests_test_srcfd_SOURCES = tests/test_srcfd.cpp
tests_test_srcfd_LDADD = src/libzmq.la
525

526 527
tests_test_monitor_SOURCES = tests/test_monitor.cpp
tests_test_monitor_LDADD = src/libzmq.la
528

529 530 531
tests_test_router_mandatory_SOURCES = tests/test_router_mandatory.cpp tests/testutil_unity.hpp
tests_test_router_mandatory_LDADD = src/libzmq.la ${UNITY_LIBS}
tests_test_router_mandatory_CPPFLAGS = ${UNITY_CPPFLAGS}
532

533 534
tests_test_router_mandatory_hwm_SOURCES = tests/test_router_mandatory_hwm.cpp
tests_test_router_mandatory_hwm_LDADD = src/libzmq.la
535

536
tests_test_router_handover_SOURCES = tests/test_router_handover.cpp
537 538
tests_test_router_handover_LDADD = src/libzmq.la ${UNITY_LIBS}
tests_test_router_handover_CPPFLAGS = ${UNITY_CPPFLAGS}
539

540
tests_test_probe_router_SOURCES = tests/test_probe_router.cpp
541 542
tests_test_probe_router_LDADD = src/libzmq.la ${UNITY_LIBS}
tests_test_probe_router_CPPFLAGS = ${UNITY_CPPFLAGS}
543

544 545
tests_test_stream_SOURCES = tests/test_stream.cpp
tests_test_stream_LDADD = src/libzmq.la
546

547 548
tests_test_stream_empty_SOURCES = tests/test_stream_empty.cpp
tests_test_stream_empty_LDADD = src/libzmq.la
549

550 551
tests_test_stream_timeout_SOURCES = tests/test_stream_timeout.cpp
tests_test_stream_timeout_LDADD = src/libzmq.la
552

553 554
tests_test_stream_disconnect_SOURCES = tests/test_stream_disconnect.cpp
tests_test_stream_disconnect_LDADD = src/libzmq.la
555

556 557
tests_test_disconnect_inproc_SOURCES = tests/test_disconnect_inproc.cpp
tests_test_disconnect_inproc_LDADD = src/libzmq.la
558

Dylan Cali's avatar
Dylan Cali committed
559 560 561 562 563 564
tests_test_unbind_inproc_SOURCES = tests/test_unbind_inproc.cpp
tests_test_unbind_inproc_LDADD = src/libzmq.la

tests_test_unbind_wildcard_SOURCES = tests/test_unbind_wildcard.cpp
tests_test_unbind_wildcard_LDADD = src/libzmq.la

565 566
tests_test_ctx_options_SOURCES = tests/test_ctx_options.cpp
tests_test_ctx_options_LDADD = src/libzmq.la
567

568 569
tests_test_iov_SOURCES = tests/test_iov.cpp
tests_test_iov_LDADD = src/libzmq.la
570

571
tests_test_ctx_destroy_SOURCES = tests/test_ctx_destroy.cpp
572 573
tests_test_ctx_destroy_LDADD = src/libzmq.la ${UNITY_LIBS}
tests_test_ctx_destroy_CPPFLAGS = ${UNITY_CPPFLAGS}
574

575 576
tests_test_security_null_SOURCES = tests/test_security_null.cpp
tests_test_security_null_LDADD = src/libzmq.la
577

578 579
tests_test_security_plain_SOURCES = tests/test_security_plain.cpp
tests_test_security_plain_LDADD = src/libzmq.la
580

581 582 583 584
tests_test_security_zap_SOURCES = \
	tests/test_security_zap.cpp \
	tests/testutil_security.hpp \
	tests/testutil.hpp
585 586
tests_test_security_zap_LDADD = src/libzmq.la

587 588
tests_test_spec_req_SOURCES = tests/test_spec_req.cpp
tests_test_spec_req_LDADD = src/libzmq.la
589

590 591
tests_test_spec_rep_SOURCES = tests/test_spec_rep.cpp
tests_test_spec_rep_LDADD = src/libzmq.la
592

593
tests_test_spec_dealer_SOURCES = tests/test_spec_dealer.cpp
594 595
tests_test_spec_dealer_LDADD = src/libzmq.la ${UNITY_LIBS}
tests_test_spec_dealer_CPPFLAGS = ${UNITY_CPPFLAGS}
596

597 598
tests_test_spec_router_SOURCES = tests/test_spec_router.cpp
tests_test_spec_router_LDADD = src/libzmq.la
599

600 601
tests_test_spec_pushpull_SOURCES = tests/test_spec_pushpull.cpp
tests_test_spec_pushpull_LDADD = src/libzmq.la
602

603 604
tests_test_req_correlate_SOURCES = tests/test_req_correlate.cpp
tests_test_req_correlate_LDADD = src/libzmq.la
605

606 607
tests_test_req_relaxed_SOURCES = tests/test_req_relaxed.cpp
tests_test_req_relaxed_LDADD = src/libzmq.la
608

609
tests_test_conflate_SOURCES = tests/test_conflate.cpp
610 611
tests_test_conflate_LDADD = src/libzmq.la ${UNITY_LIBS}
tests_test_conflate_CPPFLAGS = ${UNITY_CPPFLAGS}
612

613
tests_test_inproc_connect_SOURCES = tests/test_inproc_connect.cpp
614 615
tests_test_inproc_connect_LDADD = src/libzmq.la ${UNITY_LIBS}
tests_test_inproc_connect_CPPFLAGS = ${UNITY_CPPFLAGS}
616

617 618
tests_test_issue_566_SOURCES = tests/test_issue_566.cpp
tests_test_issue_566_LDADD = src/libzmq.la
619

620 621
tests_test_proxy_SOURCES = tests/test_proxy.cpp
tests_test_proxy_LDADD = src/libzmq.la
622

623 624 625
tests_test_proxy_single_socket_SOURCES = tests/test_proxy_single_socket.cpp
tests_test_proxy_single_socket_LDADD = src/libzmq.la

626 627 628
tests_test_proxy_terminate_SOURCES = tests/test_proxy_terminate.cpp
tests_test_proxy_terminate_LDADD = src/libzmq.la

629
tests_test_getsockopt_memset_SOURCES = tests/test_getsockopt_memset.cpp
630
tests_test_getsockopt_memset_LDADD = src/libzmq.la
631

632 633
tests_test_many_sockets_SOURCES = tests/test_many_sockets.cpp
tests_test_many_sockets_LDADD = src/libzmq.la
634

635 636
tests_test_diffserv_SOURCES = tests/test_diffserv.cpp
tests_test_diffserv_LDADD = src/libzmq.la
637

638 639
tests_test_connect_rid_SOURCES = tests/test_connect_rid.cpp
tests_test_connect_rid_LDADD = src/libzmq.la
640

641
tests_test_bind_src_address_SOURCES = tests/test_bind_src_address.cpp
642 643
tests_test_bind_src_address_LDADD = src/libzmq.la ${UNITY_LIBS}
tests_test_bind_src_address_CPPFLAGS = ${UNITY_CPPFLAGS}
644

645 646
tests_test_metadata_SOURCES = tests/test_metadata.cpp
tests_test_metadata_LDADD = src/libzmq.la
647

648 649
tests_test_capabilities_SOURCES = tests/test_capabilities.cpp
tests_test_capabilities_LDADD = src/libzmq.la
650

651
tests_test_xpub_nodrop_SOURCES = tests/test_xpub_nodrop.cpp
652 653
tests_test_xpub_nodrop_LDADD = src/libzmq.la ${UNITY_LIBS}
tests_test_xpub_nodrop_CPPFLAGS = ${UNITY_CPPFLAGS}
654

655 656 657
tests_test_xpub_manual_SOURCES = tests/test_xpub_manual.cpp
tests_test_xpub_manual_LDADD = src/libzmq.la

somdoron's avatar
somdoron committed
658 659 660
tests_test_xpub_welcome_msg_SOURCES = tests/test_xpub_welcome_msg.cpp
tests_test_xpub_welcome_msg_LDADD = src/libzmq.la

661 662 663 664
tests_test_xpub_verbose_SOURCES = tests/test_xpub_verbose.cpp
tests_test_xpub_verbose_LDADD = src/libzmq.la ${UNITY_LIBS}
tests_test_xpub_verbose_CPPFLAGS = ${UNITY_CPPFLAGS}

665 666 667
tests_test_atomics_SOURCES = tests/test_atomics.cpp
tests_test_atomics_LDADD = src/libzmq.la

668
tests_test_sockopt_hwm_SOURCES = tests/test_sockopt_hwm.cpp
669 670
tests_test_sockopt_hwm_LDADD = src/libzmq.la ${UNITY_LIBS}
tests_test_sockopt_hwm_CPPFLAGS = ${UNITY_CPPFLAGS}
671

672 673 674
tests_test_setsockopt_SOURCES = tests/test_setsockopt.cpp
tests_test_setsockopt_LDADD = src/libzmq.la

Jonathan Reams's avatar
Jonathan Reams committed
675
tests_test_heartbeats_SOURCES = tests/test_heartbeats.cpp
676 677
tests_test_heartbeats_LDADD = src/libzmq.la ${UNITY_LIBS}
tests_test_heartbeats_CPPFLAGS = ${UNITY_CPPFLAGS}
somdoron's avatar
somdoron committed
678

679 680 681
tests_test_stream_exceeds_buffer_SOURCES = tests/test_stream_exceeds_buffer.cpp
tests_test_stream_exceeds_buffer_LDADD = src/libzmq.la

682
tests_test_pub_invert_matching_SOURCES = tests/test_pub_invert_matching.cpp
683 684
tests_test_pub_invert_matching_LDADD = src/libzmq.la ${UNITY_LIBS}
tests_test_pub_invert_matching_CPPFLAGS = ${UNITY_CPPFLAGS}
685

686
tests_test_bind_after_connect_tcp_SOURCES = tests/test_bind_after_connect_tcp.cpp
687 688
tests_test_bind_after_connect_tcp_LDADD = src/libzmq.la ${UNITY_LIBS}
tests_test_bind_after_connect_tcp_CPPFLAGS = ${UNITY_CPPFLAGS}
689

690 691 692 693 694 695
tests_test_base85_SOURCES = tests/test_base85.cpp
tests_test_base85_LDADD = src/libzmq.la

tests_test_sodium_SOURCES = tests/test_sodium.cpp
tests_test_sodium_LDADD = src/libzmq.la

696
tests_test_socket_null_SOURCES = tests/test_socket_null.cpp
697 698
tests_test_socket_null_LDADD = src/libzmq.la ${UNITY_LIBS}
tests_test_socket_null_CPPFLAGS = ${UNITY_CPPFLAGS}
699

700
tests_test_reconnect_ivl_SOURCES = tests/test_reconnect_ivl.cpp
701 702
tests_test_reconnect_ivl_LDADD = src/libzmq.la ${UNITY_LIBS}
tests_test_reconnect_ivl_CPPFLAGS = ${UNITY_CPPFLAGS}
703

704 705 706 707
tests_test_mock_pub_sub_SOURCES = tests/test_mock_pub_sub.cpp
tests_test_mock_pub_sub_LDADD = src/libzmq.la ${UNITY_LIBS}
tests_test_mock_pub_sub_CPPFLAGS = ${UNITY_CPPFLAGS}

708 709 710 711 712 713 714
if HAVE_CURVE

test_apps += \
	tests/test_security_curve

tests_test_security_curve_SOURCES = \
	tests/test_security_curve.cpp \
715
	tests/testutil_security.hpp \
716 717 718 719 720 721 722 723 724 725 726 727 728 729 730
	tests/testutil.hpp \
	src/curve_client_tools.hpp \
	src/clock.hpp \
	src/clock.cpp \
	src/random.hpp \
	src/random.cpp \
	src/err.hpp \
	src/err.cpp

if USE_TWEETNACL
tests_test_security_curve_SOURCES += \
	src/tweetnacl.c
endif

tests_test_security_curve_LDADD = \
731
	src/libzmq.la ${UNITY_LIBS} $(LIBUNWIND_LIBS)
732
tests_test_security_curve_CPPFLAGS = \
733
	${UNITY_CPPFLAGS} \
734
	${LIBUNWIND_CFLAGS}
735 736

if USE_LIBSODIUM
737 738
tests_test_security_curve_CPPFLAGS += \
	${sodium_CFLAGS}
739 740 741 742 743 744
tests_test_security_curve_LDADD += \
	${sodium_LIBS}
endif

endif

745
if !ON_MINGW
746
if !ON_CYGWIN
747
test_apps += \
748
	tests/test_shutdown_stress \
749
	tests/test_ipc_wildcard \
750
	tests/test_pair_ipc \
751
	tests/test_rebind_ipc \
752
	tests/test_reqrep_ipc \
753 754
	tests/test_use_fd_ipc \
	tests/test_use_fd_tcp \
755
	tests/test_zmq_poll_fd \
756 757
	tests/test_timeo \
	tests/test_filter_ipc
758

759 760
tests_test_shutdown_stress_SOURCES = tests/test_shutdown_stress.cpp
tests_test_shutdown_stress_LDADD = src/libzmq.la
761

762 763 764
tests_test_ipc_wildcard_SOURCES = tests/test_ipc_wildcard.cpp
tests_test_ipc_wildcard_LDADD = src/libzmq.la

765
tests_test_pair_ipc_SOURCES = \
766 767
	tests/test_pair_ipc.cpp \
	tests/testutil.hpp
768
tests_test_pair_ipc_LDADD = src/libzmq.la
769

770 771 772
tests_test_rebind_ipc_SOURCES = tests/test_rebind_ipc.cpp
tests_test_rebind_ipc_LDADD = src/libzmq.la

773
tests_test_reqrep_ipc_SOURCES = \
774 775
	tests/test_reqrep_ipc.cpp \
	tests/testutil.hpp
776
tests_test_reqrep_ipc_LDADD = src/libzmq.la
777

778 779
tests_test_timeo_SOURCES = tests/test_timeo.cpp
tests_test_timeo_LDADD = src/libzmq.la
780

781 782
tests_test_filter_ipc_SOURCES = tests/test_filter_ipc.cpp
tests_test_filter_ipc_LDADD = src/libzmq.la
783

784 785
tests_test_use_fd_ipc_SOURCES = \
	tests/test_use_fd_ipc.cpp \
786
	tests/testutil.hpp
787
tests_test_use_fd_ipc_LDADD = src/libzmq.la
788

789 790
tests_test_use_fd_tcp_SOURCES = \
	tests/test_use_fd_tcp.cpp \
791
	tests/testutil.hpp
792
tests_test_use_fd_tcp_LDADD = src/libzmq.la
793

794 795 796
tests_test_zmq_poll_fd_SOURCES = tests/test_zmq_poll_fd.cpp
tests_test_zmq_poll_fd_LDADD = src/libzmq.la

797
if HAVE_FORK
798
if !VALGRIND_ENABLED
799
test_apps += tests/test_fork
800

801 802
tests_test_fork_SOURCES = tests/test_fork.cpp
tests_test_fork_LDADD = src/libzmq.la
803

804
endif
805
endif
806 807 808 809 810
endif
endif

if BUILD_TIPC
test_apps += \
811 812 813 814 815 816 817
	tests/test_connect_delay_tipc \
	tests/test_pair_tipc \
	tests/test_reqrep_device_tipc \
	tests/test_reqrep_tipc \
	tests/test_router_mandatory_tipc \
	tests/test_shutdown_stress_tipc \
	tests/test_sub_forward_tipc \
818 819
	tests/test_term_endpoint_tipc \
	tests/test_address_tipc
820

821 822
tests_test_connect_delay_tipc_SOURCES = tests/test_connect_delay_tipc.cpp
tests_test_connect_delay_tipc_LDADD = src/libzmq.la
823

824 825
tests_test_pair_tipc_SOURCES = tests/test_pair_tipc.cpp
tests_test_pair_tipc_LDADD = src/libzmq.la
826

827 828
tests_test_reqrep_device_tipc_SOURCES = tests/test_reqrep_device_tipc.cpp
tests_test_reqrep_device_tipc_LDADD = src/libzmq.la
829

830 831
tests_test_reqrep_tipc_SOURCES = tests/test_reqrep_tipc.cpp
tests_test_reqrep_tipc_LDADD = src/libzmq.la
832

833 834
tests_test_router_mandatory_tipc_SOURCES = tests/test_router_mandatory_tipc.cpp
tests_test_router_mandatory_tipc_LDADD = src/libzmq.la
835

836 837
tests_test_shutdown_stress_tipc_SOURCES = tests/test_shutdown_stress_tipc.cpp
tests_test_shutdown_stress_tipc_LDADD = src/libzmq.la
838

839 840
tests_test_sub_forward_tipc_SOURCES = tests/test_sub_forward_tipc.cpp
tests_test_sub_forward_tipc_LDADD = src/libzmq.la
841

842 843
tests_test_term_endpoint_tipc_SOURCES = tests/test_term_endpoint_tipc.cpp
tests_test_term_endpoint_tipc_LDADD = src/libzmq.la
844

845 846 847 848
tests_test_address_tipc_SOURCES = tests/test_address_tipc.cpp
tests_test_address_tipc_LDADD = src/libzmq.la ${UNITY_LIBS}
tests_test_address_tipc_CPPFLAGS = ${UNITY_CPPFLAGS}

849 850
endif

851 852 853 854 855 856 857 858
if BUILD_GSSAPI
test_apps += tests/test_security_gssapi

tests_test_security_gssapi_SOURCES = tests/test_security_gssapi.cpp
tests_test_security_gssapi_LDADD = src/libzmq.la

endif

859
if ON_LINUX
860 861
test_apps += tests/test_abstract_ipc \
		tests/test_many_sockets
862

863 864
tests_test_abstract_ipc_SOURCES = tests/test_abstract_ipc.cpp
tests_test_abstract_ipc_LDADD = src/libzmq.la
865

866 867
endif

Ilya Kulakov's avatar
Ilya Kulakov committed
868 869 870 871
if HAVE_VMCI
test_apps += test_pair_vmci test_reqrep_vmci

test_pair_vmci_SOURCES = tests/test_pair_vmci.cpp
872
test_pair_vmci_LDADD = src/libzmq.la
Ilya Kulakov's avatar
Ilya Kulakov committed
873 874 875 876
test_pair_vmci_LDFLAGS = @LIBZMQ_VMCI_LDFLAGS@
test_pair_vmci_CXXFLAGS = @LIBZMQ_VMCI_CXXFLAGS@

test_reqrep_vmci_SOURCES = tests/test_reqrep_vmci.cpp
877
test_reqrep_vmci_LDADD = src/libzmq.la
Ilya Kulakov's avatar
Ilya Kulakov committed
878 879 880 881 882
test_reqrep_vmci_LDFLAGS = @LIBZMQ_VMCI_LDFLAGS@
test_reqrep_vmci_CXXFLAGS = @LIBZMQ_VMCI_CXXFLAGS@

endif

883
if ENABLE_DRAFTS
884 885
test_apps += tests/test_poller \
	tests/test_client_server \
886
	tests/test_thread_safe \
887 888
	tests/test_timers \
	tests/test_radio_dish \
Bitiquinho's avatar
Bitiquinho committed
889
	tests/test_scatter_gather \
890 891
	tests/test_dgram \
	tests/test_app_meta
892

893
tests_test_poller_SOURCES = tests/test_poller.cpp
894 895
tests_test_poller_LDADD = src/libzmq.la ${UNITY_LIBS}
tests_test_poller_CPPFLAGS = ${UNITY_CPPFLAGS}
896

897
tests_test_client_server_SOURCES = tests/test_client_server.cpp
898 899
tests_test_client_server_LDADD = src/libzmq.la ${UNITY_LIBS}
tests_test_client_server_CPPFLAGS = ${UNITY_CPPFLAGS}
900 901

tests_test_thread_safe_SOURCES = tests/test_thread_safe.cpp
902 903
tests_test_thread_safe_LDADD = src/libzmq.la ${UNITY_LIBS}
tests_test_thread_safe_CPPFLAGS = ${UNITY_CPPFLAGS}
904 905 906

tests_test_timers_SOURCES = tests/test_timers.cpp
tests_test_timers_LDADD = src/libzmq.la
907 908

tests_test_radio_dish_SOURCES = tests/test_radio_dish.cpp
909 910
tests_test_radio_dish_LDADD = src/libzmq.la ${UNITY_LIBS}
tests_test_radio_dish_CPPFLAGS = ${UNITY_CPPFLAGS}
911

912 913
tests_test_scatter_gather_SOURCES = tests/test_scatter_gather.cpp
tests_test_scatter_gather_LDADD = src/libzmq.la
Bitiquinho's avatar
Bitiquinho committed
914 915 916

tests_test_dgram_SOURCES = tests/test_dgram.cpp
tests_test_dgram_LDADD = src/libzmq.la
917 918 919 920

tests_test_app_meta_SOURCES = tests/test_app_meta.cpp
tests_test_app_meta_LDADD = src/libzmq.la ${UNITY_LIBS}
tests_test_app_meta_CPPFLAGS = ${UNITY_CPPFLAGS}
921 922
endif

923 924 925 926
if ENABLE_STATIC
# unit tests - these include individual source files and test the internal functions
test_apps += \
	unittests/unittest_poller \
927
	unittests/unittest_ypipe \
928
	unittests/unittest_mtrie \
929 930
	unittests/unittest_ip_resolver \
	unittests/unittest_udp_address
931 932

unittests_unittest_poller_SOURCES = unittests/unittest_poller.cpp
933 934
unittests_unittest_poller_CPPFLAGS = -I$(top_srcdir)/src ${UNITY_CPPFLAGS} $(CODE_COVERAGE_CPPFLAGS)
unittests_unittest_poller_CXXFLAGS = $(CODE_COVERAGE_CXXFLAGS)
935 936
unittests_unittest_poller_LDADD = $(top_builddir)/src/.libs/libzmq.a \
	${src_libzmq_la_LIBADD} \
937 938
	${UNITY_LIBS} \
	$(CODE_COVERAGE_LDFLAGS)
939 940

unittests_unittest_ypipe_SOURCES = unittests/unittest_ypipe.cpp
941 942
unittests_unittest_ypipe_CPPFLAGS = -I$(top_srcdir)/src ${UNITY_CPPFLAGS} $(CODE_COVERAGE_CPPFLAGS)
unittests_unittest_ypipe_CXXFLAGS = $(CODE_COVERAGE_CXXFLAGS)
943 944
unittests_unittest_ypipe_LDADD = $(top_builddir)/src/.libs/libzmq.a \
	${src_libzmq_la_LIBADD} \
945 946
	${UNITY_LIBS} \
	$(CODE_COVERAGE_LDFLAGS)
947 948

unittests_unittest_mtrie_SOURCES = unittests/unittest_mtrie.cpp
949 950
unittests_unittest_mtrie_CPPFLAGS = -I$(top_srcdir)/src ${UNITY_CPPFLAGS} $(CODE_COVERAGE_CPPFLAGS)
unittests_unittest_mtrie_CXXFLAGS = $(CODE_COVERAGE_CXXFLAGS)
951 952
unittests_unittest_mtrie_LDADD = $(top_builddir)/src/.libs/libzmq.a \
	${src_libzmq_la_LIBADD} \
953 954
	${UNITY_LIBS} \
	$(CODE_COVERAGE_LDFLAGS)
955

956
unittests_unittest_ip_resolver_SOURCES = unittests/unittest_ip_resolver.cpp unittests/unittest_resolver_common.hpp
957 958 959 960 961 962
unittests_unittest_ip_resolver_CPPFLAGS = -I$(top_srcdir)/src ${UNITY_CPPFLAGS} $(CODE_COVERAGE_CPPFLAGS)
unittests_unittest_ip_resolver_CXXFLAGS = $(CODE_COVERAGE_CXXFLAGS)
unittests_unittest_ip_resolver_LDADD = $(top_builddir)/src/.libs/libzmq.a \
	${src_libzmq_la_LIBADD} \
	${UNITY_LIBS} \
	$(CODE_COVERAGE_LDFLAGS)
963

964
unittests_unittest_udp_address_SOURCES = unittests/unittest_udp_address.cpp unittests/unittest_resolver_common.hpp
965 966 967 968 969 970
unittests_unittest_udp_address_CPPFLAGS = -I$(top_srcdir)/src ${UNITY_CPPFLAGS} $(CODE_COVERAGE_CPPFLAGS)
unittests_unittest_udp_address_CXXFLAGS = $(CODE_COVERAGE_CXXFLAGS)
unittests_unittest_udp_address_LDADD = $(top_builddir)/src/.libs/libzmq.a \
	${src_libzmq_la_LIBADD} \
	${UNITY_LIBS} \
	$(CODE_COVERAGE_LDFLAGS)
971 972
endif

973 974 975 976
check_PROGRAMS = ${test_apps}

#  Run the test cases
TESTS = $(test_apps)
977
XFAIL_TESTS =
978 979

if !ON_LINUX
980
XFAIL_TESTS += tests/test_abstract_ipc
981
endif
982

983 984 985 986 987
if ON_GNU
XFAIL_TESTS += test_ipc_wildcard \
		test_term_endpoint
endif

988
EXTRA_DIST = \
989 990
	external/unity/license.txt \
	external/unity/version.txt \
991 992 993
	external/wepoll/license.txt \
	external/wepoll/version.txt \
	external/wepoll/README.md \
994
	CMakeLists.txt \
995 996
	autogen.sh	\
	version.sh	\
997
	src/libzmq.pc.cmake.in \
998
	ci_build.sh \
999
	src/libzmq.vers \
1000 1001
	src/version.rc.in \
	tests/CMakeLists.txt \
1002
	unittests/CMakeLists.txt \
1003
	tools/curve_keygen.cpp
1004

1005
MAINTAINERCLEANFILES = \
1006 1007 1008
	$(srcdir)/aclocal.m4 \
	$(srcdir)/autom4te.cache \
	$(srcdir)/configure \
1009
	`find "$(srcdir)" -type f -name Makefile.in -print`
malosek's avatar
malosek committed
1010

1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061
if WITH_CLANG_FORMAT
ALL_SOURCE_FILES = $(wildcard \
	$(top_srcdir)/src/*.c \
	$(top_srcdir)/src/*.cc \
	$(top_srcdir)/src/*.cpp \
	$(top_srcdir)/src/*.h \
	$(top_srcdir)/src/*.hpp \
	$(top_srcdir)/tests/*.c \
	$(top_srcdir)/tests/*.cc \
	$(top_srcdir)/tests/*.cpp \
	$(top_srcdir)/tests/*.h \
	$(top_srcdir)/tests/*.hpp \
	$(top_srcdir)/perf/*.c \
	$(top_srcdir)/perf/*.cc \
	$(top_srcdir)/perf/*.cpp \
	$(top_srcdir)/perf/*.h \
	$(top_srcdir)/perf/*.hpp \
	$(top_srcdir)/tools/*.c \
	$(top_srcdir)/tools/*.cc \
	$(top_srcdir)/tools/*.cpp \
	$(top_srcdir)/tools/*.h \
	$(top_srcdir)/tools/*.hpp \
	$(top_srcdir)/include/*.h \
 )

# Check if any sources need to be fixed, report the filenames and an error code
clang-format-check: $(ALL_SOURCE_FILES)
	@FAILED=0 ; IFS=";" ; IDS="`printf '\n\b'`" ; export IFS IDS; \
	 for FILE in $(ALL_SOURCE_FILES) ; do \
		test -s $$FILE || continue ; \
		$(CLANG_FORMAT) -style=file -output-replacements-xml "$$FILE" | grep "<replacement " >/dev/null && \
		{ echo "$$FILE is not correctly formatted" >&2 ; FAILED=1; } ; \
	 done; \
	 if test "$$FAILED" != 0 ; then \
		exit 1 ; \
	 fi

# Change source formatting
clang-format: $(ALL_SOURCE_FILES)
	$(CLANG_FORMAT) -style=file -i $(ALL_SOURCE_FILES)

# Change source formatting AND report the diff
clang-format-diff: clang-format
	git diff $(ALL_SOURCE_FILES)

else
clang-format clang-format-check clang-format-diff:
	@echo "Install the clang-format program, reconfigure and re-run this request"
	@exit 1
endif

1062 1063
@CODE_COVERAGE_RULES@

1064
dist-hook:
1065
	-rm $(distdir)/src/platform.hpp
1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077
	@if test -d "$(srcdir)/.git"; \
	then \
		echo Creating ChangeLog && \
		( cd "$(top_srcdir)" && \
		  echo '# Generated by Makefile. Do not edit.'; echo; \
		  $(top_srcdir)/config/missing --run git log --stat ) > ChangeLog.tmp \
		  && mv -f ChangeLog.tmp $(top_distdir)/ChangeLog \
		  || ( rm -f ChangeLog.tmp ; \
		       echo Failed to generate ChangeLog >&2 ); \
	else \
		echo A git clone is required to generate a ChangeLog >&2; \
	fi
1078

1079 1080
maintainer-clean-local:
	-rm -rf $(top_srcdir)/config
1081 1082

@VALGRIND_CHECK_RULES@
1083 1084

VALGRIND_SUPPRESSIONS_FILES = builds/valgrind/valgrind.supp