subdir('meson' / 'platform') # Platform detection
subdir('meson' / 'timet-size') # Check the size of time_t
subdir('meson' / 'timet-sign') # Check the sign of time_t
-subdir('meson' / 'ragel') # Find ragel and create generator
subdir('meson' / 'atomics') # Check atomics support
subdir('meson' / 'pthread-headers') # Check pthread headers
subdir('meson' / 'pthread-setname') # Pthread setname madness
+++ /dev/null
-ragel = find_program('ragel', required: false)
-
-summary('Ragel', ragel.found(), bool_yn: ragel.found(), section: 'Programs')
-summary('Ragel Path', ragel.full_path(), section: 'Programs')
-summary('Ragel Version', ragel.version(), section: 'Programs')
-
-ragel_generator = generator(
- ragel,
- output: '@BASENAME@.cc',
- arguments: ['@INPUT@', '-o', '@OUTPUT@'],
-)
)
)
+libpdns_dnslabeltext_cc = 'dnslabeltext.cc'
+if not fs.is_file(libpdns_dnslabeltext_cc)
+ ragel = find_program('ragel', required: true)
+ ragel_generator = generator(
+ ragel,
+ output: '@BASENAME@.cc',
+ arguments: ['@INPUT@', '-o', '@OUTPUT@'],
+ )
+
+ summary('Ragel', ragel.found(), bool_yn: ragel.found(), section: 'DNS Labels')
+ summary('Ragel Path', ragel.full_path(), section: 'DNS Labels')
+ summary('Ragel Version', ragel.version(), section: 'DNS Labels')
+
+ libpdns_dnslabeltext_cc = ragel_generator.process('dnslabeltext.rl')
+endif
+
libpdns = declare_dependency(
link_with: static_library(
'pdns',
'uuid-utils.cc',
'version.cc',
'zoneparser-tng.cc',
- fs.is_file('dnslabeltext.cc') ? 'dnslabeltext.cc' : ragel_generator.process('dnslabeltext.rl'),
+ libpdns_dnslabeltext_cc,
extra_files: [
'arguments.hh',
'axfr-retriever.hh',