1systemd_system_unit_dir = systemd_dep.get_variable('systemdsystemunitdir') 2busconfig_dir = get_option('datadir') / 'dbus-1' / 'system.d' 3cert_manager_dir = get_option('datadir') / 'phosphor-certificate-manager' 4 5certs = [] 6busconfig = [] 7service_files = ['phosphor-certificate-manager@.service'] 8systemd_alias = [] 9 10if get_option('ca-cert-extension').allowed() 11 busconfig += 'busconfig/bmc-vmi-ca.conf' 12 service_files += 'bmc-vmi-ca-manager.service' 13endif 14 15if get_option('config-bmcweb').allowed() 16 busconfig += 'busconfig/phosphor-bmcweb-cert-config.conf' 17 certs += 'env/bmcweb' 18 systemd_alias += [ 19 [ 20 '../phosphor-certificate-manager@.service', 21 'multi-user.target.wants/phosphor-certificate-manager@bmcweb.service', 22 ], 23 ] 24endif 25 26if get_option('config-authority').allowed() 27 busconfig += 'busconfig/phosphor-authority-cert-config.conf' 28 certs += 'env/authority' 29 systemd_alias += [ 30 [ 31 '../phosphor-certificate-manager@.service', 32 'multi-user.target.wants/phosphor-certificate-manager@authority.service', 33 ], 34 ] 35endif 36 37install_data(service_files, install_dir: systemd_system_unit_dir) 38 39install_data(busconfig, install_dir: busconfig_dir) 40 41install_data(certs, install_dir: cert_manager_dir) 42 43foreach service : systemd_alias 44 # Meson 0.61 will support this: 45 #install_symlink( 46 # service, 47 # install_dir: systemd_system_unit_dir, 48 # pointing_to: link, 49 # ) 50 meson.add_install_script( 51 'sh', 52 '-c', 53 'mkdir -p $(dirname $DESTDIR/@0@/@1@)'.format( 54 systemd_system_unit_dir, 55 service[1], 56 ), 57 ) 58 meson.add_install_script( 59 'sh', 60 '-c', 61 'ln -s @0@ $DESTDIR/@1@/@2@'.format( 62 service[0], 63 systemd_system_unit_dir, 64 service[1], 65 ), 66 ) 67endforeach 68