+# - modcache true or false, from --cache-modules/--no-cache-modules
+func_get_description ()
+{
+ if ! $modcache; then
+ func_lookup_file "modules/$1"
+ sed -n -e "/^Description$sed_extract_prog" < "$lookedup_file"
+ else
+ func_cache_lookup_module "$1"
+ # Output the field's value, including the final newline (if any).
+ if $have_associative; then
+ if eval 'test -n "${modcache_description[$1]+set}"'; then
+ eval 'echo "${modcache_description[$1]}"'
+ fi
+ else
+ eval "field_set=\"\$${cachevar}_description_set\""
+ if test -n "$field_set"; then
+ eval "field_value=\"\$${cachevar}_description\""
+ echo "${field_value}"
+ fi
+ fi
+ fi
+}
+
+# func_get_comment module
+# Input:
+# - local_gnulib_dir from --local-dir
+# - modcache true or false, from --cache-modules/--no-cache-modules
+func_get_comment ()
+{
+ if ! $modcache; then
+ func_lookup_file "modules/$1"
+ sed -n -e "/^Comment$sed_extract_prog" < "$lookedup_file"
+ else
+ func_cache_lookup_module "$1"
+ # Output the field's value, including the final newline (if any).
+ if $have_associative; then
+ if eval 'test -n "${modcache_comment[$1]+set}"'; then
+ eval 'echo "${modcache_comment[$1]}"'
+ fi
+ else
+ eval "field_set=\"\$${cachevar}_comment_set\""
+ if test -n "$field_set"; then
+ eval "field_value=\"\$${cachevar}_comment\""
+ echo "${field_value}"
+ fi
+ fi
+ fi
+}
+
+# func_get_status module
+# Input:
+# - local_gnulib_dir from --local-dir
+# - modcache true or false, from --cache-modules/--no-cache-modules
+func_get_status ()
+{
+ if ! $modcache; then
+ func_lookup_file "modules/$1"
+ sed -n -e "/^Status$sed_extract_prog" < "$lookedup_file"
+ else
+ func_cache_lookup_module "$1"
+ # Output the field's value, including the final newline (if any).
+ if $have_associative; then
+ if eval 'test -n "${modcache_status[$1]+set}"'; then
+ eval 'echo "${modcache_status[$1]}"'
+ fi
+ else
+ eval "field_set=\"\$${cachevar}_status_set\""
+ if test -n "$field_set"; then
+ eval "field_value=\"\$${cachevar}_status\""
+ echo "${field_value}"
+ fi
+ fi
+ fi
+}
+
+# func_get_notice module
+# Input:
+# - local_gnulib_dir from --local-dir
+# - modcache true or false, from --cache-modules/--no-cache-modules
+func_get_notice ()
+{
+ if ! $modcache; then
+ func_lookup_file "modules/$1"
+ sed -n -e "/^Notice$sed_extract_prog" < "$lookedup_file"
+ else
+ func_cache_lookup_module "$1"
+ # Output the field's value, including the final newline (if any).
+ if $have_associative; then
+ if eval 'test -n "${modcache_notice[$1]+set}"'; then
+ eval 'echo "${modcache_notice[$1]}"'
+ fi
+ else
+ eval "field_set=\"\$${cachevar}_notice_set\""
+ if test -n "$field_set"; then
+ eval "field_value=\"\$${cachevar}_notice\""
+ echo "${field_value}"
+ fi
+ fi
+ fi
+}
+
+# func_get_applicability module
+# Input:
+# - local_gnulib_dir from --local-dir
+# - modcache true or false, from --cache-modules/--no-cache-modules
+# The expected result (on stdout) is either 'main', or 'tests', or 'all'.
+func_get_applicability ()
+{
+ if ! $modcache; then
+ func_lookup_file "modules/$1"
+ my_applicability=`sed -n -e "/^Applicability$sed_extract_prog" < "$lookedup_file"`
+ else
+ func_cache_lookup_module "$1"
+ # Get the field's value, without the final newline.
+ if $have_associative; then
+ eval 'my_applicability="${modcache_applicability[$1]}"'
+ else
+ eval "my_applicability=\"\$${cachevar}_applicability\""
+ fi
+ fi
+ if test -n "$my_applicability"; then
+ echo $my_applicability
+ else
+ # The default is 'main' or 'tests', depending on the module's name.
+ case $1 in
+ *-tests) echo "tests";;
+ *) echo "main";;
+ esac
+ fi
+}
+
+# func_get_filelist module
+# Input:
+# - local_gnulib_dir from --local-dir
+# - modcache true or false, from --cache-modules/--no-cache-modules
+func_get_filelist ()
+{
+ if ! $modcache; then
+ func_lookup_file "modules/$1"
+ sed -n -e "/^Files$sed_extract_prog" < "$lookedup_file"
+ else
+ func_cache_lookup_module "$1"
+ # Output the field's value, including the final newline (if any).
+ if $have_associative; then
+ if eval 'test -n "${modcache_files[$1]+set}"'; then
+ eval 'echo "${modcache_files[$1]}"'
+ fi
+ else
+ eval "field_set=\"\$${cachevar}_files_set\""
+ if test -n "$field_set"; then
+ eval "field_value=\"\$${cachevar}_files\""
+ echo "${field_value}"
+ fi
+ fi
+ fi
+ echo m4/00gnulib.m4
+ echo m4/gnulib-common.m4
+ case "$autoconf_minversion" in
+ 2.59)
+ echo m4/onceonly.m4
+ ;;
+ esac
+}
+
+# func_filter_filelist outputvar separator filelist prefix suffix removed_prefix removed_suffix [added_prefix [added_suffix]]
+# stores in outputvar the filtered and processed filelist. Filtering: Only the
+# elements starting with prefix and ending with suffix are considered.
+# Processing: removed_prefix and removed_suffix are removed from each element,
+# added_prefix and added_suffix are added to each element.
+# prefix, suffix should not contain shell-special characters.
+# removed_prefix, removed_suffix should not contain the characters "$`\{}[]^|.
+# added_prefix, added_suffix should not contain the characters \|&.
+func_filter_filelist ()
+{
+ if test "$2" != "$nl" \
+ || { $fast_func_append \
+ && { test -z "$6" || $fast_func_remove_prefix; } \
+ && { test -z "$7" || $fast_func_remove_suffix; }; \
+ }; then
+ ffflist=
+ for fff in $3; do
+ # Do not quote possibly-empty parameters in case patterns,
+ # AIX and HP-UX ksh won't match them if they are empty.
+ case "$fff" in
+ $4*$5)
+ if test -n "$6"; then
+ func_remove_prefix fff "$6"
+ fi
+ if test -n "$7"; then
+ func_remove_suffix fff "$7"
+ fi
+ fff="$8${fff}$9"
+ if test -z "$ffflist"; then
+ ffflist="${fff}"
+ else
+ func_append ffflist "$2${fff}"
+ fi
+ ;;
+ esac
+ done
+ else
+ sed_fff_filter="s|^$6\(.*\)$7\$|$8\\1$9|"
+ ffflist=`for fff in $3; do
+ case "$fff" in
+ $4*$5) echo "$fff" ;;
+ esac
+ done | sed -e "$sed_fff_filter"`
+ fi
+ eval "$1=\"\$ffflist\""
+}
+
+# func_get_dependencies module
+# Input:
+# - local_gnulib_dir from --local-dir
+# - modcache true or false, from --cache-modules/--no-cache-modules
+func_get_dependencies ()
+{
+ # ${module}-tests implicitly depends on ${module}, if that module exists.
+ case "$1" in
+ *-tests)
+ fgd1="$1"
+ func_remove_suffix fgd1 '-tests'
+ if func_exists_module "$fgd1"; then
+ echo "$fgd1"
+ fi
+ ;;
+ esac
+ # Then the explicit dependencies listed in the module description.
+ { if ! $modcache; then
+ func_lookup_file "modules/$1"
+ sed -n -e "/^Depends-on$sed_extract_prog" < "$lookedup_file"
+ else
+ func_cache_lookup_module "$1"
+ # Output the field's value, including the final newline (if any).
+ if $have_associative; then
+ if eval 'test -n "${modcache_dependson[$1]+set}"'; then
+ eval 'echo "${modcache_dependson[$1]}"'
+ fi
+ else
+ eval "field_set=\"\$${cachevar}_dependson_set\""
+ if test -n "$field_set"; then
+ eval "field_value=\"\$${cachevar}_dependson\""
+ echo "${field_value}"
+ fi
+ fi
+ fi
+ } \
+ | sed -e '/^#/d'
+}
+
+# func_get_autoconf_early_snippet module
+# Input:
+# - local_gnulib_dir from --local-dir
+# - modcache true or false, from --cache-modules/--no-cache-modules
+func_get_autoconf_early_snippet ()
+{
+ if ! $modcache; then
+ func_lookup_file "modules/$1"
+ sed -n -e "/^configure\.ac-early$sed_extract_prog" < "$lookedup_file"
+ else
+ func_cache_lookup_module "$1"
+ # Output the field's value, including the final newline (if any).
+ if $have_associative; then
+ if eval 'test -n "${modcache_configureac_early[$1]+set}"'; then
+ eval 'echo "${modcache_configureac_early[$1]}"'
+ fi
+ else
+ eval "field_set=\"\$${cachevar}_configureac_early_set\""
+ if test -n "$field_set"; then
+ eval "field_value=\"\$${cachevar}_configureac_early\""
+ echo "${field_value}"
+ fi
+ fi
+ fi
+}
+
+# func_get_autoconf_snippet module
+# Input:
+# - local_gnulib_dir from --local-dir
+# - modcache true or false, from --cache-modules/--no-cache-modules
+func_get_autoconf_snippet ()
+{
+ if ! $modcache; then
+ func_lookup_file "modules/$1"
+ sed -n -e "/^configure\.ac$sed_extract_prog" < "$lookedup_file"
+ else
+ func_cache_lookup_module "$1"
+ # Output the field's value, including the final newline (if any).
+ if $have_associative; then
+ if eval 'test -n "${modcache_configureac[$1]+set}"'; then
+ eval 'echo "${modcache_configureac[$1]}"'
+ fi
+ else
+ eval "field_set=\"\$${cachevar}_configureac_set\""
+ if test -n "$field_set"; then
+ eval "field_value=\"\$${cachevar}_configureac\""
+ echo "${field_value}"
+ fi
+ fi
+ fi
+}
+
+# func_get_automake_snippet_conditional module
+# returns the part of the Makefile.am snippet that can be put inside Automake
+# conditionals.
+# Input:
+# - local_gnulib_dir from --local-dir
+# - modcache true or false, from --cache-modules/--no-cache-modules
+func_get_automake_snippet_conditional ()
+{
+ if ! $modcache; then
+ func_lookup_file "modules/$1"
+ sed -n -e "/^Makefile\.am$sed_extract_prog" < "$lookedup_file"
+ else
+ func_cache_lookup_module "$1"
+ # Output the field's value, including the final newline (if any).
+ if $have_associative; then
+ if eval 'test -n "${modcache_makefile[$1]+set}"'; then
+ eval 'echo "${modcache_makefile[$1]}"'
+ fi
+ else
+ eval "field_set=\"\$${cachevar}_makefile_set\""
+ if test -n "$field_set"; then
+ eval "field_value=\"\$${cachevar}_makefile\""
+ echo "${field_value}"
+ fi
+ fi
+ fi
+}
+
+# func_get_automake_snippet_unconditional module
+# returns the part of the Makefile.am snippet that must stay outside of
+# Automake conditionals.
+# Input:
+# - local_gnulib_dir from --local-dir
+# - modcache true or false, from --cache-modules/--no-cache-modules
+func_get_automake_snippet_unconditional ()