11285115cSWilliam A. Kennington III# Copyright 2021 Google LLC 21285115cSWilliam A. Kennington III# 31285115cSWilliam A. Kennington III# Licensed under the Apache License, Version 2.0 (the "License"); 41285115cSWilliam A. Kennington III# you may not use this file except in compliance with the License. 51285115cSWilliam A. Kennington III# You may obtain a copy of the License at 61285115cSWilliam A. Kennington III# 71285115cSWilliam A. Kennington III# http://www.apache.org/licenses/LICENSE-2.0 81285115cSWilliam A. Kennington III# 91285115cSWilliam A. Kennington III# Unless required by applicable law or agreed to in writing, software 101285115cSWilliam A. Kennington III# distributed under the License is distributed on an "AS IS" BASIS, 111285115cSWilliam A. Kennington III# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 121285115cSWilliam A. Kennington III# See the License for the specific language governing permissions and 131285115cSWilliam A. Kennington III# limitations under the License. 141285115cSWilliam A. Kennington III 151285115cSWilliam A. Kennington IIIproject( 161285115cSWilliam A. Kennington III 'metrics-ipmi-blobs', 171285115cSWilliam A. Kennington III 'cpp', 181285115cSWilliam A. Kennington III version: '0.1', 191285115cSWilliam A. Kennington III default_options: [ 201285115cSWilliam A. Kennington III 'warning_level=3', 211285115cSWilliam A. Kennington III 'werror=true', 221285115cSWilliam A. Kennington III 'cpp_std=c++17', 231285115cSWilliam A. Kennington III 'tests=' + (meson.is_subproject() ? 'disabled' : 'auto'), 241285115cSWilliam A. Kennington III ], 251285115cSWilliam A. Kennington III) 261285115cSWilliam A. Kennington III 271285115cSWilliam A. Kennington IIIheaders = include_directories('.') 281285115cSWilliam A. Kennington III 291285115cSWilliam A. Kennington IIIdeps = [ 301285115cSWilliam A. Kennington III dependency('phosphor-logging'), 311285115cSWilliam A. Kennington III dependency('phosphor-ipmi-blobs'), 321285115cSWilliam A. Kennington III dependency('protobuf'), 331285115cSWilliam A. Kennington III] 341285115cSWilliam A. Kennington III 35*b056df69SWilliam A. Kennington IIIproto = custom_target( 361285115cSWilliam A. Kennington III 'metricblob_proto', 371285115cSWilliam A. Kennington III command: [ 381285115cSWilliam A. Kennington III find_program('protoc', native: true), 391285115cSWilliam A. Kennington III '--proto_path=@CURRENT_SOURCE_DIR@', 401285115cSWilliam A. Kennington III '--cpp_out=@OUTDIR@', 411285115cSWilliam A. Kennington III '@INPUT@' 421285115cSWilliam A. Kennington III ], 431285115cSWilliam A. Kennington III output: [ 441285115cSWilliam A. Kennington III 'metricblob.pb.cc', 451285115cSWilliam A. Kennington III 'metricblob.pb.h', 461285115cSWilliam A. Kennington III ], 47*b056df69SWilliam A. Kennington III input: 'metricblob.proto') 48*b056df69SWilliam A. Kennington IIIproto_h = proto[1] 49*b056df69SWilliam A. Kennington III 50*b056df69SWilliam A. Kennington IIIlib = static_library( 51*b056df69SWilliam A. Kennington III 'metricsblob', 52*b056df69SWilliam A. Kennington III 'util.cpp', 53*b056df69SWilliam A. Kennington III 'handler.cpp', 54*b056df69SWilliam A. Kennington III 'metric.cpp', 55*b056df69SWilliam A. Kennington III proto, 561285115cSWilliam A. Kennington III include_directories: headers, 571285115cSWilliam A. Kennington III implicit_include_directories: false, 581285115cSWilliam A. Kennington III dependencies: deps) 591285115cSWilliam A. Kennington III 601285115cSWilliam A. Kennington IIIdep = declare_dependency( 61*b056df69SWilliam A. Kennington III sources: proto_h, 621285115cSWilliam A. Kennington III dependencies: deps, 631285115cSWilliam A. Kennington III include_directories: headers, 641285115cSWilliam A. Kennington III link_with: lib) 651285115cSWilliam A. Kennington III 661285115cSWilliam A. Kennington IIIshared_module( 671285115cSWilliam A. Kennington III 'metricsblob', 681285115cSWilliam A. Kennington III 'main.cpp', 691285115cSWilliam A. Kennington III dependencies: dep, 701285115cSWilliam A. Kennington III implicit_include_directories: false, 711285115cSWilliam A. Kennington III install: true, 721285115cSWilliam A. Kennington III install_dir: get_option('libdir') / 'ipmid-providers') 731285115cSWilliam A. Kennington III 741285115cSWilliam A. Kennington IIIif not get_option('tests').disabled() 751285115cSWilliam A. Kennington III subdir('test') 761285115cSWilliam A. Kennington IIIendif 77