-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmeson.build
More file actions
41 lines (33 loc) · 1.34 KB
/
meson.build
File metadata and controls
41 lines (33 loc) · 1.34 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
project('system', 'cpp', version: '0.1.0')
grub_cfg = '../drivers/core/x64/grub.cfg'
# Libraries
subdir('libs/libcxx')
subdir('libs/libsystem')
# Drivers
subdir('drivers/core/x64')
subdir('drivers/ps2_keyboard')
subdir('drivers/vga')
# Applications
subdir('apps/monitor')
iso_x64 = custom_target('iso_x64',
input: [core_x64_bin, monitor_bin],
output: 'system.iso',
command: ['mkdir', '-p', 'iso/boot/grub', '&&',
'cp', grub_cfg, 'iso/boot/grub', '&&',
'cp', '@INPUT@', 'iso/boot', '&&',
'grub-mkrescue', '--quiet', '-o', '@OUTPUT@', 'iso'],
install: true,
install_dir: 'build')
doxygen = find_program('doxygen')
doxygen_data = configuration_data()
doxygen_data.set('TOP_SRCDIR', meson.source_root())
doxygen_data.set('TOP_BUILDDIR', meson.build_root())
doxygen_data.set('OUTPUT_DIR', join_paths(meson.source_root(), 'docs/doxygen'))
doxygen_data.set('README_PATH', join_paths(meson.source_root(), 'README.md'))
doxygen_data.set('VERSION', meson.project_version())
doxygen_data.set('PROJECT_NAME', meson.project_name())
doxyfile = configure_file(input: 'tools/Doxyfile.in',
output: 'Doxyfile',
configuration: doxygen_data,
install: false)
docs_target = run_target('docs', command: [doxygen, doxyfile])