summaryrefslogtreecommitdiff
path: root/configure.in
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-10-17 06:33:14 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-10-17 06:33:14 +0000
commit7254573c551f83a83cf3f2d6e97de8ebe72e16fa (patch)
treee489f1f5a7c07f28999d31da46b2602fb76a2936 /configure.in
parent0f1e7bcec093b2ee57bcda68a7008fb854f13134 (diff)
configure.in: multiple opt-dir
* configure.in (opt-dir): allow multiple directories separated by $PATH_SEPARATOR as well as dir_config in mkmf.rb. [ruby-core:47868] [Bug #7120] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37242 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'configure.in')
-rw-r--r--configure.in18
1 files changed, 12 insertions, 6 deletions
diff --git a/configure.in b/configure.in
index e2d43d1cdb..c038aa29e6 100644
--- a/configure.in
+++ b/configure.in
@@ -2293,13 +2293,19 @@ AC_SUBST(LIBPATHENV, "${LIBPATHENV-LD_LIBRARY_PATH}")
AC_SUBST(TRY_LINK)
AC_ARG_WITH(opt-dir,
- AS_HELP_STRING([--with-opt-dir=DIR], [add optional headers and libraries DIR]),
+ AS_HELP_STRING([--with-opt-dir=DIR-LIST],
+ [add optional headers and libraries directories separated by $PATH_SEPARATOR]),
[
- CPPFLAGS="$CPPFLAGS -I$withval/include"
- val=`echo $withval|sed 's/\\//\\\\\\//g'`
- val=`echo ${LIBPATHFLAG} ${RPATHFLAG}|sed -E 's/%1\\$-s|%s/'${val}'\/lib/g'`
- LDFLAGS="$LDFLAGS $val"
- DLDFLAGS="$DLDFLAGS $val"
+ CPPFLAGS="$CPPFLAGS `echo \"$PATH_SEPARATOR$withval\" | sed \"s|$PATH_SEPARATOR\([[^$PATH_SEPARATOR]*]\)| -I\1/include|g;s/^ //\"`"
+ set -x
+ val=`IFS="$PATH_SEPARATOR"
+ for dir in $withval; do
+ echo x ${LIBPATHFLAG} ${RPATHFLAG} |
+ sed -E 's/^x *//;s'"${PATH_SEPARATOR}"'%1\\$-s|%s'"${IFS}${dir}/lib${IFS}g"
+ done | tr '\012' ' '`
+ set +x
+ LDFLAGS="$LDFLAGS${LDFLAGS:+ }$val"
+ DLDFLAGS="$DLDFLAGS${DLDFLAGS:+ }$val"
])
AS_CASE(["$target_cpu-$target_os"],