Add a platform init daemon
This commit adds a daemon that can initialize platforms, and adds in the
requisite CLI interfaces to be able to add new platforms in the future.
Change-Id: If4a801fe38e9f4141737d2b5c8b494dc00bf4d59
Signed-off-by: Ed Tanous <etanous@nvidia.com>
diff --git a/meson.build b/meson.build
new file mode 100644
index 0000000..26dbac2
--- /dev/null
+++ b/meson.build
@@ -0,0 +1,33 @@
+project(
+ 'platform-init',
+ 'cpp',
+ meson_version: '>=1.7.0',
+ version: '0.1',
+ default_options: ['warning_level=3', 'cpp_std=c++23'],
+)
+
+gpiodcxx_dep = dependency('libgpiodcxx', default_options: ['bindings=cxx'])
+systemd_dep = dependency('systemd')
+libsystemd_dep = dependency('libsystemd')
+
+cli11_dep = dependency('CLI11', required: true, include_type: 'system')
+
+exe = executable(
+ 'platform',
+ 'platform.cpp',
+ dependencies: [gpiodcxx_dep, libsystemd_dep, cli11_dep],
+ include_directories: ['.'],
+ install: true,
+ install_dir: get_option('libexecdir'),
+)
+
+systemd_system_unit_dir = systemd_dep.get_variable('systemd_system_unit_dir')
+configure_file(
+ input: 'platform_init.service.in',
+ output: 'platform_init.service',
+ install_dir: systemd_system_unit_dir,
+ install: true,
+ configuration: configuration_data(
+ {'PLATFORM_NAME': get_option('platform-name')},
+ ),
+)