mirror of
https://github.com/ruby/ruby.git
synced 2025-09-17 17:43:59 +02:00
merge revision(s) 39267,39273,39294,39298,39313:
* 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] * configure.in (shvar_to_cpp): do not substitute exec_prefix itself with RUBY_EXEC_PREFIX, which cause recursive definition. [ruby-core:52296] [Bug #7860] * configure.in (unexpand_shvar): regularize a shell variable by unexpanding shell variables in it. * configure.in (unexpand_shvar): regularize a shell variable by unexpanding shell variables in it. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@39320 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
ccd431e2e0
commit
855f97202a
2 changed files with 48 additions and 3 deletions
13
ChangeLog
13
ChangeLog
|
@ -1,3 +1,16 @@
|
||||||
|
Tue Feb 19 15:49:58 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
||||||
|
|
||||||
|
* configure.in (unexpand_shvar): regularize a shell variable by
|
||||||
|
unexpanding shell variables in it.
|
||||||
|
|
||||||
|
* configure.in (shvar_to_cpp): do not substitute exec_prefix itself
|
||||||
|
with RUBY_EXEC_PREFIX, which cause recursive definition.
|
||||||
|
[ruby-core:52296] [Bug #7860]
|
||||||
|
|
||||||
|
* 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]
|
||||||
|
|
||||||
Tue Feb 19 14:08:46 2013 Eric Hodel <drbrain@segment7.net>
|
Tue Feb 19 14:08:46 2013 Eric Hodel <drbrain@segment7.net>
|
||||||
|
|
||||||
* backport r39307 from trunk. [Bug #7880]
|
* backport r39307 from trunk. [Bug #7880]
|
||||||
|
|
38
configure.in
38
configure.in
|
@ -2512,9 +2512,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
|
||||||
|
@ -3149,6 +3154,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' \
|
||||||
|
@ -3171,6 +3179,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/'
|
||||||
|
@ -3178,6 +3189,23 @@ shvar_to_cpp() {
|
||||||
eval $var='"$val"'
|
eval $var='"$val"'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
unexpand_shvar() {
|
||||||
|
local var=$1 val n v expr quote
|
||||||
|
shift
|
||||||
|
test "$#" == 0 && return
|
||||||
|
quote=['s/${[^${}"]*}/"&"/g']
|
||||||
|
for n do
|
||||||
|
eval v='"$'$n'"'
|
||||||
|
v="`echo \"$v\" | sed -e \"$quote\" -e ['s/[][$|.\\?*]/\\\\&/g']`"
|
||||||
|
if test -n "$v"; then
|
||||||
|
expr=["${expr};s|"'\("[^$"]*\)'"$v|\\1\${$n}\"|g"]
|
||||||
|
AS_CASE(["$v"], [*'${'*'}'*], [expr=["$expr;s|$v|\"\${$n}\"|g"]])
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
expr=["${quote}${expr};"'s/"\(\${[^${}"]*}\)"/\1/g']
|
||||||
|
eval $var='"`echo \"\\\"${'$var'}\\\"\" | sed \"$expr;s/\\\"\\\"//g;s/^\\\"//;s/\\\"\\\$//\"`"'
|
||||||
|
}
|
||||||
|
|
||||||
rubylibprefix='${libdir}/${RUBY_BASE_NAME}'
|
rubylibprefix='${libdir}/${RUBY_BASE_NAME}'
|
||||||
AC_ARG_WITH(rubylibprefix,
|
AC_ARG_WITH(rubylibprefix,
|
||||||
AS_HELP_STRING([--with-rubylibprefix=DIR], [prefix for ruby libraries [[LIBDIR/RUBY_BASE_NAME]]]),
|
AS_HELP_STRING([--with-rubylibprefix=DIR], [prefix for ruby libraries [[LIBDIR/RUBY_BASE_NAME]]]),
|
||||||
|
@ -3260,6 +3288,9 @@ AC_ARG_WITH(vendorarchdir,
|
||||||
[vendorarchdir=$withval],
|
[vendorarchdir=$withval],
|
||||||
[vendorarchdir=${multiarch+'${rubysitearchprefix}/vendor_ruby/${ruby_version}'}${multiarch-'${vendorlibdir}/${sitearch}'}])
|
[vendorarchdir=${multiarch+'${rubysitearchprefix}/vendor_ruby/${ruby_version}'}${multiarch-'${vendorlibdir}/${sitearch}'}])
|
||||||
|
|
||||||
|
unexpand_shvar rubylibprefix exec_prefix libdir RUBY_BASE_NAME
|
||||||
|
unexpand_shvar rubyarchprefix exec_prefix libdir arch RUBY_BASE_NAME archlibdir rubylibprefix
|
||||||
|
unexpand_shvar rubysitearchprefix exec_prefix libdir sitearch arch RUBY_BASE_NAME archlibdir sitearchlibdir rubylibprefix
|
||||||
if test "${LOAD_RELATIVE+set}"; then
|
if test "${LOAD_RELATIVE+set}"; then
|
||||||
AC_DEFINE_UNQUOTED(LOAD_RELATIVE, $LOAD_RELATIVE)
|
AC_DEFINE_UNQUOTED(LOAD_RELATIVE, $LOAD_RELATIVE)
|
||||||
RUBY_EXEC_PREFIX='""'
|
RUBY_EXEC_PREFIX='""'
|
||||||
|
@ -3270,6 +3301,7 @@ shvar_to_cpp RUBY_LIB_PREFIX "${rubylibprefix}"
|
||||||
shvar_to_cpp RUBY_ARCH_PREFIX_FOR "${rubyarchprefix}"
|
shvar_to_cpp RUBY_ARCH_PREFIX_FOR "${rubyarchprefix}"
|
||||||
shvar_to_cpp RUBY_SITEARCH_PREFIX_FOR "${rubysitearchprefix}"
|
shvar_to_cpp RUBY_SITEARCH_PREFIX_FOR "${rubysitearchprefix}"
|
||||||
shvar_to_cpp RIDIR "${ridir}"
|
shvar_to_cpp RIDIR "${ridir}"
|
||||||
|
unexpand_shvar exec_prefix prefix
|
||||||
|
|
||||||
if test ${RUBY_LIB_VERSION_STYLE+set}; then
|
if test ${RUBY_LIB_VERSION_STYLE+set}; then
|
||||||
AC_DEFINE_UNQUOTED(RUBY_LIB_VERSION_STYLE, $RUBY_LIB_VERSION_STYLE !<verconf>!)
|
AC_DEFINE_UNQUOTED(RUBY_LIB_VERSION_STYLE, $RUBY_LIB_VERSION_STYLE !<verconf>!)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue