Instead of suggesting an inline usage of "sed", that would have to be
cut-and-pasted for every directory to be relocated, suggest a shell
function.
Make the example obviously an example, whereas previously it looked like
it might be literal text.
Thanks to Reuben Thomas <rrt@sc3d.org> for pointing out these issues. See
http://lists.gnu.org/archive/html/bug-gnulib/2014-01/msg00039.html for
further context.
(cherry picked from commit
e446f257e29da65d94ec2d944e08a62b5690d99b)
orig_installdir="$bindir" # see Makefile.am's *_SCRIPTS variables
func_find_curr_installdir # determine curr_installdir
func_find_prefixes
orig_installdir="$bindir" # see Makefile.am's *_SCRIPTS variables
func_find_curr_installdir # determine curr_installdir
func_find_prefixes
- # Relocate the directory variables that we use.
- gettext_dir=`
- echo "$gettext_dir/" \
+ relocate () @{
+ echo "$1/" \
| sed -e "s%^$@{orig_installprefix@}/%$@{curr_installprefix@}/%" \
| sed -e "s%^$@{orig_installprefix@}/%$@{curr_installprefix@}/%" \
+ | sed -e 's,/$,,'
+ @}
+else
+ relocate () @{
+ echo "$1"
+ @}
+
+# Get some relocated directory names.
+sysconfdir=`relocate "@@sysconfdir@@"`
+some_datadir=`relocate "@@datadir@@/something"`
@end example
You must adapt the definition of @code{orig_installdir}, depending on
where the script gets installed. Also, at the end, instead of
@end example
You must adapt the definition of @code{orig_installdir}, depending on
where the script gets installed. Also, at the end, instead of
-@code{gettext_dir}, transform those variables that you need.
+@code{sysconfdir} and @code{some_datadir}, transform those variables
+that you need.
@item
In your @file{Makefile.am}, for every program @command{foo} that gets
@item
In your @file{Makefile.am}, for every program @command{foo} that gets