summaryrefslogtreecommitdiff
path: root/configure.in
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2013-02-16 03:45:53 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2013-02-16 03:45:53 +0000
commit62711da25352ac195013e0b81cd6343f8f39b9b5 (patch)
tree0fa6214a8c3914e5b4dffbbf45007a464140938d /configure.in
parent53f97f1c278d2ea22a614682cd47c3ac61e57ef5 (diff)
configure.in: unexpand exec_prefix etc
* configure.in: unexpand arch sitearch and exec_prefix values, so directly specified bindir, libdir, rubyprefix, etc can be properly substituted. [ruby-core:52296] [Bug #7860] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39267 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'configure.in')
-rw-r--r--configure.in17
1 files changed, 14 insertions, 3 deletions
diff --git a/configure.in b/configure.in
index 4886791de2..8a3f458a3b 100644
--- a/configure.in
+++ b/configure.in
@@ -2551,9 +2551,14 @@ AS_CASE(["$target_os"],
AC_SUBST(setup)
-if test "$prefix" = NONE; then
- prefix=$ac_default_prefix
-fi
+test x"$prefix" = xNONE && prefix=$ac_default_prefix
+test x"${exec_prefix}" = xNONE && exec_prefix="$prefix"
+pat=`echo "${exec_prefix}" | tr -c '\012' .`'\(.*\)'
+for var in bindir libdir; do
+ eval val='"$'$var'"'
+ AS_CASE(["$val"], ["${exec_prefix}"*], [val='${exec_prefix}'"`expr \"$val\" : \"$pat\"`"])
+ eval $var='"$val"'
+done
BTESTRUBY='$(MINIRUBY)'
if test x"$cross_compiling" = xyes; then
@@ -3188,6 +3193,9 @@ sitearchincludedir='${includedir}/${sitearch}'
shvar_to_cpp() {
local var="$1" val="$2"
+ local exec_prefix_pat="`echo \"${exec_prefix}\" | sed 's/\\./\\\\./g'`"
+ local arch_pat="`echo \"${arch}\" | sed 's/\\./\\\\./g'`"
+ local sitearch_pat="`echo \"${sitearch}\" | sed 's/\\./\\\\./g'`"
val="`echo '"'"${val}"'"' |
sed \
-e 's/\${\([[A-Z][A-Z_]]*\)}/"\1"/g' \
@@ -3210,6 +3218,9 @@ shvar_to_cpp() {
-e 's/\${rubyarchprefix}/"RUBY_ARCH_PREFIX_FOR(arch)"/g' \
-e 's/\${rubysitearchprefix}/"RUBY_SITEARCH_PREFIX_FOR(arch)"/g' \
-e 's/\${exec_prefix}/"RUBY_EXEC_PREFIX"/g' \
+ -e "s|${exec_prefix_pat}|"'"RUBY_EXEC_PREFIX"|g' \
+ -e "s|${arch_pat}|"'"arch"|g' \
+ -e "s|${sitearch_pat}|"'"sitearch"|g' \
-e 's|^\"NONE/|RUBY_EXEC_PREFIX\"/|' \
-e 's|^\"NONE\"|\"'"${prefix}"'\"|' \
-e 's/^\"\"\(.\)/\1/;s/\(.\)\"\"$/\1/'