@ohos-ports/confluentinc-kafka-javascript 1.10.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +457 -0
- package/LICENSE.kafkajs +31 -0
- package/LICENSE.node-rdkafka +25 -0
- package/LICENSE.txt +20 -0
- package/README.md +133 -0
- package/binding.gyp +184 -0
- package/build/Release/confluent-kafka-javascript.node +0 -0
- package/build/deps/librdkafka++.so.1 +0 -0
- package/build/deps/librdkafka.Makefile +6 -0
- package/build/deps/librdkafka.so.1 +0 -0
- package/build/deps/librdkafka.target.mk +55 -0
- package/deps/librdkafka/.clang-format +136 -0
- package/deps/librdkafka/.clang-format-cpp +103 -0
- package/deps/librdkafka/.dir-locals.el +10 -0
- package/deps/librdkafka/.formatignore +35 -0
- package/deps/librdkafka/.gdbmacros +19 -0
- package/deps/librdkafka/CHANGELOG.md +2477 -0
- package/deps/librdkafka/CMakeLists.txt +291 -0
- package/deps/librdkafka/CODE_OF_CONDUCT.md +46 -0
- package/deps/librdkafka/CONFIGURATION.md +212 -0
- package/deps/librdkafka/CONTRIBUTING.md +431 -0
- package/deps/librdkafka/Doxyfile +2375 -0
- package/deps/librdkafka/INTRODUCTION.md +2752 -0
- package/deps/librdkafka/LICENSE +26 -0
- package/deps/librdkafka/LICENSE.cjson +22 -0
- package/deps/librdkafka/LICENSE.crc32c +28 -0
- package/deps/librdkafka/LICENSE.fnv1a +18 -0
- package/deps/librdkafka/LICENSE.hdrhistogram +27 -0
- package/deps/librdkafka/LICENSE.lz4 +26 -0
- package/deps/librdkafka/LICENSE.murmur2 +25 -0
- package/deps/librdkafka/LICENSE.nanopb +22 -0
- package/deps/librdkafka/LICENSE.opentelemetry +203 -0
- package/deps/librdkafka/LICENSE.pycrc +23 -0
- package/deps/librdkafka/LICENSE.queue +31 -0
- package/deps/librdkafka/LICENSE.regexp +5 -0
- package/deps/librdkafka/LICENSE.snappy +36 -0
- package/deps/librdkafka/LICENSE.tinycthread +26 -0
- package/deps/librdkafka/LICENSE.wingetopt +49 -0
- package/deps/librdkafka/LICENSES.txt +625 -0
- package/deps/librdkafka/Makefile +125 -0
- package/deps/librdkafka/README.md +201 -0
- package/deps/librdkafka/README.win32 +26 -0
- package/deps/librdkafka/STATISTICS.md +624 -0
- package/deps/librdkafka/configure +214 -0
- package/deps/librdkafka/configure.self +341 -0
- package/deps/librdkafka/dev-conf.sh +123 -0
- package/deps/librdkafka/lds-gen.py +73 -0
- package/deps/librdkafka/mainpage.doxy +40 -0
- package/deps/librdkafka/mklove/Makefile.base +329 -0
- package/deps/librdkafka/mklove/modules/configure.atomics +144 -0
- package/deps/librdkafka/mklove/modules/configure.base +2484 -0
- package/deps/librdkafka/mklove/modules/configure.builtin +70 -0
- package/deps/librdkafka/mklove/modules/configure.cc +186 -0
- package/deps/librdkafka/mklove/modules/configure.cxx +8 -0
- package/deps/librdkafka/mklove/modules/configure.fileversion +65 -0
- package/deps/librdkafka/mklove/modules/configure.gitversion +29 -0
- package/deps/librdkafka/mklove/modules/configure.good_cflags +18 -0
- package/deps/librdkafka/mklove/modules/configure.host +132 -0
- package/deps/librdkafka/mklove/modules/configure.lib +49 -0
- package/deps/librdkafka/mklove/modules/configure.libcurl +99 -0
- package/deps/librdkafka/mklove/modules/configure.libsasl2 +36 -0
- package/deps/librdkafka/mklove/modules/configure.libssl +147 -0
- package/deps/librdkafka/mklove/modules/configure.libzstd +58 -0
- package/deps/librdkafka/mklove/modules/configure.parseversion +95 -0
- package/deps/librdkafka/mklove/modules/configure.pic +16 -0
- package/deps/librdkafka/mklove/modules/configure.socket +20 -0
- package/deps/librdkafka/mklove/modules/configure.zlib +61 -0
- package/deps/librdkafka/mklove/modules/patches/README.md +8 -0
- package/deps/librdkafka/mklove/modules/patches/libcurl.0000-no-runtime-linking-check.patch +11 -0
- package/deps/librdkafka/mklove/modules/patches/libssl.0000-osx-rand-include-fix-OpenSSL-PR16409.patch +56 -0
- package/deps/librdkafka/service.yml +182 -0
- package/deps/librdkafka/src/CMakeLists.txt +379 -0
- package/deps/librdkafka/src/Makefile +105 -0
- package/deps/librdkafka/src/README.lz4.md +30 -0
- package/deps/librdkafka/src/cJSON.c +3191 -0
- package/deps/librdkafka/src/cJSON.h +306 -0
- package/deps/librdkafka/src/crc32c.c +430 -0
- package/deps/librdkafka/src/crc32c.h +38 -0
- package/deps/librdkafka/src/generate_proto.sh +66 -0
- package/deps/librdkafka/src/librdkafka_cgrp_synch.png +0 -0
- package/deps/librdkafka/src/lz4.c +2727 -0
- package/deps/librdkafka/src/lz4.h +842 -0
- package/deps/librdkafka/src/lz4frame.c +2078 -0
- package/deps/librdkafka/src/lz4frame.h +692 -0
- package/deps/librdkafka/src/lz4frame_static.h +47 -0
- package/deps/librdkafka/src/lz4hc.c +1631 -0
- package/deps/librdkafka/src/lz4hc.h +413 -0
- package/deps/librdkafka/src/nanopb/pb.h +917 -0
- package/deps/librdkafka/src/nanopb/pb_common.c +388 -0
- package/deps/librdkafka/src/nanopb/pb_common.h +49 -0
- package/deps/librdkafka/src/nanopb/pb_decode.c +1727 -0
- package/deps/librdkafka/src/nanopb/pb_decode.h +193 -0
- package/deps/librdkafka/src/nanopb/pb_encode.c +1000 -0
- package/deps/librdkafka/src/nanopb/pb_encode.h +185 -0
- package/deps/librdkafka/src/opentelemetry/common.pb.c +32 -0
- package/deps/librdkafka/src/opentelemetry/common.pb.h +170 -0
- package/deps/librdkafka/src/opentelemetry/metrics.options +2 -0
- package/deps/librdkafka/src/opentelemetry/metrics.pb.c +67 -0
- package/deps/librdkafka/src/opentelemetry/metrics.pb.h +966 -0
- package/deps/librdkafka/src/opentelemetry/resource.pb.c +12 -0
- package/deps/librdkafka/src/opentelemetry/resource.pb.h +58 -0
- package/deps/librdkafka/src/queue.h +850 -0
- package/deps/librdkafka/src/rd.h +592 -0
- package/deps/librdkafka/src/rdaddr.c +255 -0
- package/deps/librdkafka/src/rdaddr.h +202 -0
- package/deps/librdkafka/src/rdatomic.h +262 -0
- package/deps/librdkafka/src/rdavg.h +260 -0
- package/deps/librdkafka/src/rdavl.c +210 -0
- package/deps/librdkafka/src/rdavl.h +250 -0
- package/deps/librdkafka/src/rdbase64.c +200 -0
- package/deps/librdkafka/src/rdbase64.h +43 -0
- package/deps/librdkafka/src/rdbuf.c +1884 -0
- package/deps/librdkafka/src/rdbuf.h +375 -0
- package/deps/librdkafka/src/rdcrc32.c +114 -0
- package/deps/librdkafka/src/rdcrc32.h +170 -0
- package/deps/librdkafka/src/rddl.c +179 -0
- package/deps/librdkafka/src/rddl.h +43 -0
- package/deps/librdkafka/src/rdendian.h +175 -0
- package/deps/librdkafka/src/rdfloat.h +67 -0
- package/deps/librdkafka/src/rdfnv1a.c +113 -0
- package/deps/librdkafka/src/rdfnv1a.h +35 -0
- package/deps/librdkafka/src/rdgz.c +120 -0
- package/deps/librdkafka/src/rdgz.h +46 -0
- package/deps/librdkafka/src/rdhdrhistogram.c +721 -0
- package/deps/librdkafka/src/rdhdrhistogram.h +87 -0
- package/deps/librdkafka/src/rdhttp.c +831 -0
- package/deps/librdkafka/src/rdhttp.h +101 -0
- package/deps/librdkafka/src/rdinterval.h +177 -0
- package/deps/librdkafka/src/rdkafka.c +7287 -0
- package/deps/librdkafka/src/rdkafka.h +11795 -0
- package/deps/librdkafka/src/rdkafka_admin.c +10165 -0
- package/deps/librdkafka/src/rdkafka_admin.h +658 -0
- package/deps/librdkafka/src/rdkafka_assignment.c +1282 -0
- package/deps/librdkafka/src/rdkafka_assignment.h +73 -0
- package/deps/librdkafka/src/rdkafka_assignor.c +1800 -0
- package/deps/librdkafka/src/rdkafka_assignor.h +402 -0
- package/deps/librdkafka/src/rdkafka_aux.c +409 -0
- package/deps/librdkafka/src/rdkafka_aux.h +174 -0
- package/deps/librdkafka/src/rdkafka_background.c +222 -0
- package/deps/librdkafka/src/rdkafka_broker.c +6736 -0
- package/deps/librdkafka/src/rdkafka_broker.h +851 -0
- package/deps/librdkafka/src/rdkafka_buf.c +543 -0
- package/deps/librdkafka/src/rdkafka_buf.h +1525 -0
- package/deps/librdkafka/src/rdkafka_cert.c +576 -0
- package/deps/librdkafka/src/rdkafka_cert.h +62 -0
- package/deps/librdkafka/src/rdkafka_cgrp.c +8310 -0
- package/deps/librdkafka/src/rdkafka_cgrp.h +589 -0
- package/deps/librdkafka/src/rdkafka_conf.c +5177 -0
- package/deps/librdkafka/src/rdkafka_conf.h +746 -0
- package/deps/librdkafka/src/rdkafka_confval.h +97 -0
- package/deps/librdkafka/src/rdkafka_coord.c +623 -0
- package/deps/librdkafka/src/rdkafka_coord.h +132 -0
- package/deps/librdkafka/src/rdkafka_error.c +228 -0
- package/deps/librdkafka/src/rdkafka_error.h +80 -0
- package/deps/librdkafka/src/rdkafka_event.c +502 -0
- package/deps/librdkafka/src/rdkafka_event.h +126 -0
- package/deps/librdkafka/src/rdkafka_feature.c +898 -0
- package/deps/librdkafka/src/rdkafka_feature.h +104 -0
- package/deps/librdkafka/src/rdkafka_fetcher.c +3820 -0
- package/deps/librdkafka/src/rdkafka_fetcher.h +62 -0
- package/deps/librdkafka/src/rdkafka_header.c +220 -0
- package/deps/librdkafka/src/rdkafka_header.h +76 -0
- package/deps/librdkafka/src/rdkafka_idempotence.c +807 -0
- package/deps/librdkafka/src/rdkafka_idempotence.h +144 -0
- package/deps/librdkafka/src/rdkafka_int.h +1505 -0
- package/deps/librdkafka/src/rdkafka_interceptor.c +842 -0
- package/deps/librdkafka/src/rdkafka_interceptor.h +104 -0
- package/deps/librdkafka/src/rdkafka_lz4.c +450 -0
- package/deps/librdkafka/src/rdkafka_lz4.h +49 -0
- package/deps/librdkafka/src/rdkafka_metadata.c +2347 -0
- package/deps/librdkafka/src/rdkafka_metadata.h +350 -0
- package/deps/librdkafka/src/rdkafka_metadata_cache.c +1183 -0
- package/deps/librdkafka/src/rdkafka_mock.c +4514 -0
- package/deps/librdkafka/src/rdkafka_mock.h +867 -0
- package/deps/librdkafka/src/rdkafka_mock_cgrp.c +1877 -0
- package/deps/librdkafka/src/rdkafka_mock_handlers.c +5255 -0
- package/deps/librdkafka/src/rdkafka_mock_int.h +1005 -0
- package/deps/librdkafka/src/rdkafka_mock_sharegrp.c +1207 -0
- package/deps/librdkafka/src/rdkafka_msg.c +2619 -0
- package/deps/librdkafka/src/rdkafka_msg.h +629 -0
- package/deps/librdkafka/src/rdkafka_msgbatch.h +62 -0
- package/deps/librdkafka/src/rdkafka_msgset.h +105 -0
- package/deps/librdkafka/src/rdkafka_msgset_reader.c +2099 -0
- package/deps/librdkafka/src/rdkafka_msgset_writer.c +1474 -0
- package/deps/librdkafka/src/rdkafka_offset.c +1565 -0
- package/deps/librdkafka/src/rdkafka_offset.h +150 -0
- package/deps/librdkafka/src/rdkafka_op.c +1219 -0
- package/deps/librdkafka/src/rdkafka_op.h +1065 -0
- package/deps/librdkafka/src/rdkafka_partition.c +5109 -0
- package/deps/librdkafka/src/rdkafka_partition.h +1215 -0
- package/deps/librdkafka/src/rdkafka_pattern.c +228 -0
- package/deps/librdkafka/src/rdkafka_pattern.h +70 -0
- package/deps/librdkafka/src/rdkafka_plugin.c +213 -0
- package/deps/librdkafka/src/rdkafka_plugin.h +41 -0
- package/deps/librdkafka/src/rdkafka_proto.h +739 -0
- package/deps/librdkafka/src/rdkafka_protocol.h +131 -0
- package/deps/librdkafka/src/rdkafka_queue.c +1351 -0
- package/deps/librdkafka/src/rdkafka_queue.h +1235 -0
- package/deps/librdkafka/src/rdkafka_range_assignor.c +1748 -0
- package/deps/librdkafka/src/rdkafka_request.c +7298 -0
- package/deps/librdkafka/src/rdkafka_request.h +761 -0
- package/deps/librdkafka/src/rdkafka_roundrobin_assignor.c +123 -0
- package/deps/librdkafka/src/rdkafka_sasl.c +589 -0
- package/deps/librdkafka/src/rdkafka_sasl.h +63 -0
- package/deps/librdkafka/src/rdkafka_sasl_cyrus.c +722 -0
- package/deps/librdkafka/src/rdkafka_sasl_int.h +89 -0
- package/deps/librdkafka/src/rdkafka_sasl_oauthbearer.c +1833 -0
- package/deps/librdkafka/src/rdkafka_sasl_oauthbearer.h +52 -0
- package/deps/librdkafka/src/rdkafka_sasl_oauthbearer_oidc.c +1827 -0
- package/deps/librdkafka/src/rdkafka_sasl_oauthbearer_oidc.h +52 -0
- package/deps/librdkafka/src/rdkafka_sasl_plain.c +142 -0
- package/deps/librdkafka/src/rdkafka_sasl_scram.c +858 -0
- package/deps/librdkafka/src/rdkafka_sasl_win32.c +550 -0
- package/deps/librdkafka/src/rdkafka_share_acknowledgement.c +1445 -0
- package/deps/librdkafka/src/rdkafka_share_acknowledgement.h +373 -0
- package/deps/librdkafka/src/rdkafka_ssl.c +2235 -0
- package/deps/librdkafka/src/rdkafka_ssl.h +86 -0
- package/deps/librdkafka/src/rdkafka_sticky_assignor.c +4785 -0
- package/deps/librdkafka/src/rdkafka_subscription.c +411 -0
- package/deps/librdkafka/src/rdkafka_telemetry.c +761 -0
- package/deps/librdkafka/src/rdkafka_telemetry.h +52 -0
- package/deps/librdkafka/src/rdkafka_telemetry_decode.c +1307 -0
- package/deps/librdkafka/src/rdkafka_telemetry_decode.h +59 -0
- package/deps/librdkafka/src/rdkafka_telemetry_encode.c +1309 -0
- package/deps/librdkafka/src/rdkafka_telemetry_encode.h +459 -0
- package/deps/librdkafka/src/rdkafka_timer.c +407 -0
- package/deps/librdkafka/src/rdkafka_timer.h +117 -0
- package/deps/librdkafka/src/rdkafka_topic.c +2382 -0
- package/deps/librdkafka/src/rdkafka_topic.h +369 -0
- package/deps/librdkafka/src/rdkafka_transport.c +1309 -0
- package/deps/librdkafka/src/rdkafka_transport.h +99 -0
- package/deps/librdkafka/src/rdkafka_transport_int.h +100 -0
- package/deps/librdkafka/src/rdkafka_txnmgr.c +3256 -0
- package/deps/librdkafka/src/rdkafka_txnmgr.h +171 -0
- package/deps/librdkafka/src/rdkafka_zstd.c +226 -0
- package/deps/librdkafka/src/rdkafka_zstd.h +57 -0
- package/deps/librdkafka/src/rdlist.c +593 -0
- package/deps/librdkafka/src/rdlist.h +444 -0
- package/deps/librdkafka/src/rdlog.c +89 -0
- package/deps/librdkafka/src/rdlog.h +41 -0
- package/deps/librdkafka/src/rdmap.c +508 -0
- package/deps/librdkafka/src/rdmap.h +492 -0
- package/deps/librdkafka/src/rdmurmur2.c +167 -0
- package/deps/librdkafka/src/rdmurmur2.h +35 -0
- package/deps/librdkafka/src/rdports.c +61 -0
- package/deps/librdkafka/src/rdports.h +38 -0
- package/deps/librdkafka/src/rdposix.h +250 -0
- package/deps/librdkafka/src/rdrand.c +151 -0
- package/deps/librdkafka/src/rdrand.h +72 -0
- package/deps/librdkafka/src/rdregex.c +156 -0
- package/deps/librdkafka/src/rdregex.h +43 -0
- package/deps/librdkafka/src/rdsignal.h +57 -0
- package/deps/librdkafka/src/rdstring.c +645 -0
- package/deps/librdkafka/src/rdstring.h +98 -0
- package/deps/librdkafka/src/rdsysqueue.h +404 -0
- package/deps/librdkafka/src/rdtime.h +356 -0
- package/deps/librdkafka/src/rdtypes.h +86 -0
- package/deps/librdkafka/src/rdunittest.c +564 -0
- package/deps/librdkafka/src/rdunittest.h +232 -0
- package/deps/librdkafka/src/rdunittest_acknowledge.c +1177 -0
- package/deps/librdkafka/src/rdunittest_fetcher.c +1211 -0
- package/deps/librdkafka/src/rdunittest_msgset_errors.c +1521 -0
- package/deps/librdkafka/src/rdvarint.c +134 -0
- package/deps/librdkafka/src/rdvarint.h +165 -0
- package/deps/librdkafka/src/rdwin32.h +382 -0
- package/deps/librdkafka/src/rdxxhash.c +1030 -0
- package/deps/librdkafka/src/rdxxhash.h +328 -0
- package/deps/librdkafka/src/regexp.c +1352 -0
- package/deps/librdkafka/src/regexp.h +41 -0
- package/deps/librdkafka/src/snappy.c +1866 -0
- package/deps/librdkafka/src/snappy.h +62 -0
- package/deps/librdkafka/src/snappy_compat.h +138 -0
- package/deps/librdkafka/src/statistics_schema.json +444 -0
- package/deps/librdkafka/src/tinycthread.c +932 -0
- package/deps/librdkafka/src/tinycthread.h +503 -0
- package/deps/librdkafka/src/tinycthread_extra.c +210 -0
- package/deps/librdkafka/src/tinycthread_extra.h +218 -0
- package/deps/librdkafka/src/win32_config.h +58 -0
- package/deps/librdkafka/src-cpp/CMakeLists.txt +90 -0
- package/deps/librdkafka/src-cpp/ConfImpl.cpp +84 -0
- package/deps/librdkafka/src-cpp/ConsumerImpl.cpp +244 -0
- package/deps/librdkafka/src-cpp/HandleImpl.cpp +436 -0
- package/deps/librdkafka/src-cpp/HeadersImpl.cpp +48 -0
- package/deps/librdkafka/src-cpp/KafkaConsumerImpl.cpp +296 -0
- package/deps/librdkafka/src-cpp/Makefile +55 -0
- package/deps/librdkafka/src-cpp/MessageImpl.cpp +38 -0
- package/deps/librdkafka/src-cpp/MetadataImpl.cpp +170 -0
- package/deps/librdkafka/src-cpp/ProducerImpl.cpp +197 -0
- package/deps/librdkafka/src-cpp/QueueImpl.cpp +70 -0
- package/deps/librdkafka/src-cpp/README.md +16 -0
- package/deps/librdkafka/src-cpp/RdKafka.cpp +59 -0
- package/deps/librdkafka/src-cpp/TopicImpl.cpp +124 -0
- package/deps/librdkafka/src-cpp/TopicPartitionImpl.cpp +57 -0
- package/deps/librdkafka/src-cpp/rdkafkacpp.h +3797 -0
- package/deps/librdkafka/src-cpp/rdkafkacpp_int.h +1641 -0
- package/deps/librdkafka/tests/0000-unittests.c +72 -0
- package/deps/librdkafka/tests/0001-multiobj.c +102 -0
- package/deps/librdkafka/tests/0002-unkpart.c +244 -0
- package/deps/librdkafka/tests/0003-msgmaxsize.c +173 -0
- package/deps/librdkafka/tests/0004-conf.c +934 -0
- package/deps/librdkafka/tests/0005-order.c +133 -0
- package/deps/librdkafka/tests/0006-symbols.c +163 -0
- package/deps/librdkafka/tests/0007-autotopic.c +136 -0
- package/deps/librdkafka/tests/0008-reqacks.c +179 -0
- package/deps/librdkafka/tests/0009-mock_cluster.c +272 -0
- package/deps/librdkafka/tests/0011-produce_batch.c +753 -0
- package/deps/librdkafka/tests/0012-produce_consume.c +537 -0
- package/deps/librdkafka/tests/0013-null-msgs.c +473 -0
- package/deps/librdkafka/tests/0014-reconsume-191.c +512 -0
- package/deps/librdkafka/tests/0015-offset_seeks.c +172 -0
- package/deps/librdkafka/tests/0016-client_swname.c +181 -0
- package/deps/librdkafka/tests/0017-compression.c +140 -0
- package/deps/librdkafka/tests/0018-cgrp_term.c +444 -0
- package/deps/librdkafka/tests/0019-list_groups.c +289 -0
- package/deps/librdkafka/tests/0020-destroy_hang.c +162 -0
- package/deps/librdkafka/tests/0021-rkt_destroy.c +72 -0
- package/deps/librdkafka/tests/0022-consume_batch.c +331 -0
- package/deps/librdkafka/tests/0025-timers.c +147 -0
- package/deps/librdkafka/tests/0026-consume_pause.c +547 -0
- package/deps/librdkafka/tests/0028-long_topicnames.c +79 -0
- package/deps/librdkafka/tests/0029-assign_offset.c +202 -0
- package/deps/librdkafka/tests/0030-offset_commit.c +589 -0
- package/deps/librdkafka/tests/0031-get_offsets.c +235 -0
- package/deps/librdkafka/tests/0033-regex_subscribe.c +536 -0
- package/deps/librdkafka/tests/0034-offset_reset.c +398 -0
- package/deps/librdkafka/tests/0035-api_version.c +73 -0
- package/deps/librdkafka/tests/0036-partial_fetch.c +87 -0
- package/deps/librdkafka/tests/0037-destroy_hang_local.c +85 -0
- package/deps/librdkafka/tests/0038-performance.c +121 -0
- package/deps/librdkafka/tests/0039-event.c +284 -0
- package/deps/librdkafka/tests/0040-io_event.c +257 -0
- package/deps/librdkafka/tests/0041-fetch_max_bytes.c +97 -0
- package/deps/librdkafka/tests/0042-many_topics.c +252 -0
- package/deps/librdkafka/tests/0043-no_connection.c +77 -0
- package/deps/librdkafka/tests/0044-partition_cnt.c +94 -0
- package/deps/librdkafka/tests/0045-subscribe_update.c +1010 -0
- package/deps/librdkafka/tests/0046-rkt_cache.c +65 -0
- package/deps/librdkafka/tests/0047-partial_buf_tmout.c +98 -0
- package/deps/librdkafka/tests/0048-partitioner.c +283 -0
- package/deps/librdkafka/tests/0049-consume_conn_close.c +162 -0
- package/deps/librdkafka/tests/0050-subscribe_adds.c +145 -0
- package/deps/librdkafka/tests/0051-assign_adds.c +126 -0
- package/deps/librdkafka/tests/0052-msg_timestamps.c +238 -0
- package/deps/librdkafka/tests/0053-stats_cb.cpp +527 -0
- package/deps/librdkafka/tests/0054-offset_time.cpp +236 -0
- package/deps/librdkafka/tests/0055-producer_latency.c +539 -0
- package/deps/librdkafka/tests/0056-balanced_group_mt.c +315 -0
- package/deps/librdkafka/tests/0057-invalid_topic.cpp +112 -0
- package/deps/librdkafka/tests/0058-log.cpp +123 -0
- package/deps/librdkafka/tests/0059-bsearch.cpp +241 -0
- package/deps/librdkafka/tests/0060-op_prio.cpp +163 -0
- package/deps/librdkafka/tests/0061-consumer_lag.cpp +295 -0
- package/deps/librdkafka/tests/0062-stats_event.c +126 -0
- package/deps/librdkafka/tests/0063-clusterid.cpp +180 -0
- package/deps/librdkafka/tests/0064-interceptors.c +529 -0
- package/deps/librdkafka/tests/0065-yield.cpp +140 -0
- package/deps/librdkafka/tests/0066-plugins.cpp +143 -0
- package/deps/librdkafka/tests/0067-empty_topic.cpp +151 -0
- package/deps/librdkafka/tests/0068-produce_timeout.c +136 -0
- package/deps/librdkafka/tests/0069-consumer_add_parts.c +119 -0
- package/deps/librdkafka/tests/0070-null_empty.cpp +197 -0
- package/deps/librdkafka/tests/0072-headers_ut.c +448 -0
- package/deps/librdkafka/tests/0073-headers.c +381 -0
- package/deps/librdkafka/tests/0074-producev.c +87 -0
- package/deps/librdkafka/tests/0075-retry.c +290 -0
- package/deps/librdkafka/tests/0076-produce_retry.c +452 -0
- package/deps/librdkafka/tests/0077-compaction.c +366 -0
- package/deps/librdkafka/tests/0078-c_from_cpp.cpp +96 -0
- package/deps/librdkafka/tests/0079-fork.c +93 -0
- package/deps/librdkafka/tests/0080-admin_ut.c +3095 -0
- package/deps/librdkafka/tests/0081-admin.c +5633 -0
- package/deps/librdkafka/tests/0082-fetch_max_bytes.cpp +137 -0
- package/deps/librdkafka/tests/0083-cb_event.c +233 -0
- package/deps/librdkafka/tests/0084-destroy_flags.c +208 -0
- package/deps/librdkafka/tests/0085-headers.cpp +392 -0
- package/deps/librdkafka/tests/0086-purge.c +368 -0
- package/deps/librdkafka/tests/0088-produce_metadata_timeout.c +162 -0
- package/deps/librdkafka/tests/0089-max_poll_interval.c +511 -0
- package/deps/librdkafka/tests/0090-idempotence.c +171 -0
- package/deps/librdkafka/tests/0091-max_poll_interval_timeout.c +295 -0
- package/deps/librdkafka/tests/0092-mixed_msgver.c +103 -0
- package/deps/librdkafka/tests/0093-holb.c +200 -0
- package/deps/librdkafka/tests/0094-idempotence_msg_timeout.c +231 -0
- package/deps/librdkafka/tests/0095-all_brokers_down.cpp +122 -0
- package/deps/librdkafka/tests/0097-ssl_verify.cpp +674 -0
- package/deps/librdkafka/tests/0098-consumer-txn.cpp +1218 -0
- package/deps/librdkafka/tests/0099-commit_metadata.c +194 -0
- package/deps/librdkafka/tests/0100-thread_interceptors.cpp +195 -0
- package/deps/librdkafka/tests/0101-fetch-from-follower.cpp +446 -0
- package/deps/librdkafka/tests/0102-static_group_rebalance.c +836 -0
- package/deps/librdkafka/tests/0103-transactions.c +1383 -0
- package/deps/librdkafka/tests/0104-fetch_from_follower_mock.c +625 -0
- package/deps/librdkafka/tests/0105-transactions_mock.c +3930 -0
- package/deps/librdkafka/tests/0106-cgrp_sess_timeout.c +318 -0
- package/deps/librdkafka/tests/0107-topic_recreate.c +259 -0
- package/deps/librdkafka/tests/0109-auto_create_topics.cpp +278 -0
- package/deps/librdkafka/tests/0110-batch_size.cpp +182 -0
- package/deps/librdkafka/tests/0111-delay_create_topics.cpp +127 -0
- package/deps/librdkafka/tests/0112-assign_unknown_part.c +87 -0
- package/deps/librdkafka/tests/0113-cooperative_rebalance.cpp +3473 -0
- package/deps/librdkafka/tests/0114-sticky_partitioning.cpp +176 -0
- package/deps/librdkafka/tests/0115-producer_auth.cpp +182 -0
- package/deps/librdkafka/tests/0116-kafkaconsumer_close.cpp +216 -0
- package/deps/librdkafka/tests/0117-mock_errors.c +331 -0
- package/deps/librdkafka/tests/0118-commit_rebalance.c +154 -0
- package/deps/librdkafka/tests/0119-consumer_auth.cpp +167 -0
- package/deps/librdkafka/tests/0120-asymmetric_subscription.c +185 -0
- package/deps/librdkafka/tests/0121-clusterid.c +115 -0
- package/deps/librdkafka/tests/0122-buffer_cleaning_after_rebalance.c +227 -0
- package/deps/librdkafka/tests/0123-connections_max_idle.c +98 -0
- package/deps/librdkafka/tests/0124-openssl_invalid_engine.c +69 -0
- package/deps/librdkafka/tests/0125-immediate_flush.c +144 -0
- package/deps/librdkafka/tests/0126-oauthbearer_oidc.c +1164 -0
- package/deps/librdkafka/tests/0127-fetch_queue_backoff.cpp +165 -0
- package/deps/librdkafka/tests/0128-sasl_callback_queue.cpp +217 -0
- package/deps/librdkafka/tests/0129-fetch_aborted_msgs.c +79 -0
- package/deps/librdkafka/tests/0130-store_offsets.c +178 -0
- package/deps/librdkafka/tests/0131-connect_timeout.c +81 -0
- package/deps/librdkafka/tests/0132-strategy_ordering.c +179 -0
- package/deps/librdkafka/tests/0133-ssl_keys.c +150 -0
- package/deps/librdkafka/tests/0134-ssl_provider.c +92 -0
- package/deps/librdkafka/tests/0135-sasl_credentials.cpp +279 -0
- package/deps/librdkafka/tests/0136-resolve_cb.c +181 -0
- package/deps/librdkafka/tests/0137-barrier_batch_consume.c +752 -0
- package/deps/librdkafka/tests/0138-admin_mock.c +281 -0
- package/deps/librdkafka/tests/0139-offset_validation_mock.c +950 -0
- package/deps/librdkafka/tests/0140-commit_metadata.cpp +108 -0
- package/deps/librdkafka/tests/0142-reauthentication.c +931 -0
- package/deps/librdkafka/tests/0143-exponential_backoff_mock.c +552 -0
- package/deps/librdkafka/tests/0144-idempotence_mock.c +373 -0
- package/deps/librdkafka/tests/0145-pause_resume_mock.c +119 -0
- package/deps/librdkafka/tests/0146-metadata_mock.c +505 -0
- package/deps/librdkafka/tests/0147-consumer_group_consumer_mock.c +1210 -0
- package/deps/librdkafka/tests/0148-offset_fetch_commit_error_mock.c +569 -0
- package/deps/librdkafka/tests/0149-broker-same-host-port.c +140 -0
- package/deps/librdkafka/tests/0150-telemetry_mock.c +651 -0
- package/deps/librdkafka/tests/0151-purge-brokers.c +566 -0
- package/deps/librdkafka/tests/0152-rebootstrap.c +59 -0
- package/deps/librdkafka/tests/0153-memberid.c +128 -0
- package/deps/librdkafka/tests/0155-share_group_heartbeat_mock.c +2695 -0
- package/deps/librdkafka/tests/0156-share_consumer_fetch_mock.c +1551 -0
- package/deps/librdkafka/tests/0157-share_consumer_ack_mock.c +1788 -0
- package/deps/librdkafka/tests/0158-share_consumer_transactions_mock.c +467 -0
- package/deps/librdkafka/tests/0170-share_consumer_subscription.c +2192 -0
- package/deps/librdkafka/tests/0171-share_consumer_consume.c +2150 -0
- package/deps/librdkafka/tests/0172-share_consumer_acknowledge.c +1919 -0
- package/deps/librdkafka/tests/0173-share_consumer_commit_async.c +2735 -0
- package/deps/librdkafka/tests/0174-share_consumer_concurrency.c +1434 -0
- package/deps/librdkafka/tests/0175-share_consumer_groups.c +574 -0
- package/deps/librdkafka/tests/0176-share_consumer_commit_sync.c +2986 -0
- package/deps/librdkafka/tests/0177-share_consumer_transactions.c +1815 -0
- package/deps/librdkafka/tests/0178-share_consumer_close.c +2102 -0
- package/deps/librdkafka/tests/0179-share_consumer_destroy.c +2482 -0
- package/deps/librdkafka/tests/0180-share_consumer_config.c +1677 -0
- package/deps/librdkafka/tests/0181-share_consumer_topic_delete.c +354 -0
- package/deps/librdkafka/tests/0182-share_consumer_error_handling_mock.c +3358 -0
- package/deps/librdkafka/tests/0183-share_consumer_leader_change_mock.c +1234 -0
- package/deps/librdkafka/tests/0184-share_consumer_topic_recreate.c +1356 -0
- package/deps/librdkafka/tests/0185-share_consumer_max_poll_interval.c +557 -0
- package/deps/librdkafka/tests/0186-share_consumer_fatal_error.c +360 -0
- package/deps/librdkafka/tests/0190-share_consumer_telemetry.c +387 -0
- package/deps/librdkafka/tests/1000-unktopic.c +164 -0
- package/deps/librdkafka/tests/8000-idle.cpp +60 -0
- package/deps/librdkafka/tests/8001-fetch_from_follower_mock_manual.c +113 -0
- package/deps/librdkafka/tests/CMakeLists.txt +193 -0
- package/deps/librdkafka/tests/LibrdkafkaTestApp.py +291 -0
- package/deps/librdkafka/tests/Makefile +182 -0
- package/deps/librdkafka/tests/README.md +514 -0
- package/deps/librdkafka/tests/autotest.sh +33 -0
- package/deps/librdkafka/tests/backtrace.gdb +30 -0
- package/deps/librdkafka/tests/broker_version_tests.py +315 -0
- package/deps/librdkafka/tests/buildbox.sh +17 -0
- package/deps/librdkafka/tests/cleanup-checker-tests.sh +20 -0
- package/deps/librdkafka/tests/cluster_testing.py +203 -0
- package/deps/librdkafka/tests/delete-test-topics.sh +56 -0
- package/deps/librdkafka/tests/fixtures/oauthbearer/jwt_assertion_template.json +10 -0
- package/deps/librdkafka/tests/fixtures/ssl/Makefile +8 -0
- package/deps/librdkafka/tests/fixtures/ssl/README.md +13 -0
- package/deps/librdkafka/tests/fixtures/ssl/client.keystore.intermediate.p12 +0 -0
- package/deps/librdkafka/tests/fixtures/ssl/client.keystore.p12 +0 -0
- package/deps/librdkafka/tests/fixtures/ssl/client2.certificate.intermediate.pem +72 -0
- package/deps/librdkafka/tests/fixtures/ssl/client2.certificate.pem +50 -0
- package/deps/librdkafka/tests/fixtures/ssl/client2.intermediate.key +46 -0
- package/deps/librdkafka/tests/fixtures/ssl/client2.key +46 -0
- package/deps/librdkafka/tests/fixtures/ssl/create_keys.sh +168 -0
- package/deps/librdkafka/tests/fuzzers/Makefile +12 -0
- package/deps/librdkafka/tests/fuzzers/README.md +31 -0
- package/deps/librdkafka/tests/fuzzers/fuzz_regex.c +74 -0
- package/deps/librdkafka/tests/fuzzers/helpers.h +90 -0
- package/deps/librdkafka/tests/gen-ssl-certs.sh +165 -0
- package/deps/librdkafka/tests/interactive_broker_version.py +170 -0
- package/deps/librdkafka/tests/interceptor_test/CMakeLists.txt +16 -0
- package/deps/librdkafka/tests/interceptor_test/Makefile +22 -0
- package/deps/librdkafka/tests/interceptor_test/interceptor_test.c +314 -0
- package/deps/librdkafka/tests/interceptor_test/interceptor_test.h +54 -0
- package/deps/librdkafka/tests/java/IncrementalRebalanceCli.java +97 -0
- package/deps/librdkafka/tests/java/Makefile +13 -0
- package/deps/librdkafka/tests/java/Murmur2Cli.java +46 -0
- package/deps/librdkafka/tests/java/README.md +14 -0
- package/deps/librdkafka/tests/java/TransactionProducerCli.java +162 -0
- package/deps/librdkafka/tests/java/run-class.sh +11 -0
- package/deps/librdkafka/tests/librdkafka.suppressions +483 -0
- package/deps/librdkafka/tests/lz4_manual_test.sh +59 -0
- package/deps/librdkafka/tests/multi-broker-version-test.sh +50 -0
- package/deps/librdkafka/tests/parse-refcnt.sh +43 -0
- package/deps/librdkafka/tests/performance_plot.py +115 -0
- package/deps/librdkafka/tests/plugin_test/Makefile +19 -0
- package/deps/librdkafka/tests/plugin_test/plugin_test.c +58 -0
- package/deps/librdkafka/tests/requirements.txt +2 -0
- package/deps/librdkafka/tests/run-all-tests.sh +81 -0
- package/deps/librdkafka/tests/run-consumer-tests.sh +16 -0
- package/deps/librdkafka/tests/run-producer-tests.sh +16 -0
- package/deps/librdkafka/tests/run-test-batches.py +157 -0
- package/deps/librdkafka/tests/run-test.sh +141 -0
- package/deps/librdkafka/tests/rusage.c +249 -0
- package/deps/librdkafka/tests/sasl_test.py +289 -0
- package/deps/librdkafka/tests/scenarios/README.md +6 -0
- package/deps/librdkafka/tests/scenarios/ak23.json +6 -0
- package/deps/librdkafka/tests/scenarios/default.json +5 -0
- package/deps/librdkafka/tests/scenarios/noautocreate.json +5 -0
- package/deps/librdkafka/tests/share_telemetry_verify/share-otel-collector-config.yaml +28 -0
- package/deps/librdkafka/tests/sockem.c +801 -0
- package/deps/librdkafka/tests/sockem.h +85 -0
- package/deps/librdkafka/tests/sockem_ctrl.c +145 -0
- package/deps/librdkafka/tests/sockem_ctrl.h +61 -0
- package/deps/librdkafka/tests/test.c +8376 -0
- package/deps/librdkafka/tests/test.conf.example +27 -0
- package/deps/librdkafka/tests/test.h +1150 -0
- package/deps/librdkafka/tests/testcpp.cpp +131 -0
- package/deps/librdkafka/tests/testcpp.h +388 -0
- package/deps/librdkafka/tests/testshared.h +416 -0
- package/deps/librdkafka/tests/tools/README.md +4 -0
- package/deps/librdkafka/tests/tools/stats/README.md +21 -0
- package/deps/librdkafka/tests/tools/stats/filter.jq +42 -0
- package/deps/librdkafka/tests/tools/stats/graph.py +150 -0
- package/deps/librdkafka/tests/tools/stats/requirements.txt +3 -0
- package/deps/librdkafka/tests/tools/stats/to_csv.py +124 -0
- package/deps/librdkafka/tests/trivup/trivup-0.15.0.tar.gz +0 -0
- package/deps/librdkafka/tests/until-fail.sh +87 -0
- package/deps/librdkafka/tests/xxxx-assign_partition.c +122 -0
- package/deps/librdkafka/tests/xxxx-metadata.cpp +159 -0
- package/deps/librdkafka/vcpkg.json +23 -0
- package/deps/librdkafka/win32/README.md +5 -0
- package/deps/librdkafka/win32/build-package.bat +3 -0
- package/deps/librdkafka/win32/build.bat +19 -0
- package/deps/librdkafka/win32/common.vcxproj +84 -0
- package/deps/librdkafka/win32/interceptor_test/interceptor_test.vcxproj +87 -0
- package/deps/librdkafka/win32/librdkafka.autopkg.template +54 -0
- package/deps/librdkafka/win32/librdkafka.master.testing.targets +13 -0
- package/deps/librdkafka/win32/librdkafka.sln +226 -0
- package/deps/librdkafka/win32/librdkafka.vcxproj +282 -0
- package/deps/librdkafka/win32/librdkafkacpp/librdkafkacpp.vcxproj +104 -0
- package/deps/librdkafka/win32/msbuild.ps1 +58 -0
- package/deps/librdkafka/win32/openssl_engine_example/openssl_engine_example.vcxproj +132 -0
- package/deps/librdkafka/win32/package-zip.ps1 +46 -0
- package/deps/librdkafka/win32/packages/repositories.config +4 -0
- package/deps/librdkafka/win32/push-package.bat +4 -0
- package/deps/librdkafka/win32/rdkafka_complex_consumer_example_cpp/rdkafka_complex_consumer_example_cpp.vcxproj +67 -0
- package/deps/librdkafka/win32/rdkafka_example/rdkafka_example.vcxproj +97 -0
- package/deps/librdkafka/win32/rdkafka_performance/rdkafka_performance.vcxproj +97 -0
- package/deps/librdkafka/win32/setup-msys2.ps1 +47 -0
- package/deps/librdkafka/win32/setup-vcpkg.ps1 +34 -0
- package/deps/librdkafka/win32/tests/test.conf.example +25 -0
- package/deps/librdkafka/win32/tests/tests.vcxproj +278 -0
- package/deps/librdkafka/win32/win_ssl_cert_store/win_ssl_cert_store.vcxproj +132 -0
- package/deps/librdkafka/win32/wingetopt.c +564 -0
- package/deps/librdkafka/win32/wingetopt.h +101 -0
- package/deps/librdkafka/win32/wintime.h +33 -0
- package/deps/librdkafka.gyp +83 -0
- package/deps/windows-install.py +80 -0
- package/index.d.ts +3 -0
- package/lib/admin.js +732 -0
- package/lib/client.js +679 -0
- package/lib/error.js +501 -0
- package/lib/index.js +8 -0
- package/lib/kafka-consumer-stream.js +399 -0
- package/lib/kafka-consumer.js +798 -0
- package/lib/kafkajs/_admin.js +1052 -0
- package/lib/kafkajs/_common.js +887 -0
- package/lib/kafkajs/_consumer.js +2156 -0
- package/lib/kafkajs/_consumer_cache.js +310 -0
- package/lib/kafkajs/_error.js +298 -0
- package/lib/kafkajs/_kafka.js +125 -0
- package/lib/kafkajs/_linked-list.js +220 -0
- package/lib/kafkajs/_producer.js +863 -0
- package/lib/kafkajs/index.js +5 -0
- package/lib/producer/high-level-producer.js +400 -0
- package/lib/producer-stream.js +337 -0
- package/lib/producer.js +405 -0
- package/lib/rdkafka.js +44 -0
- package/lib/tools/ref-counter.js +53 -0
- package/lib/topic-partition.js +91 -0
- package/lib/topic.js +43 -0
- package/lib/util.js +55 -0
- package/librdkafka.js +12 -0
- package/package.json +85 -0
- package/shim/source_location +54 -0
- package/src/admin.cc +1597 -0
- package/src/admin.h +112 -0
- package/src/binding.cc +76 -0
- package/src/binding.h +25 -0
- package/src/callbacks.cc +676 -0
- package/src/callbacks.h +302 -0
- package/src/common.cc +1628 -0
- package/src/common.h +192 -0
- package/src/config.cc +219 -0
- package/src/config.h +61 -0
- package/src/connection.cc +703 -0
- package/src/connection.h +117 -0
- package/src/errors.cc +119 -0
- package/src/errors.h +60 -0
- package/src/kafka-consumer.cc +1539 -0
- package/src/kafka-consumer.h +147 -0
- package/src/producer.cc +917 -0
- package/src/producer.h +124 -0
- package/src/topic.cc +173 -0
- package/src/topic.h +54 -0
- package/src/workers.cc +1714 -0
- package/src/workers.h +690 -0
- package/types/config.d.ts +1269 -0
- package/types/errors.d.ts +373 -0
- package/types/kafkajs.d.ts +568 -0
- package/types/rdkafka.d.ts +571 -0
- package/util/configure.js +32 -0
- package/util/generate-docs.sh +18 -0
- package/util/get-env.js +6 -0
- package/util/test-compile.js +11 -0
- package/util/test-producer-delivery.js +100 -0
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
#
|
|
3
|
+
|
|
4
|
+
BASHVER=$(expr ${BASH_VERSINFO[0]} \* 1000 + ${BASH_VERSINFO[1]})
|
|
5
|
+
|
|
6
|
+
if [ "$BASHVER" -lt 3002 ]; then
|
|
7
|
+
echo "ERROR: mklove requires bash version 3.2 or later but you are using $BASH_VERSION ($BASHVER)"
|
|
8
|
+
echo " See https://github.com/edenhill/mklove/issues/15"
|
|
9
|
+
exit 1
|
|
10
|
+
fi
|
|
11
|
+
|
|
12
|
+
MKL_CONFIGURE_ARGS="$0 $*"
|
|
13
|
+
|
|
14
|
+
# Load base module
|
|
15
|
+
source mklove/modules/configure.base
|
|
16
|
+
|
|
17
|
+
# Read some special command line options right away that must be known prior to
|
|
18
|
+
# sourcing modules.
|
|
19
|
+
mkl_in_list "$*" "--no-download" && MKL_NO_DOWNLOAD=1
|
|
20
|
+
# Disable downloads when --help is used to avoid blocking calls.
|
|
21
|
+
mkl_in_list "$*" "--help" && MKL_NO_DOWNLOAD=1
|
|
22
|
+
mkl_in_list "$*" "--debug" && MKL_DEBUG=1
|
|
23
|
+
|
|
24
|
+
# This is the earliest possible time to check for color support in
|
|
25
|
+
# terminal because mkl_check_terminal_color_support uses mkl_dbg which
|
|
26
|
+
# needs to know if MKL_DEBUG is set
|
|
27
|
+
mkl_check_terminal_color_support
|
|
28
|
+
|
|
29
|
+
# Delete temporary Makefile and header files on exit.
|
|
30
|
+
trap "{ rm -f $MKL_OUTMK $MKL_OUTH; }" EXIT
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
##
|
|
35
|
+
## Load builtin modules
|
|
36
|
+
##
|
|
37
|
+
|
|
38
|
+
# Builtin options, etc.
|
|
39
|
+
mkl_require builtin
|
|
40
|
+
|
|
41
|
+
# Host/target support
|
|
42
|
+
mkl_require host
|
|
43
|
+
|
|
44
|
+
# Compiler detection
|
|
45
|
+
mkl_require cc
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
# Load application provided modules (in current directory), if any.
|
|
49
|
+
for fname in configure.* ; do
|
|
50
|
+
if [[ $fname = 'configure.*' ]]; then
|
|
51
|
+
continue
|
|
52
|
+
fi
|
|
53
|
+
|
|
54
|
+
# Skip temporary files
|
|
55
|
+
if [[ $fname = *~ ]]; then
|
|
56
|
+
continue
|
|
57
|
+
fi
|
|
58
|
+
|
|
59
|
+
mkl_require $fname
|
|
60
|
+
done
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
##
|
|
66
|
+
## Argument parsing (options)
|
|
67
|
+
##
|
|
68
|
+
##
|
|
69
|
+
|
|
70
|
+
_SAVE_ARGS="$*"
|
|
71
|
+
|
|
72
|
+
# Parse arguments
|
|
73
|
+
while [[ ! -z $@ ]]; do
|
|
74
|
+
if [[ $1 != --* ]]; then
|
|
75
|
+
mkl_err "Unknown non-option argument: $1"
|
|
76
|
+
mkl_usage
|
|
77
|
+
exit 1
|
|
78
|
+
fi
|
|
79
|
+
|
|
80
|
+
opt=${1#--}
|
|
81
|
+
shift
|
|
82
|
+
|
|
83
|
+
if [[ $opt = *=* ]]; then
|
|
84
|
+
name="${opt%%=*}"
|
|
85
|
+
arg="${opt#*=}"
|
|
86
|
+
eqarg=1
|
|
87
|
+
else
|
|
88
|
+
name="$opt"
|
|
89
|
+
arg=""
|
|
90
|
+
eqarg=0
|
|
91
|
+
fi
|
|
92
|
+
|
|
93
|
+
safeopt="$(mkl_env_esc $name)"
|
|
94
|
+
|
|
95
|
+
if ! mkl_func_exists opt_$safeopt ; then
|
|
96
|
+
mkl_err "Unknown option $opt"
|
|
97
|
+
mkl_usage
|
|
98
|
+
exit 1
|
|
99
|
+
fi
|
|
100
|
+
|
|
101
|
+
# Check if this option needs an argument.
|
|
102
|
+
reqarg=$(mkl_meta_get "MKL_OPT_ARGS" "$(mkl_env_esc $name)")
|
|
103
|
+
if [[ ! -z $reqarg ]]; then
|
|
104
|
+
if [[ $eqarg == 0 && -z $arg ]]; then
|
|
105
|
+
arg="$1"
|
|
106
|
+
shift
|
|
107
|
+
|
|
108
|
+
if [[ -z $arg && $reqarg != '\*' ]]; then
|
|
109
|
+
mkl_err "Missing argument to option --$name $reqarg"
|
|
110
|
+
exit 1
|
|
111
|
+
fi
|
|
112
|
+
fi
|
|
113
|
+
else
|
|
114
|
+
if [[ ! -z $arg ]]; then
|
|
115
|
+
mkl_err "Option --$name expects no argument"
|
|
116
|
+
exit 1
|
|
117
|
+
fi
|
|
118
|
+
arg=y
|
|
119
|
+
fi
|
|
120
|
+
|
|
121
|
+
case $name in
|
|
122
|
+
re|reconfigure)
|
|
123
|
+
oldcmd=$(head -1 config.log | grep '^# configure exec: ' | \
|
|
124
|
+
sed -e 's/^\# configure exec: [^ ]*configure//')
|
|
125
|
+
echo "Reconfiguring: $0 $oldcmd"
|
|
126
|
+
exec $0 $oldcmd
|
|
127
|
+
;;
|
|
128
|
+
|
|
129
|
+
list-modules)
|
|
130
|
+
echo "Modules loaded:"
|
|
131
|
+
for mod in $MKL_MODULES ; do
|
|
132
|
+
echo " $mod"
|
|
133
|
+
done
|
|
134
|
+
exit 0
|
|
135
|
+
;;
|
|
136
|
+
|
|
137
|
+
list-checks)
|
|
138
|
+
echo "Check functions in calling order:"
|
|
139
|
+
for mf in $MKL_CHECKS ; do
|
|
140
|
+
mod=${mf%:*}
|
|
141
|
+
func=${mf#*:}
|
|
142
|
+
echo -e "${MKL_GREEN}From module $mod:$MKL_CLR_RESET"
|
|
143
|
+
declare -f $func
|
|
144
|
+
echo ""
|
|
145
|
+
done
|
|
146
|
+
exit 0
|
|
147
|
+
;;
|
|
148
|
+
|
|
149
|
+
update-modules)
|
|
150
|
+
fails=0
|
|
151
|
+
echo "Updating modules"
|
|
152
|
+
for mod in $MKL_MODULES ; do
|
|
153
|
+
echo -n "Updating $mod..."
|
|
154
|
+
if mkl_module_download "$mod" > /dev/null ; then
|
|
155
|
+
echo -e "${MKL_GREEN}ok${MKL_CLR_RESET}"
|
|
156
|
+
else
|
|
157
|
+
echo -e "${MKL_RED}failed${MKL_CLR_RESET}"
|
|
158
|
+
fails=$(expr $fails + 1)
|
|
159
|
+
fi
|
|
160
|
+
done
|
|
161
|
+
exit $fails
|
|
162
|
+
;;
|
|
163
|
+
|
|
164
|
+
help)
|
|
165
|
+
mkl_usage
|
|
166
|
+
exit 0
|
|
167
|
+
;;
|
|
168
|
+
|
|
169
|
+
*)
|
|
170
|
+
opt_$safeopt "$arg" || exit 1
|
|
171
|
+
mkl_var_append MKL_OPTS_SET "$safeopt"
|
|
172
|
+
;;
|
|
173
|
+
esac
|
|
174
|
+
done
|
|
175
|
+
|
|
176
|
+
if [[ ! -z $MKL_CLEAN ]]; then
|
|
177
|
+
mkl_clean
|
|
178
|
+
exit 0
|
|
179
|
+
fi
|
|
180
|
+
|
|
181
|
+
# Move away previous log file
|
|
182
|
+
[[ -f $MKL_OUTDBG ]] && mv $MKL_OUTDBG ${MKL_OUTDBG}.old
|
|
183
|
+
|
|
184
|
+
|
|
185
|
+
# Create output files
|
|
186
|
+
echo "# configure exec: $0 $_SAVE_ARGS" >> $MKL_OUTDBG
|
|
187
|
+
echo "# On $(date)" >> $MKL_OUTDBG
|
|
188
|
+
|
|
189
|
+
rm -f $MKL_OUTMK $MKL_OUTH
|
|
190
|
+
|
|
191
|
+
|
|
192
|
+
# Load cache file
|
|
193
|
+
mkl_cache_read
|
|
194
|
+
|
|
195
|
+
# Run checks
|
|
196
|
+
mkl_checks_run
|
|
197
|
+
|
|
198
|
+
# Check accumulated failures, will not return on failure.
|
|
199
|
+
mkl_check_fails
|
|
200
|
+
|
|
201
|
+
# Generate outputs
|
|
202
|
+
mkl_generate
|
|
203
|
+
|
|
204
|
+
# Summarize what happened
|
|
205
|
+
mkl_summary
|
|
206
|
+
|
|
207
|
+
# Write cache file
|
|
208
|
+
mkl_cache_write
|
|
209
|
+
|
|
210
|
+
|
|
211
|
+
echo ""
|
|
212
|
+
echo "Now type 'make' to build"
|
|
213
|
+
trap - EXIT
|
|
214
|
+
exit 0
|
|
@@ -0,0 +1,341 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
#
|
|
3
|
+
|
|
4
|
+
mkl_meta_set "description" "name" "librdkafka"
|
|
5
|
+
mkl_meta_set "description" "oneline" "The Apache Kafka C/C++ library"
|
|
6
|
+
mkl_meta_set "description" "long" "Full Apache Kafka protocol support, including producer and consumer"
|
|
7
|
+
mkl_meta_set "description" "copyright" "Copyright (c) 2012-2022, Magnus Edenhill, 2023, Confluent Inc."
|
|
8
|
+
|
|
9
|
+
# Enable generation of pkg-config .pc file
|
|
10
|
+
mkl_mkvar_set "" GEN_PKG_CONFIG y
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
mkl_require cxx
|
|
14
|
+
mkl_require lib
|
|
15
|
+
mkl_require pic
|
|
16
|
+
mkl_require atomics
|
|
17
|
+
mkl_require good_cflags
|
|
18
|
+
mkl_require socket
|
|
19
|
+
mkl_require zlib
|
|
20
|
+
mkl_require libzstd
|
|
21
|
+
mkl_require libssl
|
|
22
|
+
mkl_require libsasl2
|
|
23
|
+
mkl_require libcurl
|
|
24
|
+
|
|
25
|
+
# Generate version variables from rdkafka.h hex version define
|
|
26
|
+
# so we can use it as string version when generating a pkg-config file.
|
|
27
|
+
|
|
28
|
+
verdef=$(grep '^#define *RD_KAFKA_VERSION *0x' src/rdkafka.h | sed 's/^#define *RD_KAFKA_VERSION *\(0x[a-f0-9]*\)\.*$/\1/')
|
|
29
|
+
mkl_require parseversion hex2str "%d.%d.%d" "$verdef" RDKAFKA_VERSION_STR
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
mkl_toggle_option "Development" ENABLE_DEVEL "--enable-devel" "Enable development asserts, checks, etc" "n"
|
|
33
|
+
mkl_toggle_option "Development" ENABLE_VALGRIND "--enable-valgrind" "Enable in-code valgrind suppressions" "n"
|
|
34
|
+
|
|
35
|
+
mkl_toggle_option "Development" ENABLE_REFCNT_DEBUG "--enable-refcnt-debug" "Enable refcnt debugging" "n"
|
|
36
|
+
|
|
37
|
+
mkl_toggle_option "Feature" ENABLE_LZ4_EXT "--enable-lz4-ext" "Enable external LZ4 library support (builtin version 1.9.4)" "y"
|
|
38
|
+
mkl_toggle_option "Feature" ENABLE_LZ4_EXT "--enable-lz4" "Deprecated: alias for --enable-lz4-ext" "y"
|
|
39
|
+
|
|
40
|
+
mkl_toggle_option "Feature" ENABLE_REGEX_EXT "--enable-regex-ext" "Enable external (libc) regex (else use builtin)" "y"
|
|
41
|
+
|
|
42
|
+
# librdkafka with TSAN won't work with glibc C11 threads on Ubuntu 19.04.
|
|
43
|
+
# This option allows disabling libc-based C11 threads and instead
|
|
44
|
+
# use the builtin tinycthread alternative.
|
|
45
|
+
mkl_toggle_option "Feature" ENABLE_C11THREADS "--enable-c11threads" "Enable detection of C11 threads support in libc" "try"
|
|
46
|
+
|
|
47
|
+
mkl_toggle_option "Feature" ENABLE_SYSLOG "--enable-syslog" "Enable logging to syslog" "y"
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
function checks {
|
|
51
|
+
|
|
52
|
+
# -lrt is needed on linux for clock_gettime: link it if it exists.
|
|
53
|
+
mkl_lib_check "librt" "" cont CC "-lrt"
|
|
54
|
+
|
|
55
|
+
# pthreads required (even if C11 threads available) for rwlocks.
|
|
56
|
+
mkl_lib_check "libpthread" "" fail CC "-lpthread" \
|
|
57
|
+
"#include <pthread.h>"
|
|
58
|
+
|
|
59
|
+
if [[ $ENABLE_C11THREADS != n ]]; then
|
|
60
|
+
case "$ENABLE_C11THREADS" in
|
|
61
|
+
y) local action=fail ;;
|
|
62
|
+
try) local action=disable ;;
|
|
63
|
+
*) mkl_err "mklove internal error: invalid value for ENABLE_C11THREADS: $ENABLE_C11THREADS"; exit 1 ;;
|
|
64
|
+
esac
|
|
65
|
+
# Use internal tinycthread if C11 threads not available.
|
|
66
|
+
# Requires -lpthread on glibc c11 threads, thus the use of $LIBS.
|
|
67
|
+
mkl_lib_check "c11threads" WITH_C11THREADS $action CC "$LIBS" \
|
|
68
|
+
"
|
|
69
|
+
#include <threads.h>
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
static int start_func (void *arg) {
|
|
73
|
+
int iarg = *(int *)arg;
|
|
74
|
+
return iarg;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
void foo (void) {
|
|
78
|
+
thrd_t thr;
|
|
79
|
+
int arg = 1;
|
|
80
|
+
if (thrd_create(&thr, start_func, (void *)&arg) != thrd_success) {
|
|
81
|
+
;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
"
|
|
85
|
+
fi
|
|
86
|
+
|
|
87
|
+
# Check if dlopen() is available
|
|
88
|
+
mkl_lib_check "libdl" "WITH_LIBDL" disable CC "-ldl" \
|
|
89
|
+
"
|
|
90
|
+
#include <stdlib.h>
|
|
91
|
+
#include <dlfcn.h>
|
|
92
|
+
void foo (void) {
|
|
93
|
+
void *h = dlopen(\"__bad_lib\", 0);
|
|
94
|
+
void *p = dlsym(h, \"sym\");
|
|
95
|
+
if (p)
|
|
96
|
+
p = NULL;
|
|
97
|
+
dlclose(h);
|
|
98
|
+
}"
|
|
99
|
+
|
|
100
|
+
if [[ $WITH_LIBDL == "y" ]]; then
|
|
101
|
+
mkl_allvar_set WITH_PLUGINS WITH_PLUGINS y
|
|
102
|
+
fi
|
|
103
|
+
|
|
104
|
+
# optional libs
|
|
105
|
+
mkl_check "zlib"
|
|
106
|
+
mkl_check "libssl"
|
|
107
|
+
mkl_check "libsasl2"
|
|
108
|
+
mkl_check "libzstd"
|
|
109
|
+
mkl_check "libcurl"
|
|
110
|
+
|
|
111
|
+
if mkl_lib_check "libm" "" disable CC "-lm" \
|
|
112
|
+
"#include <math.h>"; then
|
|
113
|
+
mkl_allvar_set WITH_HDRHISTOGRAM WITH_HDRHISTOGRAM y
|
|
114
|
+
fi
|
|
115
|
+
|
|
116
|
+
# Use builtin lz4 if linking statically or if --disable-lz4-ext is used.
|
|
117
|
+
if [[ $MKL_SOURCE_DEPS_ONLY != y ]] && [[ $WITH_STATIC_LINKING != y ]] && [[ $ENABLE_LZ4_EXT == y ]]; then
|
|
118
|
+
mkl_meta_set "liblz4" "static" "liblz4.a"
|
|
119
|
+
mkl_lib_check "liblz4" "WITH_LZ4_EXT" disable CC "-llz4" \
|
|
120
|
+
"#include <lz4frame.h>"
|
|
121
|
+
fi
|
|
122
|
+
|
|
123
|
+
if [[ $ENABLE_SYSLOG == y ]]; then
|
|
124
|
+
mkl_compile_check "syslog" "WITH_SYSLOG" disable CC "" \
|
|
125
|
+
'
|
|
126
|
+
#include <syslog.h>
|
|
127
|
+
void foo (void) {
|
|
128
|
+
syslog(LOG_INFO, "test");
|
|
129
|
+
}'
|
|
130
|
+
fi
|
|
131
|
+
|
|
132
|
+
# rapidjson (>=1.1.0) is used in tests to verify statistics data, not used
|
|
133
|
+
# by librdkafka itself.
|
|
134
|
+
mkl_compile_check "rapidjson" "WITH_RAPIDJSON" disable CXX "" \
|
|
135
|
+
"#include <rapidjson/schema.h>"
|
|
136
|
+
|
|
137
|
+
# Snappy support is built-in
|
|
138
|
+
mkl_allvar_set WITH_SNAPPY WITH_SNAPPY y
|
|
139
|
+
|
|
140
|
+
# Enable sockem (tests)
|
|
141
|
+
mkl_allvar_set WITH_SOCKEM WITH_SOCKEM y
|
|
142
|
+
|
|
143
|
+
if [[ "$WITH_SSL" == "y" ]]; then
|
|
144
|
+
# SASL SCRAM requires base64 encoding from OpenSSL
|
|
145
|
+
mkl_allvar_set WITH_SASL_SCRAM WITH_SASL_SCRAM y
|
|
146
|
+
# SASL OAUTHBEARER's default unsecured JWS implementation
|
|
147
|
+
# requires base64 encoding from OpenSSL
|
|
148
|
+
mkl_allvar_set WITH_SASL_OAUTHBEARER WITH_SASL_OAUTHBEARER y
|
|
149
|
+
|
|
150
|
+
if [[ $WITH_CURL == y ]]; then
|
|
151
|
+
mkl_allvar_set WITH_OAUTHBEARER_OIDC WITH_OAUTHBEARER_OIDC y
|
|
152
|
+
fi
|
|
153
|
+
fi
|
|
154
|
+
|
|
155
|
+
# CRC32C: check for crc32 instruction support.
|
|
156
|
+
# This is also checked during runtime using cpuid.
|
|
157
|
+
mkl_compile_check crc32chw WITH_CRC32C_HW disable CC "" \
|
|
158
|
+
"
|
|
159
|
+
#include <inttypes.h>
|
|
160
|
+
#include <stdio.h>
|
|
161
|
+
#define LONGx1 \"8192\"
|
|
162
|
+
#define LONGx2 \"16384\"
|
|
163
|
+
void foo (void) {
|
|
164
|
+
const char *n = \"abcdefghijklmnopqrstuvwxyz0123456789\";
|
|
165
|
+
uint64_t c0 = 0, c1 = 1, c2 = 2;
|
|
166
|
+
uint64_t s;
|
|
167
|
+
uint32_t eax = 1, ecx;
|
|
168
|
+
__asm__(\"cpuid\"
|
|
169
|
+
: \"=c\"(ecx)
|
|
170
|
+
: \"a\"(eax)
|
|
171
|
+
: \"%ebx\", \"%edx\");
|
|
172
|
+
__asm__(\"crc32b\t\" \"(%1), %0\"
|
|
173
|
+
: \"=r\"(c0)
|
|
174
|
+
: \"r\"(n), \"0\"(c0));
|
|
175
|
+
__asm__(\"crc32q\t\" \"(%3), %0\n\t\"
|
|
176
|
+
\"crc32q\t\" LONGx1 \"(%3), %1\n\t\"
|
|
177
|
+
\"crc32q\t\" LONGx2 \"(%3), %2\"
|
|
178
|
+
: \"=r\"(c0), \"=r\"(c1), \"=r\"(c2)
|
|
179
|
+
: \"r\"(n), \"0\"(c0), \"1\"(c1), \"2\"(c2));
|
|
180
|
+
s = c0 + c1 + c2;
|
|
181
|
+
printf(\"avoiding unused code removal by printing %d, %d, %d\n\", (int)s, (int)eax, (int)ecx);
|
|
182
|
+
}
|
|
183
|
+
"
|
|
184
|
+
|
|
185
|
+
|
|
186
|
+
# Check for libc regex
|
|
187
|
+
if [[ $ENABLE_REGEX_EXT == y ]]; then
|
|
188
|
+
mkl_compile_check "regex" "HAVE_REGEX" disable CC "" \
|
|
189
|
+
"
|
|
190
|
+
#include <stddef.h>
|
|
191
|
+
#include <regex.h>
|
|
192
|
+
void foo (void) {
|
|
193
|
+
regcomp(NULL, NULL, 0);
|
|
194
|
+
regexec(NULL, NULL, 0, NULL, 0);
|
|
195
|
+
regerror(0, NULL, NULL, 0);
|
|
196
|
+
regfree(NULL);
|
|
197
|
+
}"
|
|
198
|
+
fi
|
|
199
|
+
|
|
200
|
+
# Older g++ (<=4.1?) gives invalid warnings for the C++ code.
|
|
201
|
+
mkl_mkvar_append CXXFLAGS CXXFLAGS "-Wno-non-virtual-dtor"
|
|
202
|
+
|
|
203
|
+
# Required on SunOS
|
|
204
|
+
if [[ $MKL_DISTRO == "sunos" ]]; then
|
|
205
|
+
mkl_mkvar_append CPPFLAGS CPPFLAGS "-D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -D__EXTENSIONS__"
|
|
206
|
+
# Source defines _POSIX_C_SOURCE to 200809L for Solaris, and this is
|
|
207
|
+
# incompatible on that platform with compilers < c99.
|
|
208
|
+
mkl_mkvar_append CFLAGS CFLAGS "-std=c99"
|
|
209
|
+
fi
|
|
210
|
+
|
|
211
|
+
# Check if rand_r() is available
|
|
212
|
+
mkl_compile_check "rand_r" "HAVE_RAND_R" disable CC "" \
|
|
213
|
+
"#include <stdlib.h>
|
|
214
|
+
void foo (void) {
|
|
215
|
+
unsigned int seed = 0xbeaf;
|
|
216
|
+
(void)rand_r(&seed);
|
|
217
|
+
}"
|
|
218
|
+
|
|
219
|
+
# Check if getentropy() is available
|
|
220
|
+
mkl_compile_check "getentropy" "HAVE_GETENTROPY" disable CC "" \
|
|
221
|
+
"#define _DEFAULT_SOURCE
|
|
222
|
+
#include <unistd.h>
|
|
223
|
+
#include <sys/random.h>
|
|
224
|
+
int foo (void) {
|
|
225
|
+
char seed[16];
|
|
226
|
+
return getentropy((void *)seed, sizeof(seed));
|
|
227
|
+
}"
|
|
228
|
+
|
|
229
|
+
# Check if strndup() is available (isn't on Solaris 10)
|
|
230
|
+
mkl_compile_check "strndup" "HAVE_STRNDUP" disable CC "" \
|
|
231
|
+
"#include <string.h>
|
|
232
|
+
int foo (void) {
|
|
233
|
+
return strndup(\"hi\", 2) ? 0 : 1;
|
|
234
|
+
}"
|
|
235
|
+
|
|
236
|
+
# Check if strlcpy() is available
|
|
237
|
+
mkl_compile_check "strlcpy" "HAVE_STRLCPY" disable CC "" \
|
|
238
|
+
"
|
|
239
|
+
#define _DARWIN_C_SOURCE
|
|
240
|
+
#include <string.h>
|
|
241
|
+
int foo (void) {
|
|
242
|
+
char dest[4];
|
|
243
|
+
return strlcpy(dest, \"something\", sizeof(dest));
|
|
244
|
+
}"
|
|
245
|
+
|
|
246
|
+
# Check if strerror_r() is available.
|
|
247
|
+
# The check for GNU vs XSI is done in rdposix.h since
|
|
248
|
+
# we can't rely on all defines to be set here (_GNU_SOURCE).
|
|
249
|
+
mkl_compile_check "strerror_r" "HAVE_STRERROR_R" disable CC "" \
|
|
250
|
+
"#include <string.h>
|
|
251
|
+
const char *foo (void) {
|
|
252
|
+
static char buf[64];
|
|
253
|
+
strerror_r(1, buf, sizeof(buf));
|
|
254
|
+
return buf;
|
|
255
|
+
}"
|
|
256
|
+
|
|
257
|
+
# Check if strcasestr() is available.
|
|
258
|
+
mkl_compile_check "strcasestr" "HAVE_STRCASESTR" disable CC "" \
|
|
259
|
+
"
|
|
260
|
+
#define _GNU_SOURCE
|
|
261
|
+
#include <string.h>
|
|
262
|
+
char *foo (const char *needle) {
|
|
263
|
+
return strcasestr(\"the hay\", needle);
|
|
264
|
+
}"
|
|
265
|
+
|
|
266
|
+
|
|
267
|
+
# See if GNU's pthread_setname_np() is available, and in what form.
|
|
268
|
+
mkl_compile_check "pthread_setname_gnu" "HAVE_PTHREAD_SETNAME_GNU" disable CC "-D_GNU_SOURCE -lpthread" \
|
|
269
|
+
'
|
|
270
|
+
#include <pthread.h>
|
|
271
|
+
|
|
272
|
+
void foo (void) {
|
|
273
|
+
pthread_setname_np(pthread_self(), "abc");
|
|
274
|
+
}
|
|
275
|
+
' || \
|
|
276
|
+
mkl_compile_check "pthread_setname_darwin" "HAVE_PTHREAD_SETNAME_DARWIN" disable CC "-D_DARWIN_C_SOURCE -lpthread" \
|
|
277
|
+
'
|
|
278
|
+
#include <pthread.h>
|
|
279
|
+
|
|
280
|
+
void foo (void) {
|
|
281
|
+
pthread_setname_np("abc");
|
|
282
|
+
}
|
|
283
|
+
' || \
|
|
284
|
+
mkl_compile_check "pthread_setname_freebsd" "HAVE_PTHREAD_SETNAME_FREEBSD" disable CC "-lpthread" \
|
|
285
|
+
'
|
|
286
|
+
#include <pthread.h>
|
|
287
|
+
#include <pthread_np.h>
|
|
288
|
+
|
|
289
|
+
void foo (void) {
|
|
290
|
+
pthread_set_name_np(pthread_self(), "abc");
|
|
291
|
+
}
|
|
292
|
+
'
|
|
293
|
+
|
|
294
|
+
# Figure out what tool to use for dumping public symbols.
|
|
295
|
+
# We rely on configure.cc setting up $NM if it exists.
|
|
296
|
+
if mkl_env_check "nm" "" cont "NM" ; then
|
|
297
|
+
# nm by future mk var
|
|
298
|
+
if [[ $MKL_DISTRO == "osx" || $MKL_DISTRO == "aix" ]]; then
|
|
299
|
+
mkl_mkvar_set SYMDUMPER SYMDUMPER '$(NM) -g'
|
|
300
|
+
else
|
|
301
|
+
mkl_mkvar_set SYMDUMPER SYMDUMPER '$(NM) -D'
|
|
302
|
+
fi
|
|
303
|
+
else
|
|
304
|
+
# Fake symdumper
|
|
305
|
+
mkl_mkvar_set SYMDUMPER SYMDUMPER 'echo'
|
|
306
|
+
fi
|
|
307
|
+
|
|
308
|
+
# The linker-script generator (lds-gen.py) requires python3
|
|
309
|
+
if [[ $WITH_LDS == y ]]; then
|
|
310
|
+
if ! mkl_command_check python3 "HAVE_PYTHON" "disable" "python3 -V"; then
|
|
311
|
+
mkl_err "disabling linker-script since python3 is not available"
|
|
312
|
+
mkl_mkvar_set WITH_LDS WITH_LDS "n"
|
|
313
|
+
fi
|
|
314
|
+
fi
|
|
315
|
+
|
|
316
|
+
if [[ "$ENABLE_VALGRIND" == "y" ]]; then
|
|
317
|
+
mkl_compile_check valgrind WITH_VALGRIND fail CC "" \
|
|
318
|
+
"#include <valgrind/memcheck.h>"
|
|
319
|
+
fi
|
|
320
|
+
|
|
321
|
+
# getrusage() is used by the test framework
|
|
322
|
+
mkl_compile_check "getrusage" "HAVE_GETRUSAGE" disable CC "" \
|
|
323
|
+
'
|
|
324
|
+
#include <stdio.h>
|
|
325
|
+
#include <sys/time.h>
|
|
326
|
+
#include <sys/resource.h>
|
|
327
|
+
|
|
328
|
+
|
|
329
|
+
void foo (void) {
|
|
330
|
+
struct rusage ru;
|
|
331
|
+
if (getrusage(RUSAGE_SELF, &ru) == -1)
|
|
332
|
+
return;
|
|
333
|
+
printf("ut %ld, st %ld, maxrss %ld, nvcsw %ld\n",
|
|
334
|
+
(long int)ru.ru_utime.tv_usec,
|
|
335
|
+
(long int)ru.ru_stime.tv_usec,
|
|
336
|
+
(long int)ru.ru_maxrss,
|
|
337
|
+
(long int)ru.ru_nvcsw);
|
|
338
|
+
}'
|
|
339
|
+
|
|
340
|
+
}
|
|
341
|
+
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
#
|
|
3
|
+
# librdkafka - Apache Kafka C library
|
|
4
|
+
#
|
|
5
|
+
# Copyright (c) 2018-2022, Magnus Edenhill
|
|
6
|
+
# All rights reserved.
|
|
7
|
+
#
|
|
8
|
+
# Redistribution and use in source and binary forms, with or without
|
|
9
|
+
# modification, are permitted provided that the following conditions are met:
|
|
10
|
+
#
|
|
11
|
+
# 1. Redistributions of source code must retain the above copyright notice,
|
|
12
|
+
# this list of conditions and the following disclaimer.
|
|
13
|
+
# 2. Redistributions in binary form must reproduce the above copyright notice,
|
|
14
|
+
# this list of conditions and the following disclaimer in the documentation
|
|
15
|
+
# and/or other materials provided with the distribution.
|
|
16
|
+
#
|
|
17
|
+
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
|
18
|
+
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
19
|
+
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
20
|
+
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
|
|
21
|
+
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
|
22
|
+
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
|
23
|
+
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
|
24
|
+
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
|
25
|
+
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
|
26
|
+
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
27
|
+
# POSSIBILITY OF SUCH DAMAGE.
|
|
28
|
+
#
|
|
29
|
+
|
|
30
|
+
#
|
|
31
|
+
# Configure librdkafka for development
|
|
32
|
+
#
|
|
33
|
+
# Usage:
|
|
34
|
+
# ./dev-conf.sh - Build with settings in dev-conf.sh
|
|
35
|
+
# ./dev-conf.sh asan|tsan - ... and ASAN or TSAN
|
|
36
|
+
# ./dev-conf.sh clean - Non-development clean build
|
|
37
|
+
#
|
|
38
|
+
|
|
39
|
+
set -e
|
|
40
|
+
|
|
41
|
+
build () {
|
|
42
|
+
local btype="$1"
|
|
43
|
+
local opts="$2"
|
|
44
|
+
|
|
45
|
+
echo "$btype configuration options: $opts"
|
|
46
|
+
./configure --clean
|
|
47
|
+
./configure $opts
|
|
48
|
+
|
|
49
|
+
make clean
|
|
50
|
+
make -j
|
|
51
|
+
(cd tests ; make -j build)
|
|
52
|
+
|
|
53
|
+
echo "$btype build done"
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
OPTS=""
|
|
57
|
+
|
|
58
|
+
case "$1" in
|
|
59
|
+
clean)
|
|
60
|
+
build Clean
|
|
61
|
+
exit $?
|
|
62
|
+
;;
|
|
63
|
+
asan)
|
|
64
|
+
FSAN='-fsanitize=address'
|
|
65
|
+
;;
|
|
66
|
+
tsan)
|
|
67
|
+
FSAN='-fsanitize=thread'
|
|
68
|
+
# C11 threads in glibc don't play nice with TSAN,
|
|
69
|
+
# so use the builtin tinycthreads instead.
|
|
70
|
+
OPTS="$OPTS --disable-c11threads"
|
|
71
|
+
;;
|
|
72
|
+
ubsan)
|
|
73
|
+
FSAN='-fsanitize=undefined -fsanitize-undefined-trap-on-error -fno-omit-frame-pointer'
|
|
74
|
+
;;
|
|
75
|
+
gprof)
|
|
76
|
+
# gprof
|
|
77
|
+
OPTS="$OPTS --enable-profiling"
|
|
78
|
+
;;
|
|
79
|
+
"")
|
|
80
|
+
;;
|
|
81
|
+
*)
|
|
82
|
+
echo "Usage: $0 [clean|asan|tsan|ubsan|gprof]"
|
|
83
|
+
exit 1
|
|
84
|
+
;;
|
|
85
|
+
esac
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
if [[ $1 != clean ]]; then
|
|
89
|
+
# enable strict C99, C++98 checks.
|
|
90
|
+
export CFLAGS="$CFLAGS -std=c99"
|
|
91
|
+
export CXXFLAGS="$CXXFLAGS -std=c++98"
|
|
92
|
+
fi
|
|
93
|
+
|
|
94
|
+
# enable variable shadow warnings
|
|
95
|
+
#export CFLAGS="$CFLAGS -Wshadow=compatible-local -Wshadow=local"
|
|
96
|
+
#export CXXFLAGS="$CXXFLAGS -Wshadow=compatible-local -Wshadow=local"
|
|
97
|
+
|
|
98
|
+
# enable pedantic
|
|
99
|
+
#export CFLAGS='-pedantic'
|
|
100
|
+
#export CXXFLAGS='-pedantic'
|
|
101
|
+
|
|
102
|
+
if [[ ! -z $FSAN ]]; then
|
|
103
|
+
export CPPFLAGS="$CPPFLAGS $FSAN"
|
|
104
|
+
export LDFLAGS="$LDFLAGS $FSAN"
|
|
105
|
+
fi
|
|
106
|
+
|
|
107
|
+
# enable devel asserts
|
|
108
|
+
OPTS="$OPTS --enable-devel"
|
|
109
|
+
|
|
110
|
+
# disable optimizations
|
|
111
|
+
OPTS="$OPTS --disable-optimization"
|
|
112
|
+
|
|
113
|
+
# disable lz4
|
|
114
|
+
#OPTS="$OPTS --disable-lz4"
|
|
115
|
+
|
|
116
|
+
# disable cyrus-sasl
|
|
117
|
+
#OPTS="$OPTS --disable-sasl"
|
|
118
|
+
|
|
119
|
+
#enable refcnt debugging
|
|
120
|
+
#OPTS="$OPTS --enable-refcnt-debug"
|
|
121
|
+
|
|
122
|
+
build Development "$OPTS"
|
|
123
|
+
|