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