src_dir / 'mtasker_context.cc',
src_dir / 'negcache.cc',
src_dir / 'nsecrecords.cc',
- src_dir / 'pollmplexer.cc',
src_dir / 'protozero.cc',
src_dir / 'proxy-protocol.cc',
src_dir / 'pubsuffixloader.cc',
endif
endforeach
+mplexer_sources = [src_dir / 'pollmplexer.cc']
+if have_linux
+ mplexer_sources += src_dir / 'epollmplexer.cc'
+endif
+if have_darwin
+ mplexer_sources += src_dir / 'kqueuemplexer.cc'
+endif
+if have_openbsd
+ mplexer_sources += src_dir / 'kqueuemplexer.cc'
+endif
+if have_freebsd
+ mplexer_sources += src_dir / 'kqueuemplexer.cc'
+endif
+if have_sunos
+ mplexer_sources += src_dir / 'devpollmplexer.cc'
+ mplexer_sources += src_dir / 'portsmplexer.cc'
+endif
+
# Generate config.h
config_h = configure_file(configuration: conf, output: 'config.h')
src_dir / 'rec-tcpout.cc',
src_dir / 'rec-snmp.cc',
src_dir / 'rec-tcp.cc',
+ mplexer_sources,
],
'manpages': ['pdns_recursor.1'],
'deps-extra': [
'testrunner': {
'main': [
src_dir / 'testrunner.cc',
+ mplexer_sources,
],
'deps-extra': [
librec_test,