1# Gather the Configuration data 2 3conf_data = configuration_data() 4conf_data.set('BMCWEB_HTTP_REQ_BODY_LIMIT_MB', get_option('http-body-limit')) 5enable_redfish_query = get_option('insecure-enable-redfish-query') 6conf_data.set10('BMCWEB_INSECURE_ENABLE_QUERY_PARAMS', enable_redfish_query.allowed()) 7# enable_redfish_aggregation = get_option('redfish-aggregation') 8# conf_data.set10('BMCWEB_ENABLE_REDFISH_AGGREGATION', enable_redfish_aggregation.allowed()) 9insecure_push_style_notification = get_option('insecure-push-style-notification') 10conf_data.set10( 11 'BMCWEB_INSECURE_ENABLE_HTTP_PUSH_STYLE_EVENTING', 12 insecure_push_style_notification.allowed(), 13) 14conf_data.set('MESON_INSTALL_PREFIX', get_option('prefix')) 15conf_data.set('HTTPS_PORT', get_option('https_port')) 16enable_multi_host = get_option('experimental-redfish-multi-computer-system') 17conf_data.set10('BMCWEB_ENABLE_MULTI_HOST', enable_multi_host.allowed()) 18enable_http2 = get_option('experimental-http2') 19conf_data.set10('BMCWEB_ENABLE_HTTP2', enable_http2.allowed()) 20 21enable_tls = get_option('insecure-disable-ssl') 22conf_data.set10('BMCWEB_ENABLE_TLS', enable_tls.disabled()) 23 24conf_data.set10( 25 'BMCWEB_ENABLE_MTLS_COMMON_NAME_PARSING_META', 26 get_option('mutual-tls-common-name-parsing') == 'meta', 27) 28 29conf_data.set10('BMCWEB_VIRTUAL_MEDIA_VM', get_option('vm-websocket').allowed()) 30conf_data.set10('BMCWEB_VIRTUAL_MEDIA_NBD', false) 31 32# Logging level 33loglvlopt = get_option('bmcweb-logging') 34if get_option('buildtype').startswith('debug') and loglvlopt == 'disabled' 35 # Override logging level as 'debug' if 'bmcweb-logging' is set as 'dsiabled' 36 loglvlopt = 'debug' 37endif 38loglvlopt = loglvlopt.to_upper() 39conf_data.set('BMCWEB_LOGGING_LEVEL', loglvlopt) 40 41conf_h_dep = declare_dependency( 42 include_directories: include_directories('.'), 43 sources: configure_file( 44 input: 'bmcweb_config.h.in', 45 output: 'bmcweb_config.h', 46 configuration: conf_data, 47 ), 48) 49 50# Configure and install systemd unit files 51 52configure_file( 53 input: 'bmcweb.socket.in', 54 output: 'bmcweb.socket', 55 install_dir: systemd_system_unit_dir, 56 configuration: conf_data, 57 install: true, 58) 59 60configure_file( 61 input: 'bmcweb.service.in', 62 output: 'bmcweb.service', 63 install_dir: systemd_system_unit_dir, 64 configuration: conf_data, 65 install: true, 66) 67 68# Copy pam-webserver to etc/pam.d 69install_data( 70 'pam-webserver', 71 install_dir: '/etc/pam.d/', 72 rename: 'webserver', 73) 74