Index: meson/part/extra_targets/meson.build
===================================================================
--- meson/part/extra_targets/meson.build	(revision d39ce97d54ee47ae89431d7d8707247dfc626d00)
+++ meson/part/extra_targets/meson.build	(revision be9702e0a01a981ee93bb4dcc99df084904de4b4)
@@ -57,18 +57,20 @@
 endif
 
-_patch_file = files('doxygen.cfg.diff')
+if doxygen.found()
+	_patch_file = files('doxygen.cfg.diff')
 
-_gen_cfg = custom_target('doxygen.cfg.gen',
-	output: 'doxygen.cfg.gen',
-	command: [ doxygen, '-g', '@OUTPUT@' ],
-)
+	_gen_cfg = custom_target('doxygen.cfg.gen',
+		output: 'doxygen.cfg.gen',
+		command: [ doxygen, '-g', '@OUTPUT@' ],
+	)
 
-_dox_cfg = custom_target('doxygen.cfg',
-	output: 'doxygen.cfg',
-	input: [ _gen_cfg, _patch_file ],
-	command: [ patch, '-o', '@OUTPUT@', '@INPUT@' ],
-)
+	_dox_cfg = custom_target('doxygen.cfg',
+		output: 'doxygen.cfg',
+		input: [ _gen_cfg, _patch_file ],
+		command: [ patch, '-o', '@OUTPUT@', '@INPUT@' ],
+	)
 
-run_target('doxygen', command: [ doxygen, _dox_cfg ])
+	run_target('doxygen', command: [ doxygen, _dox_cfg ])
+endif
 
 # TODO text-xcw
Index: meson/part/tools/meson.build
===================================================================
--- meson/part/tools/meson.build	(revision d39ce97d54ee47ae89431d7d8707247dfc626d00)
+++ meson/part/tools/meson.build	(revision be9702e0a01a981ee93bb4dcc99df084904de4b4)
@@ -40,5 +40,5 @@
 cp = find_program('cp')
 dirname = find_program('dirname')
-doxygen = find_program('doxygen')
+doxygen = find_program('doxygen', required: false)
 find = find_program('find')
 grep = find_program('grep')
