#!/bin/bash # # Copyright(c) 2012-2019 Intel Corporation # SPDX-License-Identifier: BSD-3-Clause-Clear # . $(dirname $3)/conf_framework check() { cur_name=$(basename $2) config_file_path=$1 if compile_module $cur_name "struct bio b;b.bi_status" "linux/bio.h" then echo $cur_name "1" >> $config_file_path elif compile_module $cur_name "struct bio b;b.bi_error" "linux/bio.h" then echo $cur_name "2" >> $config_file_path elif compile_module $cur_name "bio_endio(NULL, 0)" "linux/bio.h" then echo $cur_name "3" >> $config_file_path else echo $cur_name "X" >> $config_file_path fi } apply() { case "$1" in "1") add_define "CAS_BIO_OP_STATUS(bio) \\ bio->bi_status" ;; "2") add_define "CAS_BIO_OP_STATUS(bio) \\ bio->bi_error" ;; "3") # If bio_endio is available, we do not need to provide our own status accessors. # This case-switch prevents false errors during executing 'configure' script. return 0 ;; *) exit 1 esac } conf_run $@