summaryrefslogtreecommitdiff
path: root/etc
diff options
context:
space:
mode:
authorAkim Demaille <demaille@gostai.com>2009-07-01 11:53:29 +0200
committerAkim Demaille <demaille@gostai.com>2009-08-12 16:30:43 +0200
commitd1b55e811584638c9ebb7046e4017bba167bb072 (patch)
treed0cb699a93609754a4f7347929ea717e652b49d3 /etc
parent838205d547498edd52c599e8755a233bb695e831 (diff)
downloadbison-d1b55e811584638c9ebb7046e4017bba167bb072.tar.gz
gnulib: improve prefixing.
* configure.ac (gl_PREFIXED_LIBOBJS): Don't rename it, rather, change the value of... (gl_LIBOBJS): this. Adjust more variables. * etc/prefix-gnulib-mk (prefix_assignment): Don't rename gl_LIBOBJS. (prefix): Also transform rules whose targets have slashes. Use $prefix liberally. Map @MKDIR_P@ to $(MKDIR_P). Prefix directories that are mkdir'd.
Diffstat (limited to 'etc')
-rwxr-xr-xetc/prefix-gnulib-mk15
1 files changed, 9 insertions, 6 deletions
diff --git a/etc/prefix-gnulib-mk b/etc/prefix-gnulib-mk
index 08d22f28..e969663d 100755
--- a/etc/prefix-gnulib-mk
+++ b/etc/prefix-gnulib-mk
@@ -73,9 +73,6 @@ sub prefix_assignment ($$)
# lib_libbison_a_SOURCES.
$lhs_and_assign_op =~ s/(libbison)/lib_$1/g;
- # Do not use gl_LIBOBJS, but its prefixed version.
- $rhs =~ s/gl_LIBOBJS/gl_PREFIXED_LIBOBJS/g;
-
return $lhs_and_assign_op . $rhs;
}
@@ -93,7 +90,7 @@ sub prefix ($)
# Prefix all the occurrence of files in rules. If there is nothing
# after in the :, it's probably a phony target, or a suffix rule.
# Don't touch it.
- s{^([\w.]+ *: *\w.*)$}
+ s{^([\w./]+ *: *\w.*)$}
{prefix_words($1)}gem;
# Prefix files in variables.
@@ -103,7 +100,7 @@ sub prefix ($)
# These three guys escape all the other regular rules.
s{(charset\.alias|ref-add\.sed|ref-del\.sed)}{$prefix$1}g;
# Unfortunately, as a result we sometimes have lib/lib.
- s{lib/lib/}{lib/}g;
+ s{($prefix){2}}{$1}g;
# $(srcdir) is actually $(top_srcdir)/lib.
s{\$\(srcdir\)}{\$(top_srcdir)/lib}g;
@@ -112,6 +109,12 @@ sub prefix ($)
# not work when we have a $@ with a directory in it.
s{t-\$\@}{\$\@-t}g;
+ # Some AC_SUBST patterns remain and would better be Make macros.
+ s{\@(MKDIR_P)\@}{\$($1)}g;
+
+ # Adjust paths in mkdir.
+ s{(\$\(MKDIR_P\))\s*(\w+)}{$1 $prefix$2}g;
+
return $_;
}
@@ -128,7 +131,7 @@ sub process ($)
print $out $contents;
}
-process ("lib/gnulib.mk")
+process ("${prefix}gnulib.mk")
### Setup "GNU" style for perl-mode and cperl-mode.