File: config-gen-functions.sh

package info (click to toggle)
util-linux 2.41-5
  • links: PTS, VCS
  • area: main
  • in suites: sid, trixie
  • size: 95,208 kB
  • sloc: ansic: 179,016; sh: 22,689; yacc: 1,284; makefile: 528; xml: 422; python: 316; lex: 89; ruby: 75; csh: 37; exp: 19; sed: 16; perl: 15; sql: 9
file content (33 lines) | stat: -rw-r--r-- 639 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#
# Copyright (C) 2011 Karel Zak <kzak@redhat.com>
#


# Returns configure options from selected config file
#
#    ul_get_configuration <config-file>
#
# for example
#
#    ul_get_configuration $top_srcdir/tools/config-gen.d/all
#
ul_get_configuration() {
	local conf="$1"
	local dir=$(dirname $1)
	local opts=$(cat $conf)
	local old_opts=

	while [ "$opts" != "$old_opts" ]; do
		local new_opts=

		old_opts="$opts"
		for citem in $opts; do
			case $citem in
			include:*) new_opts="$new_opts $(cat $dir/${citem##*:})" ;;
			*) new_opts="$new_opts $citem" ;;
			esac
		done
		opts="$new_opts"
	done
	echo $opts | tr " " "\n" | sort -u
}