summaryrefslogtreecommitdiff
path: root/configure.in
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2005-04-13 10:25:41 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2005-04-13 10:25:41 +0000
commitf091f360356f942cf829ae741bd7dcc7c189c991 (patch)
treed60d3381dd3e1c78b1817860986b15176aadbd9e /configure.in
parentbea190a1fce429ebf080d59faa637f796227dc50 (diff)
* configure.in (mingw32): use actual runtime DLL name as ruby DLL
name and default load path. * win32/Makefile.sub, win32/setup.mak: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8314 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'configure.in')
-rw-r--r--configure.in17
1 files changed, 15 insertions, 2 deletions
diff --git a/configure.in b/configure.in
index 0b7988b43c..c7f3491985 100644
--- a/configure.in
+++ b/configure.in
@@ -169,6 +169,19 @@ cygwin*|mingw*)
AC_CHECK_TOOL(WINDRES, windres)
AC_CHECK_TOOL(DLLWRAP, dllwrap)
target_cpu=`echo $target_cpu | sed s/i.86/i386/`
+ case "$target_os" in
+ mingw*)
+ test "$rb_cv_msvcrt" = "" && unset rb_cv_msvcrt
+ AC_CHECK_TOOL(OBJDUMP, objdump)
+ AC_CACHE_CHECK(for mingw32 runtime DLL, rb_cv_msvcrt, [
+ AC_TRY_LINK([#include <stdio.h>],
+ [FILE* volatile f = stdin; return 0;],
+ [rb_cv_msvcrt=`$OBJDUMP -p conftest$ac_exeext |
+ sed -n '/^[[ ]]*DLL Name: /{s///p;q;}' |
+ tr A-Z a-z | sed 's/\.dll$//'`],
+ [rb_cv_msvcrt=msvcrt])])
+ test "$rb_cv_msvcrt" = "" && AC_MSG_ERROR([must be linked to DLL])
+ esac
: ${enable_shared=yes}
;;
aix*)
@@ -1298,7 +1311,7 @@ case "$target_os" in
AC_LIBOBJ([strftime])
;;
mingw*)
- RUBY_SO_NAME=msvcrt-'$(RUBY_INSTALL_NAME)'${MAJOR}${MINOR}
+ RUBY_SO_NAME=${rb_cv_msvcrt}-'$(RUBY_INSTALL_NAME)'${MAJOR}${MINOR}
if test x"$enable_shared" = xyes; then
LIBRUBY_SO='$(RUBY_SO_NAME)'.dll
LIBRUBY='lib$(LIBRUBY_SO).a'
@@ -1429,7 +1442,7 @@ else
fi
case "$target_os" in
- mingw*) sitearch="i386-msvcrt" ;;
+ mingw*) sitearch="i386-$rb_cv_msvcrt" ;;
*) sitearch="${arch}" ;;
esac