blob: 722019f5d178ba7664e4574ad8afb0aef2c6ee45 [file] [log] [blame]
Ed Tanous2b314e42025-08-19 15:46:18 -07001project(
2 'platform-init',
3 'cpp',
4 meson_version: '>=1.7.0',
5 version: '0.1',
6 default_options: ['warning_level=3', 'cpp_std=c++23'],
7)
8
9gpiodcxx_dep = dependency('libgpiodcxx', default_options: ['bindings=cxx'])
10systemd_dep = dependency('systemd')
11libsystemd_dep = dependency('libsystemd')
12
13cli11_dep = dependency('CLI11', required: true, include_type: 'system')
14
Marc Olberding801bc902025-08-27 12:55:42 -070015platform_srcs = files('nvidia/gb200.cpp')
16util_srcs = files('gpio.cpp', 'i2c.cpp', 'utilities.cpp')
17
Ed Tanous2b314e42025-08-19 15:46:18 -070018exe = executable(
19 'platform',
Marc Olberding801bc902025-08-27 12:55:42 -070020 ['platform.cpp'] + platform_srcs + util_srcs,
Ed Tanous2b314e42025-08-19 15:46:18 -070021 dependencies: [gpiodcxx_dep, libsystemd_dep, cli11_dep],
Marc Olberding801bc902025-08-27 12:55:42 -070022 include_directories: ['.', 'nvidia'],
Ed Tanous2b314e42025-08-19 15:46:18 -070023 install: true,
24 install_dir: get_option('libexecdir'),
25)
26
27systemd_system_unit_dir = systemd_dep.get_variable('systemd_system_unit_dir')
28configure_file(
29 input: 'platform_init.service.in',
30 output: 'platform_init.service',
31 install_dir: systemd_system_unit_dir,
32 install: true,
33 configuration: configuration_data(
34 {'PLATFORM_NAME': get_option('platform-name')},
35 ),
36)