Index: kernel/meson.build
===================================================================
--- kernel/meson.build	(revision 740e9527595cfbfad00f55ea5c977300666b8ab5)
+++ kernel/meson.build	(revision b2695b939449fec6cfdf61b4b470205152d1316d)
@@ -127,9 +127,9 @@
 foreach iter : iterations
 	is_last = (iter == iterations.length())
-	kernel_name = is_last ? 'kernel' : 'kernel.@0@'.format(iter)
+	kernel_name = 'kernel.@0@.elf'.format(iter)
 	kernel_map_name = kernel_name + '.map'
 	kernel_map_path = meson.current_build_dir() / kernel_map_name
 
-	kernel_elf = executable(kernel_name + '.elf', kernel_map_S,
+	kernel_elf = executable(kernel_name, kernel_map_S,
 		include_directories: kernel_include_dirs,
 		implicit_include_directories: false,
@@ -167,9 +167,10 @@
 
 install_files += [[ 'boot', kernel_elf.full_path(), 'kernel.elf' ]]
+install_deps += [ kernel_elf ]
 
-kernel_disasm = custom_target(kernel_name + '.disasm',
+kernel_disasm = custom_target('kernel.elf.disasm',
 	command: [ objdump, '-S', '@INPUT@' ],
 	input: kernel_elf,
-	output: kernel_name + '.disasm',
+	output: 'kernel.elf.disasm',
 	capture: true,
 	build_by_default: true,
@@ -179,3 +180,4 @@
 if false
 	install_files += [[ 'boot', kernel_disasm.full_path(), 'kernel.elf.disasm' ]]
+	install_deps += [ kernel_disasm ]
 endif
