+function containsFeature () {
+ for feature in $1; do
+ [[ "$feature" == "$2" ]] && return 1;
+ done;
+ return 0;
+}
+
+function find_feature_dependency() {
+ res_dep_features=""
+ featuredir=$(find_feature_dir $1)
+ full_feature=$2;
+ if [ -e $featuredir/included.dep ]; then
+ dep_features="$(cat $featuredir/included.dep)"
+ for dep_feature in $dep_features; do
+ full_feature="$full_feature $res_dep_features"
+ res_dep_features="$res_dep_features $dep_feature"
+ if containsFeature $dep_feature $full_feature ; then
+ res_dep_features="$res_dep_features $(find_feature_dependency $dep_feature $full_feature)"
+ fi;
+ done;
+ fi;
+ echo "$res_dep_features";
+ return 0;
+}
+