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
This commit is contained in:
nobu 2013-02-16 03:45:53 +00:00
Родитель 53f97f1c27
Коммит 62711da253
2 изменённых файлов: 20 добавлений и 3 удалений

Просмотреть файл

@ -1,3 +1,9 @@
Sat Feb 16 12:45:50 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* 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]
Sat Feb 16 12:15:20 2013 Aaron Patterson <aaron@tenderlovemaking.com> Sat Feb 16 12:15:20 2013 Aaron Patterson <aaron@tenderlovemaking.com>
* parse.y: add dtrace probe for symbol create. * parse.y: add dtrace probe for symbol create.

Просмотреть файл

@ -2551,9 +2551,14 @@ AS_CASE(["$target_os"],
AC_SUBST(setup) AC_SUBST(setup)
if test "$prefix" = NONE; then test x"$prefix" = xNONE && prefix=$ac_default_prefix
prefix=$ac_default_prefix test x"${exec_prefix}" = xNONE && exec_prefix="$prefix"
fi 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)' BTESTRUBY='$(MINIRUBY)'
if test x"$cross_compiling" = xyes; then if test x"$cross_compiling" = xyes; then
@ -3188,6 +3193,9 @@ sitearchincludedir='${includedir}/${sitearch}'
shvar_to_cpp() { shvar_to_cpp() {
local var="$1" val="$2" 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}"'"' | val="`echo '"'"${val}"'"' |
sed \ sed \
-e 's/\${\([[A-Z][A-Z_]]*\)}/"\1"/g' \ -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/\${rubyarchprefix}/"RUBY_ARCH_PREFIX_FOR(arch)"/g' \
-e 's/\${rubysitearchprefix}/"RUBY_SITEARCH_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}/"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/|RUBY_EXEC_PREFIX\"/|' \
-e 's|^\"NONE\"|\"'"${prefix}"'\"|' \ -e 's|^\"NONE\"|\"'"${prefix}"'\"|' \
-e 's/^\"\"\(.\)/\1/;s/\(.\)\"\"$/\1/' -e 's/^\"\"\(.\)/\1/;s/\(.\)\"\"$/\1/'