Makefile.am 47 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456
  1. ACLOCAL_AMFLAGS = -I config
  2. SUBDIRS = doc
  3. DIST_SUBDIRS = doc builds builds/deprecated-msvc
  4. pkgconfig_DATA = src/libzmq.pc
  5. AM_CPPFLAGS = \
  6. -I$(top_builddir)/include \
  7. -I$(top_srcdir)/include
  8. #
  9. # libraries/binaries
  10. #
  11. lib_LTLIBRARIES = src/libzmq.la
  12. include_HEADERS = \
  13. include/zmq.h \
  14. include/zmq_utils.h
  15. src_libzmq_la_SOURCES = \
  16. src/address.cpp \
  17. src/address.hpp \
  18. src/array.hpp \
  19. src/atomic_counter.hpp \
  20. src/atomic_ptr.hpp \
  21. src/blob.hpp \
  22. src/channel.cpp \
  23. src/channel.hpp \
  24. src/client.cpp \
  25. src/client.hpp \
  26. src/clock.cpp \
  27. src/clock.hpp \
  28. src/command.hpp \
  29. src/condition_variable.hpp \
  30. src/config.hpp \
  31. src/ctx.cpp \
  32. src/ctx.hpp \
  33. src/curve_client.cpp \
  34. src/curve_client.hpp \
  35. src/curve_client_tools.hpp \
  36. src/curve_mechanism_base.cpp \
  37. src/curve_mechanism_base.hpp \
  38. src/curve_server.cpp \
  39. src/curve_server.hpp \
  40. src/dbuffer.hpp \
  41. src/dealer.cpp \
  42. src/dealer.hpp \
  43. src/decoder.hpp \
  44. src/devpoll.cpp \
  45. src/devpoll.hpp \
  46. src/dgram.cpp \
  47. src/dgram.hpp \
  48. src/dish.cpp \
  49. src/dish.hpp \
  50. src/dist.cpp \
  51. src/dist.hpp \
  52. src/encoder.hpp \
  53. src/endpoint.hpp \
  54. src/endpoint.cpp \
  55. src/epoll.cpp \
  56. src/epoll.hpp \
  57. src/err.cpp \
  58. src/err.hpp \
  59. src/fd.hpp \
  60. src/fq.cpp \
  61. src/fq.hpp \
  62. src/gather.cpp \
  63. src/gather.hpp \
  64. src/generic_mtrie.hpp \
  65. src/generic_mtrie_impl.hpp \
  66. src/gssapi_mechanism_base.cpp \
  67. src/gssapi_mechanism_base.hpp \
  68. src/gssapi_client.cpp \
  69. src/gssapi_client.hpp \
  70. src/gssapi_server.cpp \
  71. src/gssapi_server.hpp \
  72. src/i_encoder.hpp \
  73. src/i_engine.hpp \
  74. src/i_decoder.hpp \
  75. src/i_mailbox.hpp \
  76. src/i_poll_events.hpp \
  77. src/io_object.cpp \
  78. src/io_object.hpp \
  79. src/io_thread.cpp \
  80. src/io_thread.hpp \
  81. src/ip.cpp \
  82. src/ip.hpp \
  83. src/ip_resolver.cpp \
  84. src/ip_resolver.hpp \
  85. src/ipc_address.cpp \
  86. src/ipc_address.hpp \
  87. src/ipc_connecter.cpp \
  88. src/ipc_connecter.hpp \
  89. src/ipc_listener.cpp \
  90. src/ipc_listener.hpp \
  91. src/kqueue.cpp \
  92. src/kqueue.hpp \
  93. src/lb.cpp \
  94. src/lb.hpp \
  95. src/likely.hpp \
  96. src/macros.hpp \
  97. src/mailbox.cpp \
  98. src/mailbox.hpp \
  99. src/mailbox_safe.cpp \
  100. src/mailbox_safe.hpp \
  101. src/mechanism.cpp \
  102. src/mechanism.hpp \
  103. src/mechanism_base.cpp \
  104. src/mechanism_base.hpp \
  105. src/metadata.cpp \
  106. src/metadata.hpp \
  107. src/msg.cpp \
  108. src/msg.hpp \
  109. src/mtrie.cpp \
  110. src/mtrie.hpp \
  111. src/mutex.hpp \
  112. src/norm_engine.cpp \
  113. src/norm_engine.hpp \
  114. src/null_mechanism.cpp \
  115. src/null_mechanism.hpp \
  116. src/object.cpp \
  117. src/object.hpp \
  118. src/options.cpp \
  119. src/options.hpp \
  120. src/own.cpp \
  121. src/own.hpp \
  122. src/pair.cpp \
  123. src/pair.hpp \
  124. src/peer.cpp \
  125. src/peer.hpp \
  126. src/pgm_receiver.cpp \
  127. src/pgm_receiver.hpp \
  128. src/pgm_sender.cpp \
  129. src/pgm_sender.hpp \
  130. src/pgm_socket.cpp \
  131. src/pgm_socket.hpp \
  132. src/pipe.cpp \
  133. src/pipe.hpp \
  134. src/plain_client.cpp \
  135. src/plain_client.hpp \
  136. src/plain_common.hpp \
  137. src/plain_server.cpp \
  138. src/plain_server.hpp \
  139. src/platform.hpp \
  140. src/poll.cpp \
  141. src/poll.hpp \
  142. src/poller.hpp \
  143. src/poller_base.cpp \
  144. src/poller_base.hpp \
  145. src/polling_util.cpp \
  146. src/polling_util.hpp \
  147. src/pollset.cpp \
  148. src/pollset.hpp \
  149. src/precompiled.cpp \
  150. src/precompiled.hpp \
  151. src/proxy.cpp \
  152. src/proxy.hpp \
  153. src/pub.cpp \
  154. src/pub.hpp \
  155. src/pull.cpp \
  156. src/pull.hpp \
  157. src/push.cpp \
  158. src/push.hpp \
  159. src/radio.cpp \
  160. src/radio.hpp \
  161. src/radix_tree.cpp \
  162. src/radix_tree.hpp \
  163. src/random.cpp \
  164. src/random.hpp \
  165. src/raw_decoder.cpp \
  166. src/raw_decoder.hpp \
  167. src/raw_encoder.cpp \
  168. src/raw_encoder.hpp \
  169. src/raw_engine.cpp \
  170. src/raw_engine.hpp \
  171. src/reaper.cpp \
  172. src/reaper.hpp \
  173. src/rep.cpp \
  174. src/rep.hpp \
  175. src/req.cpp \
  176. src/req.hpp \
  177. src/router.cpp \
  178. src/router.hpp \
  179. src/scatter.cpp \
  180. src/scatter.hpp \
  181. src/secure_allocator.hpp \
  182. src/select.cpp \
  183. src/select.hpp \
  184. src/server.cpp \
  185. src/server.hpp \
  186. src/session_base.cpp \
  187. src/session_base.hpp \
  188. src/signaler.cpp \
  189. src/signaler.hpp \
  190. src/socket_base.cpp \
  191. src/socket_base.hpp \
  192. src/socks.cpp \
  193. src/socks.hpp \
  194. src/socks_connecter.cpp \
  195. src/socks_connecter.hpp \
  196. src/stdint.hpp \
  197. src/stream.cpp \
  198. src/stream.hpp \
  199. src/stream_connecter_base.cpp \
  200. src/stream_connecter_base.hpp \
  201. src/stream_listener_base.cpp \
  202. src/stream_listener_base.hpp \
  203. src/stream_engine_base.cpp \
  204. src/stream_engine_base.hpp \
  205. src/sub.cpp \
  206. src/sub.hpp \
  207. src/tcp.cpp \
  208. src/tcp.hpp \
  209. src/tcp_address.cpp \
  210. src/tcp_address.hpp \
  211. src/tcp_connecter.cpp \
  212. src/tcp_connecter.hpp \
  213. src/tcp_listener.cpp \
  214. src/tcp_listener.hpp \
  215. src/thread.cpp \
  216. src/thread.hpp \
  217. src/timers.cpp \
  218. src/timers.hpp \
  219. src/tipc_address.cpp \
  220. src/tipc_address.hpp \
  221. src/tipc_connecter.cpp \
  222. src/tipc_connecter.hpp \
  223. src/tipc_listener.cpp \
  224. src/tipc_listener.hpp \
  225. src/trie.cpp \
  226. src/trie.hpp \
  227. src/udp_address.cpp \
  228. src/udp_address.hpp \
  229. src/udp_engine.cpp \
  230. src/udp_engine.hpp \
  231. src/v1_decoder.cpp \
  232. src/v1_decoder.hpp \
  233. src/v2_decoder.cpp \
  234. src/v2_decoder.hpp \
  235. src/v1_encoder.cpp \
  236. src/v1_encoder.hpp \
  237. src/v2_encoder.cpp \
  238. src/v2_encoder.hpp \
  239. src/v3_1_encoder.cpp \
  240. src/v3_1_encoder.hpp \
  241. src/v2_protocol.hpp \
  242. src/vmci.cpp \
  243. src/vmci.hpp \
  244. src/vmci_address.cpp \
  245. src/vmci_address.hpp \
  246. src/vmci_connecter.cpp \
  247. src/vmci_connecter.hpp \
  248. src/vmci_listener.cpp \
  249. src/vmci_listener.hpp \
  250. src/windows.hpp \
  251. src/wire.hpp \
  252. src/xpub.cpp \
  253. src/xpub.hpp \
  254. src/xsub.cpp \
  255. src/xsub.hpp \
  256. src/ypipe.hpp \
  257. src/ypipe_base.hpp \
  258. src/ypipe_conflate.hpp \
  259. src/yqueue.hpp \
  260. src/zmq.cpp \
  261. src/zmq_utils.cpp \
  262. src/decoder_allocators.cpp \
  263. src/decoder_allocators.hpp \
  264. src/socket_poller.cpp \
  265. src/socket_poller.hpp \
  266. src/zap_client.cpp \
  267. src/zap_client.hpp \
  268. src/zmtp_engine.cpp \
  269. src/zmtp_engine.hpp \
  270. src/zmq_draft.h
  271. if USE_WEPOLL
  272. src_libzmq_la_SOURCES += \
  273. external/wepoll/wepoll.c \
  274. external/wepoll/wepoll.h
  275. endif
  276. if USE_TWEETNACL
  277. src_libzmq_la_SOURCES += \
  278. src/tweetnacl.c \
  279. src/tweetnacl.h
  280. endif
  281. if HAVE_WS
  282. src_libzmq_la_SOURCES += \
  283. src/ws_address.cpp \
  284. src/ws_address.hpp \
  285. src/wss_address.cpp \
  286. src/wss_address.hpp \
  287. src/ws_connecter.cpp \
  288. src/ws_connecter.hpp \
  289. src/ws_decoder.cpp \
  290. src/ws_decoder.hpp \
  291. src/ws_encoder.cpp \
  292. src/ws_encoder.hpp \
  293. src/ws_engine.cpp \
  294. src/ws_engine.hpp \
  295. src/ws_listener.cpp \
  296. src/ws_listener.hpp \
  297. src/ws_protocol.hpp
  298. endif
  299. if USE_BUILTIN_SHA1
  300. src_libzmq_la_SOURCES += \
  301. external/sha1/sha1.c \
  302. external/sha1/sha1.h
  303. endif
  304. if HAVE_WSS
  305. src_libzmq_la_SOURCES += \
  306. src/wss_engine.cpp \
  307. src/wss_engine.hpp
  308. endif
  309. if ON_MINGW
  310. src_libzmq_la_LDFLAGS = \
  311. -no-undefined \
  312. -avoid-version \
  313. -version-info @LTVER@ \
  314. @LIBZMQ_EXTRA_LDFLAGS@
  315. else
  316. if ON_CYGWIN
  317. src_libzmq_la_LDFLAGS = \
  318. -no-undefined \
  319. -avoid-version \
  320. -version-info @LTVER@ \
  321. @LIBZMQ_EXTRA_LDFLAGS@
  322. else
  323. if ON_ANDROID
  324. src_libzmq_la_LDFLAGS = \
  325. -avoid-version \
  326. -version-info @LTVER@ \
  327. @LIBZMQ_EXTRA_LDFLAGS@
  328. else
  329. src_libzmq_la_LDFLAGS = \
  330. -version-info @LTVER@ \
  331. @LIBZMQ_EXTRA_LDFLAGS@
  332. endif
  333. endif
  334. endif
  335. if HAVE_VSCRIPT_COMPLEX
  336. src_libzmq_la_LDFLAGS += $(VSCRIPT_LDFLAGS),$(srcdir)/src/libzmq.vers
  337. endif
  338. src_libzmq_la_CPPFLAGS = $(CODE_COVERAGE_CPPFLAGS) $(LIBUNWIND_CFLAGS) $(LIBBSD_CFLAGS)
  339. src_libzmq_la_CFLAGS = $(CODE_COVERAGE_CFLAGS) $(LIBUNWIND_CFLAGS) $(LIBBSD_CFLAGS)
  340. src_libzmq_la_CXXFLAGS = @LIBZMQ_EXTRA_CXXFLAGS@ $(CODE_COVERAGE_CXXFLAGS) \
  341. $(LIBUNWIND_CFLAGS) $(LIBBSD_CFLAGS)
  342. src_libzmq_la_LIBADD = $(CODE_COVERAGE_LDFLAGS) $(LIBUNWIND_LIBS) $(LIBBSD_LIBS)
  343. if USE_NSS
  344. src_libzmq_la_CPPFLAGS += ${NSS3_CFLAGS}
  345. src_libzmq_la_LIBADD += ${NSS3_LIBS}
  346. endif
  347. if USE_GNUTLS
  348. src_libzmq_la_CPPFLAGS += ${GNUTLS_CFLAGS}
  349. src_libzmq_la_LIBADD += ${GNUTLS_LIBS}
  350. endif
  351. if USE_LIBSODIUM
  352. src_libzmq_la_CPPFLAGS += ${sodium_CFLAGS}
  353. src_libzmq_la_LIBADD += ${sodium_LIBS}
  354. endif
  355. if HAVE_PGM
  356. src_libzmq_la_CPPFLAGS += ${pgm_CFLAGS}
  357. src_libzmq_la_LIBADD += ${pgm_LIBS}
  358. endif
  359. if HAVE_NORM
  360. src_libzmq_la_CPPFLAGS += ${norm_CFLAGS}
  361. src_libzmq_la_LIBADD += ${norm_LIBS}
  362. endif
  363. if BUILD_GSSAPI
  364. src_libzmq_la_CPPFLAGS += ${gssapi_krb5_CFLAGS}
  365. src_libzmq_la_LIBADD += ${gssapi_krb5_LIBS}
  366. endif
  367. if ENABLE_PERF
  368. noinst_PROGRAMS = \
  369. perf/local_lat \
  370. perf/remote_lat \
  371. perf/local_thr \
  372. perf/remote_thr \
  373. perf/inproc_lat \
  374. perf/inproc_thr \
  375. perf/proxy_thr
  376. perf_local_lat_LDADD = src/libzmq.la
  377. perf_local_lat_SOURCES = perf/local_lat.cpp
  378. perf_remote_lat_LDADD = src/libzmq.la
  379. perf_remote_lat_SOURCES = perf/remote_lat.cpp
  380. perf_local_thr_LDADD = src/libzmq.la
  381. perf_local_thr_SOURCES = perf/local_thr.cpp
  382. perf_remote_thr_LDADD = src/libzmq.la
  383. perf_remote_thr_SOURCES = perf/remote_thr.cpp
  384. perf_inproc_lat_LDADD = src/libzmq.la
  385. perf_inproc_lat_SOURCES = perf/inproc_lat.cpp
  386. perf_inproc_thr_LDADD = src/libzmq.la
  387. perf_inproc_thr_SOURCES = perf/inproc_thr.cpp
  388. perf_proxy_thr_LDADD = src/libzmq.la
  389. perf_proxy_thr_SOURCES = perf/proxy_thr.cpp
  390. if ENABLE_STATIC
  391. noinst_PROGRAMS += \
  392. perf/benchmark_radix_tree
  393. perf_benchmark_radix_tree_DEPENDENCIES = src/libzmq.la
  394. perf_benchmark_radix_tree_CPPFLAGS = -I$(top_srcdir)/src
  395. perf_benchmark_radix_tree_LDADD = $(top_builddir)/src/.libs/libzmq.a \
  396. ${src_libzmq_la_LIBADD}
  397. perf_benchmark_radix_tree_SOURCES = perf/benchmark_radix_tree.cpp
  398. endif
  399. endif
  400. if ENABLE_CURVE_KEYGEN
  401. bin_PROGRAMS = tools/curve_keygen
  402. tools_curve_keygen_LDADD = src/libzmq.la
  403. tools_curve_keygen_SOURCES = tools/curve_keygen.cpp
  404. endif
  405. #
  406. # tests
  407. #
  408. test_apps = \
  409. tests/test_ancillaries \
  410. tests/test_system \
  411. tests/test_pair_inproc \
  412. tests/test_pair_tcp \
  413. tests/test_reqrep_inproc \
  414. tests/test_reqrep_tcp \
  415. tests/test_hwm \
  416. tests/test_hwm_pubsub \
  417. tests/test_reqrep_device \
  418. tests/test_sub_forward \
  419. tests/test_invalid_rep \
  420. tests/test_msg_flags \
  421. tests/test_msg_ffn \
  422. tests/test_connect_resolve \
  423. tests/test_immediate \
  424. tests/test_last_endpoint \
  425. tests/test_term_endpoint \
  426. tests/test_srcfd \
  427. tests/test_monitor \
  428. tests/test_router_mandatory \
  429. tests/test_router_mandatory_hwm \
  430. tests/test_router_handover \
  431. tests/test_probe_router \
  432. tests/test_stream \
  433. tests/test_stream_empty \
  434. tests/test_stream_disconnect \
  435. tests/test_stream_timeout \
  436. tests/test_disconnect_inproc \
  437. tests/test_unbind_wildcard \
  438. tests/test_ctx_options \
  439. tests/test_ctx_destroy \
  440. tests/test_security_no_zap_handler \
  441. tests/test_security_null \
  442. tests/test_security_plain \
  443. tests/test_security_zap \
  444. tests/test_iov \
  445. tests/test_spec_req \
  446. tests/test_spec_rep \
  447. tests/test_spec_dealer \
  448. tests/test_spec_router \
  449. tests/test_spec_pushpull \
  450. tests/test_req_correlate \
  451. tests/test_req_relaxed \
  452. tests/test_conflate \
  453. tests/test_inproc_connect \
  454. tests/test_issue_566 \
  455. tests/test_proxy \
  456. tests/test_proxy_hwm \
  457. tests/test_proxy_single_socket \
  458. tests/test_proxy_terminate \
  459. tests/test_getsockopt_memset \
  460. tests/test_setsockopt \
  461. tests/test_diffserv \
  462. tests/test_connect_rid \
  463. tests/test_bind_src_address \
  464. tests/test_metadata \
  465. tests/test_capabilities \
  466. tests/test_xpub_nodrop \
  467. tests/test_xpub_manual \
  468. tests/test_xpub_welcome_msg \
  469. tests/test_xpub_verbose \
  470. tests/test_atomics \
  471. tests/test_sockopt_hwm \
  472. tests/test_heartbeats \
  473. tests/test_stream_exceeds_buffer \
  474. tests/test_pub_invert_matching \
  475. tests/test_base85 \
  476. tests/test_bind_after_connect_tcp \
  477. tests/test_sodium \
  478. tests/test_reconnect_ivl \
  479. tests/test_mock_pub_sub \
  480. tests/test_socket_null
  481. UNITY_CPPFLAGS = -I$(top_srcdir)/external/unity -DUNITY_USE_COMMAND_LINE_ARGS -DUNITY_EXCLUDE_FLOAT
  482. UNITY_LIBS = $(top_builddir)/external/unity/libunity.a
  483. external_unity_libunity_a_SOURCES = external/unity/unity.c \
  484. external/unity/unity.h \
  485. external/unity/unity_internals.h
  486. TESTUTIL_CPPFLAGS = ${UNITY_CPPFLAGS}
  487. TESTUTIL_LIBS = $(top_builddir)/tests/libtestutil.a ${UNITY_LIBS}
  488. tests_libtestutil_a_SOURCES = \
  489. tests/testutil.cpp \
  490. tests/testutil.hpp \
  491. tests/testutil_monitoring.cpp \
  492. tests/testutil_monitoring.hpp \
  493. tests/testutil_security.cpp \
  494. tests/testutil_security.hpp \
  495. tests/testutil_unity.cpp \
  496. tests/testutil_unity.hpp
  497. tests_libtestutil_a_CPPFLAGS = ${UNITY_CPPFLAGS}
  498. noinst_LIBRARIES = external/unity/libunity.a tests/libtestutil.a
  499. tests_test_ancillaries_SOURCES = tests/test_ancillaries.cpp
  500. tests_test_ancillaries_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  501. tests_test_ancillaries_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  502. tests_test_system_SOURCES = tests/test_system.cpp
  503. tests_test_system_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  504. tests_test_system_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  505. tests_test_pair_inproc_SOURCES = tests/test_pair_inproc.cpp
  506. tests_test_pair_inproc_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  507. tests_test_pair_inproc_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  508. tests_test_pair_tcp_SOURCES = tests/test_pair_tcp.cpp
  509. tests_test_pair_tcp_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  510. tests_test_pair_tcp_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  511. tests_test_reqrep_inproc_SOURCES = tests/test_reqrep_inproc.cpp
  512. tests_test_reqrep_inproc_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  513. tests_test_reqrep_inproc_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  514. tests_test_reqrep_tcp_SOURCES = tests/test_reqrep_tcp.cpp
  515. tests_test_reqrep_tcp_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  516. tests_test_reqrep_tcp_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  517. tests_test_hwm_SOURCES = tests/test_hwm.cpp
  518. tests_test_hwm_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  519. tests_test_hwm_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  520. tests_test_hwm_pubsub_SOURCES = tests/test_hwm_pubsub.cpp
  521. tests_test_hwm_pubsub_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  522. tests_test_hwm_pubsub_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  523. tests_test_reqrep_device_SOURCES = tests/test_reqrep_device.cpp
  524. tests_test_reqrep_device_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  525. tests_test_reqrep_device_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  526. tests_test_sub_forward_SOURCES = tests/test_sub_forward.cpp
  527. tests_test_sub_forward_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  528. tests_test_sub_forward_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  529. tests_test_invalid_rep_SOURCES = tests/test_invalid_rep.cpp
  530. tests_test_invalid_rep_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  531. tests_test_invalid_rep_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  532. tests_test_msg_flags_SOURCES = tests/test_msg_flags.cpp
  533. tests_test_msg_flags_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  534. tests_test_msg_flags_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  535. tests_test_msg_ffn_SOURCES = tests/test_msg_ffn.cpp
  536. tests_test_msg_ffn_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  537. tests_test_msg_ffn_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  538. tests_test_connect_resolve_SOURCES = tests/test_connect_resolve.cpp
  539. tests_test_connect_resolve_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  540. tests_test_connect_resolve_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  541. tests_test_immediate_SOURCES = tests/test_immediate.cpp
  542. tests_test_immediate_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  543. tests_test_immediate_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  544. tests_test_last_endpoint_SOURCES = tests/test_last_endpoint.cpp
  545. tests_test_last_endpoint_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  546. tests_test_last_endpoint_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  547. tests_test_term_endpoint_SOURCES = tests/test_term_endpoint.cpp
  548. tests_test_term_endpoint_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  549. tests_test_term_endpoint_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  550. tests_test_srcfd_SOURCES = tests/test_srcfd.cpp
  551. tests_test_srcfd_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  552. tests_test_srcfd_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  553. tests_test_monitor_SOURCES = tests/test_monitor.cpp
  554. tests_test_monitor_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  555. tests_test_monitor_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  556. tests_test_router_mandatory_SOURCES = tests/test_router_mandatory.cpp
  557. tests_test_router_mandatory_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  558. tests_test_router_mandatory_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  559. tests_test_router_mandatory_hwm_SOURCES = tests/test_router_mandatory_hwm.cpp
  560. tests_test_router_mandatory_hwm_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  561. tests_test_router_mandatory_hwm_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  562. tests_test_router_handover_SOURCES = tests/test_router_handover.cpp
  563. tests_test_router_handover_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  564. tests_test_router_handover_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  565. tests_test_probe_router_SOURCES = tests/test_probe_router.cpp
  566. tests_test_probe_router_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  567. tests_test_probe_router_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  568. tests_test_stream_SOURCES = tests/test_stream.cpp
  569. tests_test_stream_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  570. tests_test_stream_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  571. tests_test_stream_empty_SOURCES = tests/test_stream_empty.cpp
  572. tests_test_stream_empty_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  573. tests_test_stream_empty_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  574. tests_test_stream_timeout_SOURCES = tests/test_stream_timeout.cpp
  575. tests_test_stream_timeout_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  576. tests_test_stream_timeout_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  577. tests_test_stream_disconnect_SOURCES = tests/test_stream_disconnect.cpp
  578. tests_test_stream_disconnect_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  579. tests_test_stream_disconnect_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  580. tests_test_disconnect_inproc_SOURCES = tests/test_disconnect_inproc.cpp
  581. tests_test_disconnect_inproc_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  582. tests_test_disconnect_inproc_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  583. tests_test_unbind_wildcard_SOURCES = tests/test_unbind_wildcard.cpp
  584. tests_test_unbind_wildcard_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  585. tests_test_unbind_wildcard_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  586. tests_test_ctx_options_SOURCES = tests/test_ctx_options.cpp
  587. tests_test_ctx_options_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  588. tests_test_ctx_options_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  589. tests_test_iov_SOURCES = tests/test_iov.cpp
  590. tests_test_iov_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  591. tests_test_iov_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  592. tests_test_ctx_destroy_SOURCES = tests/test_ctx_destroy.cpp
  593. tests_test_ctx_destroy_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  594. tests_test_ctx_destroy_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  595. tests_test_security_no_zap_handler_SOURCES = tests/test_security_no_zap_handler.cpp
  596. tests_test_security_no_zap_handler_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  597. tests_test_security_no_zap_handler_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  598. tests_test_security_null_SOURCES = tests/test_security_null.cpp
  599. tests_test_security_null_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  600. tests_test_security_null_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  601. tests_test_security_plain_SOURCES = tests/test_security_plain.cpp
  602. tests_test_security_plain_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  603. tests_test_security_plain_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  604. tests_test_security_zap_SOURCES = tests/test_security_zap.cpp
  605. tests_test_security_zap_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  606. tests_test_security_zap_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  607. tests_test_spec_req_SOURCES = tests/test_spec_req.cpp
  608. tests_test_spec_req_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  609. tests_test_spec_req_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  610. tests_test_spec_rep_SOURCES = tests/test_spec_rep.cpp
  611. tests_test_spec_rep_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  612. tests_test_spec_rep_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  613. tests_test_spec_dealer_SOURCES = tests/test_spec_dealer.cpp
  614. tests_test_spec_dealer_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  615. tests_test_spec_dealer_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  616. tests_test_spec_router_SOURCES = tests/test_spec_router.cpp
  617. tests_test_spec_router_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  618. tests_test_spec_router_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  619. tests_test_spec_pushpull_SOURCES = tests/test_spec_pushpull.cpp
  620. tests_test_spec_pushpull_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  621. tests_test_spec_pushpull_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  622. tests_test_req_correlate_SOURCES = tests/test_req_correlate.cpp
  623. tests_test_req_correlate_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  624. tests_test_req_correlate_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  625. tests_test_req_relaxed_SOURCES = tests/test_req_relaxed.cpp
  626. tests_test_req_relaxed_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  627. tests_test_req_relaxed_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  628. tests_test_conflate_SOURCES = tests/test_conflate.cpp
  629. tests_test_conflate_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  630. tests_test_conflate_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  631. tests_test_inproc_connect_SOURCES = tests/test_inproc_connect.cpp
  632. tests_test_inproc_connect_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  633. tests_test_inproc_connect_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  634. tests_test_issue_566_SOURCES = tests/test_issue_566.cpp
  635. tests_test_issue_566_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  636. tests_test_issue_566_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  637. tests_test_proxy_SOURCES = tests/test_proxy.cpp
  638. tests_test_proxy_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  639. tests_test_proxy_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  640. tests_test_proxy_hwm_SOURCES = tests/test_proxy_hwm.cpp
  641. tests_test_proxy_hwm_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  642. tests_test_proxy_hwm_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  643. tests_test_proxy_single_socket_SOURCES = tests/test_proxy_single_socket.cpp
  644. tests_test_proxy_single_socket_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  645. tests_test_proxy_single_socket_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  646. tests_test_proxy_terminate_SOURCES = tests/test_proxy_terminate.cpp
  647. tests_test_proxy_terminate_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  648. tests_test_proxy_terminate_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  649. tests_test_getsockopt_memset_SOURCES = tests/test_getsockopt_memset.cpp
  650. tests_test_getsockopt_memset_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  651. tests_test_getsockopt_memset_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  652. tests_test_diffserv_SOURCES = tests/test_diffserv.cpp
  653. tests_test_diffserv_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  654. tests_test_diffserv_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  655. tests_test_connect_rid_SOURCES = tests/test_connect_rid.cpp
  656. tests_test_connect_rid_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  657. tests_test_connect_rid_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  658. tests_test_bind_src_address_SOURCES = tests/test_bind_src_address.cpp
  659. tests_test_bind_src_address_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  660. tests_test_bind_src_address_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  661. tests_test_metadata_SOURCES = tests/test_metadata.cpp
  662. tests_test_metadata_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  663. tests_test_metadata_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  664. tests_test_capabilities_SOURCES = tests/test_capabilities.cpp
  665. tests_test_capabilities_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  666. tests_test_capabilities_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  667. tests_test_xpub_nodrop_SOURCES = tests/test_xpub_nodrop.cpp
  668. tests_test_xpub_nodrop_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  669. tests_test_xpub_nodrop_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  670. tests_test_xpub_manual_SOURCES = tests/test_xpub_manual.cpp
  671. tests_test_xpub_manual_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  672. tests_test_xpub_manual_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  673. tests_test_xpub_welcome_msg_SOURCES = tests/test_xpub_welcome_msg.cpp
  674. tests_test_xpub_welcome_msg_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  675. tests_test_xpub_welcome_msg_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  676. tests_test_xpub_verbose_SOURCES = tests/test_xpub_verbose.cpp
  677. tests_test_xpub_verbose_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  678. tests_test_xpub_verbose_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  679. tests_test_atomics_SOURCES = tests/test_atomics.cpp
  680. tests_test_atomics_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  681. tests_test_atomics_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  682. tests_test_sockopt_hwm_SOURCES = tests/test_sockopt_hwm.cpp
  683. tests_test_sockopt_hwm_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  684. tests_test_sockopt_hwm_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  685. tests_test_setsockopt_SOURCES = tests/test_setsockopt.cpp
  686. tests_test_setsockopt_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  687. tests_test_setsockopt_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  688. tests_test_heartbeats_SOURCES = tests/test_heartbeats.cpp
  689. tests_test_heartbeats_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  690. tests_test_heartbeats_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  691. tests_test_stream_exceeds_buffer_SOURCES = tests/test_stream_exceeds_buffer.cpp
  692. tests_test_stream_exceeds_buffer_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  693. tests_test_stream_exceeds_buffer_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  694. tests_test_pub_invert_matching_SOURCES = tests/test_pub_invert_matching.cpp
  695. tests_test_pub_invert_matching_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  696. tests_test_pub_invert_matching_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  697. tests_test_bind_after_connect_tcp_SOURCES = tests/test_bind_after_connect_tcp.cpp
  698. tests_test_bind_after_connect_tcp_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  699. tests_test_bind_after_connect_tcp_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  700. tests_test_base85_SOURCES = tests/test_base85.cpp
  701. tests_test_base85_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  702. tests_test_base85_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  703. tests_test_sodium_SOURCES = tests/test_sodium.cpp
  704. tests_test_sodium_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  705. tests_test_sodium_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  706. tests_test_socket_null_SOURCES = tests/test_socket_null.cpp
  707. tests_test_socket_null_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  708. tests_test_socket_null_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  709. tests_test_reconnect_ivl_SOURCES = tests/test_reconnect_ivl.cpp
  710. tests_test_reconnect_ivl_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  711. tests_test_reconnect_ivl_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  712. tests_test_mock_pub_sub_SOURCES = tests/test_mock_pub_sub.cpp
  713. tests_test_mock_pub_sub_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  714. tests_test_mock_pub_sub_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  715. if HAVE_CURVE
  716. test_apps += \
  717. tests/test_security_curve
  718. tests_test_security_curve_SOURCES = \
  719. tests/test_security_curve.cpp \
  720. src/curve_client_tools.hpp \
  721. src/clock.hpp \
  722. src/clock.cpp \
  723. src/random.hpp \
  724. src/random.cpp \
  725. src/err.hpp \
  726. src/err.cpp
  727. if USE_TWEETNACL
  728. tests_test_security_curve_SOURCES += \
  729. src/tweetnacl.c
  730. endif
  731. tests_test_security_curve_LDADD = \
  732. ${TESTUTIL_LIBS} src/libzmq.la $(LIBUNWIND_LIBS) $(LIBBSD_LIBS)
  733. tests_test_security_curve_CPPFLAGS = \
  734. ${TESTUTIL_CPPFLAGS} \
  735. ${LIBUNWIND_CFLAGS} ${LIBBSD_CFLAGS}
  736. if USE_LIBSODIUM
  737. tests_test_security_curve_CPPFLAGS += \
  738. ${sodium_CFLAGS}
  739. tests_test_security_curve_LDADD += \
  740. ${sodium_LIBS}
  741. endif
  742. endif
  743. if HAVE_WS
  744. test_apps += \
  745. tests/test_ws_transport
  746. tests_test_ws_transport_SOURCES = tests/test_ws_transport.cpp
  747. tests_test_ws_transport_LDADD = ${TESTUTIL_LIBS} src/libzmq.la ${NSS3_LIBS}
  748. tests_test_ws_transport_CPPFLAGS = ${TESTUTIL_CPPFLAGS} ${NSS3_CFLAGS}
  749. endif
  750. if HAVE_WSS
  751. test_apps += \
  752. tests/test_wss_transport
  753. tests_test_wss_transport_SOURCES = tests/test_wss_transport.cpp
  754. tests_test_wss_transport_LDADD = ${TESTUTIL_LIBS} src/libzmq.la ${GNUTLS_LIBS}
  755. tests_test_wss_transport_CPPFLAGS = ${TESTUTIL_CPPFLAGS} ${GNUTLS_CFLAGS}
  756. endif
  757. if !ON_MINGW
  758. if !ON_CYGWIN
  759. test_apps += \
  760. tests/test_shutdown_stress \
  761. tests/test_ipc_wildcard \
  762. tests/test_pair_ipc \
  763. tests/test_rebind_ipc \
  764. tests/test_reqrep_ipc \
  765. tests/test_use_fd \
  766. tests/test_zmq_poll_fd \
  767. tests/test_timeo \
  768. tests/test_filter_ipc
  769. tests_test_shutdown_stress_SOURCES = tests/test_shutdown_stress.cpp
  770. tests_test_shutdown_stress_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  771. tests_test_shutdown_stress_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  772. tests_test_ipc_wildcard_SOURCES = tests/test_ipc_wildcard.cpp
  773. tests_test_ipc_wildcard_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  774. tests_test_ipc_wildcard_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  775. tests_test_pair_ipc_SOURCES = tests/test_pair_ipc.cpp
  776. tests_test_pair_ipc_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  777. tests_test_pair_ipc_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  778. tests_test_rebind_ipc_SOURCES = tests/test_rebind_ipc.cpp
  779. tests_test_rebind_ipc_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  780. tests_test_rebind_ipc_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  781. tests_test_reqrep_ipc_SOURCES = tests/test_reqrep_ipc.cpp
  782. tests_test_reqrep_ipc_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  783. tests_test_reqrep_ipc_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  784. tests_test_timeo_SOURCES = tests/test_timeo.cpp
  785. tests_test_timeo_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  786. tests_test_timeo_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  787. tests_test_filter_ipc_SOURCES = tests/test_filter_ipc.cpp
  788. tests_test_filter_ipc_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  789. tests_test_filter_ipc_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  790. tests_test_use_fd_SOURCES = tests/test_use_fd.cpp
  791. tests_test_use_fd_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  792. tests_test_use_fd_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  793. tests_test_zmq_poll_fd_SOURCES = tests/test_zmq_poll_fd.cpp
  794. tests_test_zmq_poll_fd_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  795. tests_test_zmq_poll_fd_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  796. if HAVE_FORK
  797. if !VALGRIND_ENABLED
  798. test_apps += tests/test_fork
  799. tests_test_fork_SOURCES = tests/test_fork.cpp
  800. tests_test_fork_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  801. tests_test_fork_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  802. endif
  803. endif
  804. endif
  805. endif
  806. if BUILD_TIPC
  807. test_apps += \
  808. tests/test_connect_delay_tipc \
  809. tests/test_pair_tipc \
  810. tests/test_reqrep_device_tipc \
  811. tests/test_reqrep_tipc \
  812. tests/test_router_mandatory_tipc \
  813. tests/test_shutdown_stress_tipc \
  814. tests/test_sub_forward_tipc \
  815. tests/test_term_endpoint_tipc \
  816. tests/test_address_tipc
  817. tests_test_connect_delay_tipc_SOURCES = tests/test_connect_delay_tipc.cpp
  818. tests_test_connect_delay_tipc_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  819. tests_test_connect_delay_tipc_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  820. tests_test_pair_tipc_SOURCES = tests/test_pair_tipc.cpp
  821. tests_test_pair_tipc_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  822. tests_test_pair_tipc_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  823. tests_test_reqrep_device_tipc_SOURCES = tests/test_reqrep_device_tipc.cpp
  824. tests_test_reqrep_device_tipc_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  825. tests_test_reqrep_device_tipc_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  826. tests_test_reqrep_tipc_SOURCES = tests/test_reqrep_tipc.cpp
  827. tests_test_reqrep_tipc_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  828. tests_test_reqrep_tipc_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  829. tests_test_router_mandatory_tipc_SOURCES = tests/test_router_mandatory_tipc.cpp
  830. tests_test_router_mandatory_tipc_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  831. tests_test_router_mandatory_tipc_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  832. tests_test_shutdown_stress_tipc_SOURCES = tests/test_shutdown_stress_tipc.cpp
  833. tests_test_shutdown_stress_tipc_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  834. tests_test_shutdown_stress_tipc_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  835. tests_test_sub_forward_tipc_SOURCES = tests/test_sub_forward_tipc.cpp
  836. tests_test_sub_forward_tipc_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  837. tests_test_sub_forward_tipc_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  838. tests_test_term_endpoint_tipc_SOURCES = tests/test_term_endpoint_tipc.cpp
  839. tests_test_term_endpoint_tipc_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  840. tests_test_term_endpoint_tipc_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  841. tests_test_address_tipc_SOURCES = tests/test_address_tipc.cpp
  842. tests_test_address_tipc_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  843. tests_test_address_tipc_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  844. endif
  845. if BUILD_GSSAPI
  846. test_apps += tests/test_security_gssapi
  847. tests_test_security_gssapi_SOURCES = tests/test_security_gssapi.cpp
  848. tests_test_security_gssapi_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  849. tests_test_security_gssapi_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  850. endif
  851. if ON_LINUX
  852. test_apps += tests/test_abstract_ipc \
  853. tests/test_socks
  854. tests_test_abstract_ipc_SOURCES = tests/test_abstract_ipc.cpp
  855. tests_test_abstract_ipc_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  856. tests_test_abstract_ipc_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  857. tests_test_socks_SOURCES = tests/test_socks.cpp
  858. tests_test_socks_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  859. tests_test_socks_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  860. # TODO: enable when https://github.com/zeromq/libzmq/issues/3898 is fixed
  861. if !ENABLE_ASAN
  862. test_apps += tests/test_many_sockets
  863. tests_test_many_sockets_SOURCES = tests/test_many_sockets.cpp
  864. tests_test_many_sockets_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  865. tests_test_many_sockets_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  866. endif
  867. endif
  868. if HAVE_VMCI
  869. test_apps += test_pair_vmci test_reqrep_vmci
  870. test_pair_vmci_SOURCES = tests/test_pair_vmci.cpp
  871. test_pair_vmci_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  872. test_pair_vmci_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  873. test_pair_vmci_LDFLAGS = @LIBZMQ_VMCI_LDFLAGS@
  874. test_pair_vmci_CXXFLAGS = @LIBZMQ_VMCI_CXXFLAGS@
  875. test_reqrep_vmci_SOURCES = tests/test_reqrep_vmci.cpp
  876. test_reqrep_vmci_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  877. test_reqrep_vmci_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  878. test_reqrep_vmci_LDFLAGS = @LIBZMQ_VMCI_LDFLAGS@
  879. test_reqrep_vmci_CXXFLAGS = @LIBZMQ_VMCI_CXXFLAGS@
  880. endif
  881. if ENABLE_DRAFTS
  882. test_apps += tests/test_poller \
  883. tests/test_client_server \
  884. tests/test_thread_safe \
  885. tests/test_timers \
  886. tests/test_radio_dish \
  887. tests/test_scatter_gather \
  888. tests/test_dgram \
  889. tests/test_app_meta \
  890. tests/test_xpub_manual_last_value \
  891. tests/test_router_notify \
  892. tests/test_peer \
  893. tests/test_reconnect_options \
  894. tests/test_msg_init \
  895. tests/test_hello_msg \
  896. tests/test_disconnect_msg \
  897. tests/test_channel
  898. tests_test_poller_SOURCES = tests/test_poller.cpp
  899. tests_test_poller_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  900. tests_test_poller_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  901. tests_test_client_server_SOURCES = tests/test_client_server.cpp
  902. tests_test_client_server_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  903. tests_test_client_server_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  904. tests_test_thread_safe_SOURCES = tests/test_thread_safe.cpp
  905. tests_test_thread_safe_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  906. tests_test_thread_safe_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  907. tests_test_timers_SOURCES = tests/test_timers.cpp
  908. tests_test_timers_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  909. tests_test_timers_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  910. tests_test_radio_dish_SOURCES = tests/test_radio_dish.cpp
  911. tests_test_radio_dish_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  912. tests_test_radio_dish_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  913. tests_test_scatter_gather_SOURCES = tests/test_scatter_gather.cpp
  914. tests_test_scatter_gather_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  915. tests_test_scatter_gather_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  916. tests_test_dgram_SOURCES = tests/test_dgram.cpp
  917. tests_test_dgram_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  918. tests_test_dgram_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  919. tests_test_xpub_manual_last_value_SOURCES = tests/test_xpub_manual_last_value.cpp
  920. tests_test_xpub_manual_last_value_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  921. tests_test_xpub_manual_last_value_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  922. tests_test_app_meta_SOURCES = tests/test_app_meta.cpp
  923. tests_test_app_meta_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  924. tests_test_app_meta_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  925. tests_test_router_notify_SOURCES = tests/test_router_notify.cpp
  926. tests_test_router_notify_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  927. tests_test_router_notify_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  928. tests_test_peer_SOURCES = tests/test_peer.cpp
  929. tests_test_peer_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  930. tests_test_peer_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  931. tests_test_reconnect_options_SOURCES = tests/test_reconnect_options.cpp
  932. tests_test_reconnect_options_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  933. tests_test_reconnect_options_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  934. tests_test_msg_init_SOURCES = tests/test_msg_init.cpp
  935. tests_test_msg_init_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  936. tests_test_msg_init_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  937. tests_test_hello_msg_SOURCES = tests/test_hello_msg.cpp
  938. tests_test_hello_msg_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  939. tests_test_hello_msg_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  940. tests_test_disconnect_msg_SOURCES = tests/test_disconnect_msg.cpp
  941. tests_test_disconnect_msg_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  942. tests_test_disconnect_msg_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  943. tests_test_channel_SOURCES = tests/test_channel.cpp
  944. tests_test_channel_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  945. tests_test_channel_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  946. endif
  947. if FUZZING_ENGINE_LIB
  948. fuzzer_apps = tests/test_bind_null_fuzzer \
  949. tests/test_connect_null_fuzzer \
  950. tests/test_bind_fuzzer \
  951. tests/test_connect_fuzzer
  952. tests_test_bind_null_fuzzer_DEPENDENCIES = src/libzmq.la
  953. tests_test_bind_null_fuzzer_SOURCES = tests/test_bind_null_fuzzer.cpp
  954. tests_test_bind_null_fuzzer_LDADD = ${TESTUTIL_LIBS} ${FUZZING_ENGINE_LIB} \
  955. $(top_builddir)/src/.libs/libzmq.a \
  956. ${src_libzmq_la_LIBADD}
  957. tests_test_bind_null_fuzzer_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  958. tests_test_bind_null_fuzzer_CXXFLAGS = -std=c++11
  959. tests_test_connect_null_fuzzer_DEPENDENCIES = src/libzmq.la
  960. tests_test_connect_null_fuzzer_SOURCES = tests/test_connect_null_fuzzer.cpp
  961. tests_test_connect_null_fuzzer_LDADD = ${TESTUTIL_LIBS} ${FUZZING_ENGINE_LIB} \
  962. $(top_builddir)/src/.libs/libzmq.a \
  963. ${src_libzmq_la_LIBADD}
  964. tests_test_connect_null_fuzzer_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  965. tests_test_connect_null_fuzzer_CXXFLAGS = -std=c++11
  966. tests_test_bind_fuzzer_DEPENDENCIES = src/libzmq.la
  967. tests_test_bind_fuzzer_SOURCES = tests/test_bind_fuzzer.cpp
  968. tests_test_bind_fuzzer_LDADD = ${TESTUTIL_LIBS} ${FUZZING_ENGINE_LIB} \
  969. $(top_builddir)/src/.libs/libzmq.a \
  970. ${src_libzmq_la_LIBADD}
  971. tests_test_bind_fuzzer_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  972. tests_test_bind_fuzzer_CXXFLAGS = -std=c++11
  973. tests_test_connect_fuzzer_DEPENDENCIES = src/libzmq.la
  974. tests_test_connect_fuzzer_SOURCES = tests/test_connect_fuzzer.cpp
  975. tests_test_connect_fuzzer_LDADD = ${TESTUTIL_LIBS} ${FUZZING_ENGINE_LIB} \
  976. $(top_builddir)/src/.libs/libzmq.a \
  977. ${src_libzmq_la_LIBADD}
  978. tests_test_connect_fuzzer_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  979. tests_test_connect_fuzzer_CXXFLAGS = -std=c++11
  980. if HAVE_CURVE
  981. fuzzer_apps += tests/test_bind_curve_fuzzer \
  982. tests/test_connect_curve_fuzzer \
  983. tests/test_z85_decode_fuzzer
  984. tests_test_bind_curve_fuzzer_DEPENDENCIES = src/libzmq.la
  985. tests_test_bind_curve_fuzzer_SOURCES = tests/test_bind_curve_fuzzer.cpp
  986. tests_test_bind_curve_fuzzer_LDADD = ${TESTUTIL_LIBS} ${FUZZING_ENGINE_LIB} \
  987. $(top_builddir)/src/.libs/libzmq.a \
  988. ${src_libzmq_la_LIBADD}
  989. tests_test_bind_curve_fuzzer_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  990. tests_test_bind_curve_fuzzer_CXXFLAGS = -std=c++11
  991. tests_test_connect_curve_fuzzer_DEPENDENCIES = src/libzmq.la
  992. tests_test_connect_curve_fuzzer_SOURCES = tests/test_connect_curve_fuzzer.cpp
  993. tests_test_connect_curve_fuzzer_LDADD = ${TESTUTIL_LIBS} ${FUZZING_ENGINE_LIB} \
  994. $(top_builddir)/src/.libs/libzmq.a \
  995. ${src_libzmq_la_LIBADD}
  996. tests_test_connect_curve_fuzzer_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  997. tests_test_connect_curve_fuzzer_CXXFLAGS = -std=c++11
  998. tests_test_z85_decode_fuzzer_DEPENDENCIES = src/libzmq.la
  999. tests_test_z85_decode_fuzzer_SOURCES = tests/test_z85_decode_fuzzer.cpp
  1000. tests_test_z85_decode_fuzzer_LDADD = ${TESTUTIL_LIBS} ${FUZZING_ENGINE_LIB} \
  1001. $(top_builddir)/src/.libs/libzmq.a \
  1002. ${src_libzmq_la_LIBADD}
  1003. tests_test_z85_decode_fuzzer_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  1004. tests_test_z85_decode_fuzzer_CXXFLAGS = -std=c++11
  1005. endif
  1006. if HAVE_WS
  1007. fuzzer_apps += tests/test_connect_ws_fuzzer \
  1008. tests/test_bind_ws_fuzzer
  1009. tests_test_connect_ws_fuzzer_DEPENDENCIES = src/libzmq.la
  1010. tests_test_connect_ws_fuzzer_SOURCES = tests/test_connect_ws_fuzzer.cpp
  1011. tests_test_connect_ws_fuzzer_LDADD = ${TESTUTIL_LIBS} ${FUZZING_ENGINE_LIB} \
  1012. $(top_builddir)/src/.libs/libzmq.a \
  1013. ${src_libzmq_la_LIBADD}
  1014. tests_test_connect_ws_fuzzer_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  1015. tests_test_connect_ws_fuzzer_CXXFLAGS = -std=c++11
  1016. tests_test_bind_ws_fuzzer_DEPENDENCIES = src/libzmq.la
  1017. tests_test_bind_ws_fuzzer_SOURCES = tests/test_bind_ws_fuzzer.cpp
  1018. tests_test_bind_ws_fuzzer_LDADD = ${TESTUTIL_LIBS} ${FUZZING_ENGINE_LIB} \
  1019. $(top_builddir)/src/.libs/libzmq.a \
  1020. ${src_libzmq_la_LIBADD}
  1021. tests_test_bind_ws_fuzzer_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  1022. tests_test_bind_ws_fuzzer_CXXFLAGS = -std=c++11
  1023. endif
  1024. FUZZINGdir = ${prefix}/${FUZZING_INSTALLDIR}
  1025. FUZZING_PROGRAMS = ${fuzzer_apps}
  1026. else
  1027. test_apps += tests/test_bind_null_fuzzer \
  1028. tests/test_connect_null_fuzzer \
  1029. tests/test_bind_fuzzer \
  1030. tests/test_connect_fuzzer
  1031. tests_test_bind_null_fuzzer_SOURCES = tests/test_bind_null_fuzzer.cpp
  1032. tests_test_bind_null_fuzzer_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  1033. tests_test_bind_null_fuzzer_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  1034. tests_test_connect_null_fuzzer_SOURCES = tests/test_connect_null_fuzzer.cpp
  1035. tests_test_connect_null_fuzzer_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  1036. tests_test_connect_null_fuzzer_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  1037. tests_test_bind_fuzzer_SOURCES = tests/test_bind_fuzzer.cpp
  1038. tests_test_bind_fuzzer_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  1039. tests_test_bind_fuzzer_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  1040. tests_test_connect_fuzzer_SOURCES = tests/test_connect_fuzzer.cpp
  1041. tests_test_connect_fuzzer_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  1042. tests_test_connect_fuzzer_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  1043. if HAVE_CURVE
  1044. test_apps += tests/test_bind_curve_fuzzer \
  1045. tests/test_connect_curve_fuzzer \
  1046. tests/test_z85_decode_fuzzer
  1047. tests_test_bind_curve_fuzzer_SOURCES = tests/test_bind_curve_fuzzer.cpp
  1048. tests_test_bind_curve_fuzzer_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  1049. tests_test_bind_curve_fuzzer_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  1050. tests_test_connect_curve_fuzzer_SOURCES = tests/test_connect_curve_fuzzer.cpp
  1051. tests_test_connect_curve_fuzzer_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  1052. tests_test_connect_curve_fuzzer_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  1053. tests_test_z85_decode_fuzzer_SOURCES = tests/test_z85_decode_fuzzer.cpp
  1054. tests_test_z85_decode_fuzzer_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  1055. tests_test_z85_decode_fuzzer_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  1056. endif
  1057. if HAVE_WS
  1058. test_apps += tests/test_connect_ws_fuzzer \
  1059. tests/test_bind_ws_fuzzer
  1060. tests_test_connect_ws_fuzzer_SOURCES = tests/test_connect_ws_fuzzer.cpp
  1061. tests_test_connect_ws_fuzzer_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  1062. tests_test_connect_ws_fuzzer_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  1063. tests_test_bind_ws_fuzzer_SOURCES = tests/test_bind_ws_fuzzer.cpp
  1064. tests_test_bind_ws_fuzzer_LDADD = ${TESTUTIL_LIBS} src/libzmq.la
  1065. tests_test_bind_ws_fuzzer_CPPFLAGS = ${TESTUTIL_CPPFLAGS}
  1066. endif
  1067. endif
  1068. if ENABLE_STATIC
  1069. # unit tests - these include individual source files and test the internal functions
  1070. test_apps += \
  1071. unittests/unittest_poller \
  1072. unittests/unittest_ypipe \
  1073. unittests/unittest_mtrie \
  1074. unittests/unittest_ip_resolver \
  1075. unittests/unittest_udp_address \
  1076. unittests/unittest_radix_tree \
  1077. unittests/unittest_curve_encoding
  1078. unittests_unittest_poller_SOURCES = unittests/unittest_poller.cpp
  1079. unittests_unittest_poller_CPPFLAGS = -I$(top_srcdir)/src ${TESTUTIL_CPPFLAGS} $(CODE_COVERAGE_CPPFLAGS)
  1080. unittests_unittest_poller_CXXFLAGS = $(CODE_COVERAGE_CXXFLAGS)
  1081. unittests_unittest_poller_LDADD = \
  1082. ${TESTUTIL_LIBS} \
  1083. $(top_builddir)/src/.libs/libzmq.a \
  1084. ${src_libzmq_la_LIBADD} \
  1085. $(CODE_COVERAGE_LDFLAGS)
  1086. unittests_unittest_ypipe_SOURCES = unittests/unittest_ypipe.cpp
  1087. unittests_unittest_ypipe_CPPFLAGS = -I$(top_srcdir)/src ${TESTUTIL_CPPFLAGS} $(CODE_COVERAGE_CPPFLAGS)
  1088. unittests_unittest_ypipe_CXXFLAGS = $(CODE_COVERAGE_CXXFLAGS)
  1089. unittests_unittest_ypipe_LDADD = \
  1090. ${TESTUTIL_LIBS} \
  1091. $(top_builddir)/src/.libs/libzmq.a \
  1092. ${src_libzmq_la_LIBADD} \
  1093. $(CODE_COVERAGE_LDFLAGS)
  1094. unittests_unittest_mtrie_SOURCES = unittests/unittest_mtrie.cpp
  1095. unittests_unittest_mtrie_CPPFLAGS = -I$(top_srcdir)/src ${TESTUTIL_CPPFLAGS} $(CODE_COVERAGE_CPPFLAGS)
  1096. unittests_unittest_mtrie_CXXFLAGS = $(CODE_COVERAGE_CXXFLAGS)
  1097. unittests_unittest_mtrie_LDADD = \
  1098. ${TESTUTIL_LIBS} \
  1099. $(top_builddir)/src/.libs/libzmq.a \
  1100. ${src_libzmq_la_LIBADD} \
  1101. $(CODE_COVERAGE_LDFLAGS)
  1102. unittests_unittest_ip_resolver_SOURCES = unittests/unittest_ip_resolver.cpp unittests/unittest_resolver_common.hpp
  1103. unittests_unittest_ip_resolver_CPPFLAGS = -I$(top_srcdir)/src ${TESTUTIL_CPPFLAGS} $(CODE_COVERAGE_CPPFLAGS)
  1104. unittests_unittest_ip_resolver_CXXFLAGS = $(CODE_COVERAGE_CXXFLAGS)
  1105. unittests_unittest_ip_resolver_LDADD = \
  1106. ${TESTUTIL_LIBS} \
  1107. $(top_builddir)/src/.libs/libzmq.a \
  1108. ${src_libzmq_la_LIBADD} \
  1109. $(CODE_COVERAGE_LDFLAGS)
  1110. unittests_unittest_udp_address_SOURCES = unittests/unittest_udp_address.cpp unittests/unittest_resolver_common.hpp
  1111. unittests_unittest_udp_address_CPPFLAGS = -I$(top_srcdir)/src ${TESTUTIL_CPPFLAGS} $(CODE_COVERAGE_CPPFLAGS)
  1112. unittests_unittest_udp_address_CXXFLAGS = $(CODE_COVERAGE_CXXFLAGS)
  1113. unittests_unittest_udp_address_LDADD = \
  1114. ${TESTUTIL_LIBS} \
  1115. $(top_builddir)/src/.libs/libzmq.a \
  1116. ${src_libzmq_la_LIBADD} \
  1117. $(CODE_COVERAGE_LDFLAGS)
  1118. unittests_unittest_radix_tree_SOURCES = unittests/unittest_radix_tree.cpp
  1119. unittests_unittest_radix_tree_CPPFLAGS = -I$(top_srcdir)/src ${TESTUTIL_CPPFLAGS} $(CODE_COVERAGE_CPPFLAGS)
  1120. unittests_unittest_radix_tree_CXXFLAGS = $(CODE_COVERAGE_CXXFLAGS)
  1121. unittests_unittest_radix_tree_LDADD = \
  1122. ${TESTUTIL_LIBS} \
  1123. $(top_builddir)/src/.libs/libzmq.a \
  1124. ${src_libzmq_la_LIBADD} \
  1125. $(CODE_COVERAGE_LDFLAGS)
  1126. unittests_unittest_curve_encoding_SOURCES = unittests/unittest_curve_encoding.cpp
  1127. unittests_unittest_curve_encoding_CPPFLAGS = -I$(top_srcdir)/src ${TESTUTIL_CPPFLAGS} $(CODE_COVERAGE_CPPFLAGS)
  1128. unittests_unittest_curve_encoding_CXXFLAGS = $(CODE_COVERAGE_CXXFLAGS)
  1129. unittests_unittest_curve_encoding_LDADD = \
  1130. ${TESTUTIL_LIBS} \
  1131. $(top_builddir)/src/.libs/libzmq.a \
  1132. ${src_libzmq_la_LIBADD} \
  1133. $(CODE_COVERAGE_LDFLAGS)
  1134. endif
  1135. check_PROGRAMS = ${test_apps}
  1136. # Run the test cases
  1137. TESTS = $(test_apps)
  1138. XFAIL_TESTS =
  1139. if !ON_LINUX
  1140. XFAIL_TESTS += tests/test_abstract_ipc
  1141. endif
  1142. # GNU/Hurd does not support getsockname on IPC, so ZMQ_LAST_ENDPOINT cannot be
  1143. # used with IPC, so the following tests will fail
  1144. if ON_GNU
  1145. XFAIL_TESTS += tests/test_ipc_wildcard \
  1146. tests/test_reqrep_ipc \
  1147. tests/test_pair_ipc \
  1148. tests/test_rebind_ipc \
  1149. tests/test_term_endpoint
  1150. endif
  1151. EXTRA_DIST = \
  1152. external/unity/license.txt \
  1153. external/unity/version.txt \
  1154. external/wepoll/license.txt \
  1155. external/wepoll/version.txt \
  1156. external/wepoll/README.md \
  1157. CMakeLists.txt \
  1158. autogen.sh \
  1159. version.sh \
  1160. ci_build.sh \
  1161. src/libzmq.vers \
  1162. src/version.rc.in \
  1163. tests/CMakeLists.txt \
  1164. tests/test_pair_tcp_cap_net_admin.cpp \
  1165. unittests/CMakeLists.txt \
  1166. tools/curve_keygen.cpp
  1167. MAINTAINERCLEANFILES = \
  1168. $(srcdir)/aclocal.m4 \
  1169. $(srcdir)/autom4te.cache \
  1170. $(srcdir)/configure \
  1171. `find "$(srcdir)" -type f -name Makefile.in -print`
  1172. if WITH_CLANG_FORMAT
  1173. ALL_SOURCE_FILES = $(wildcard \
  1174. $(top_srcdir)/src/*.c \
  1175. $(top_srcdir)/src/*.cc \
  1176. $(top_srcdir)/src/*.cpp \
  1177. $(top_srcdir)/src/*.h \
  1178. $(top_srcdir)/src/*.hpp \
  1179. $(top_srcdir)/tests/*.c \
  1180. $(top_srcdir)/tests/*.cc \
  1181. $(top_srcdir)/tests/*.cpp \
  1182. $(top_srcdir)/tests/*.h \
  1183. $(top_srcdir)/tests/*.hpp \
  1184. $(top_srcdir)/perf/*.c \
  1185. $(top_srcdir)/perf/*.cc \
  1186. $(top_srcdir)/perf/*.cpp \
  1187. $(top_srcdir)/perf/*.h \
  1188. $(top_srcdir)/perf/*.hpp \
  1189. $(top_srcdir)/tools/*.c \
  1190. $(top_srcdir)/tools/*.cc \
  1191. $(top_srcdir)/tools/*.cpp \
  1192. $(top_srcdir)/tools/*.h \
  1193. $(top_srcdir)/tools/*.hpp \
  1194. $(top_srcdir)/include/*.h \
  1195. )
  1196. # Check if any sources need to be fixed, report the filenames and an error code
  1197. clang-format-check: $(ALL_SOURCE_FILES)
  1198. @FAILED=0 ; IFS=";" ; IDS="`printf '\n\b'`" ; export IFS IDS; \
  1199. for FILE in $(ALL_SOURCE_FILES) ; do \
  1200. test -s $$FILE || continue ; \
  1201. $(CLANG_FORMAT) -style=file -output-replacements-xml "$$FILE" | grep "<replacement " >/dev/null && \
  1202. { echo "$$FILE is not correctly formatted" >&2 ; FAILED=1; } ; \
  1203. done; \
  1204. if test "$$FAILED" != 0 ; then \
  1205. exit 1 ; \
  1206. fi
  1207. # Change source formatting
  1208. clang-format: $(ALL_SOURCE_FILES)
  1209. $(CLANG_FORMAT) -style=file -i $(ALL_SOURCE_FILES)
  1210. # Change source formatting AND report the diff
  1211. clang-format-diff: clang-format
  1212. git diff $(ALL_SOURCE_FILES)
  1213. else
  1214. clang-format clang-format-check clang-format-diff:
  1215. @echo "Install the clang-format program, reconfigure and re-run this request"
  1216. @exit 1
  1217. endif
  1218. @CODE_COVERAGE_RULES@
  1219. dist-hook:
  1220. -rm $(distdir)/src/platform.hpp
  1221. @if test -d "$(srcdir)/.git"; \
  1222. then \
  1223. echo Creating ChangeLog && \
  1224. ( cd "$(top_srcdir)" && \
  1225. echo '# Generated by Makefile. Do not edit.'; echo; \
  1226. $(top_srcdir)/config/missing --run git log --stat ) > ChangeLog.tmp \
  1227. && mv -f ChangeLog.tmp $(top_distdir)/ChangeLog \
  1228. || ( rm -f ChangeLog.tmp ; \
  1229. echo Failed to generate ChangeLog >&2 ); \
  1230. else \
  1231. echo A git clone is required to generate a ChangeLog >&2; \
  1232. fi
  1233. maintainer-clean-local:
  1234. -rm -rf $(top_srcdir)/config
  1235. @VALGRIND_CHECK_RULES@
  1236. VALGRIND_SUPPRESSIONS_FILES = builds/valgrind/valgrind.supp