1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
|
$NetBSD: patch-aa,v 1.3 2005/01/21 06:13:36 tv Exp $
--- configure.in.orig 2003-12-24 14:19:12.000000000 -0500
+++ configure.in
@@ -314,6 +314,9 @@ msdosdjgpp*) LIBS="-lm $LIBS"
ac_cv_func_getpgrp_void=yes
ac_cv_func_setitimer=no
;;
+interix3*) LIBS="-lm $LIBS"
+ ac_cv_func_getpgrp_void=yes
+ ;;
freebsd*) LIBS="-lm $LIBS"
AC_CACHE_CHECK([whether -lxpg4 has to be linked],
rb_cv_lib_xpg4_needed,
@@ -824,6 +827,7 @@ if test "$with_dln_a_out" != yes; then
mingw*) ;;
aix*) ;;
netbsd*) CCDLFLAGS="$CCDLFLAGS -fPIC";;
+ interix3*) ;;
*) CCDLFLAGS="$CCDLFLAGS -fPIC";;
esac
else
@@ -864,6 +868,12 @@ if test "$with_dln_a_out" != yes; then
osf*) : ${LDSHARED="ld -shared -expect_unresolved \"*\""}
rb_cv_dlopen=yes ;;
linux*) : ${LDSHARED="$CC -shared"}
+ if test "$rb_cv_binary_elf" = yes; then
+ LDFLAGS="$LDFLAGS -Wl,-export-dynamic"
+ DLDFLAGS="$DLDFLAGS "'-Wl,-soname,$(.TARGET)'
+ LIBPATHFLAG=' -L%1$-s'
+ RPATHFLAG=' -Wl,-R%1$-s'
+ fi
rb_cv_dlopen=yes ;;
gnu*) : ${LDSHARED="$CC -shared"}
rb_cv_dlopen=yes
@@ -879,10 +889,18 @@ if test "$with_dln_a_out" != yes; then
netbsd*) : ${LDSHARED='${CC} -shared'}
if test "$rb_cv_binary_elf" = yes; then
LDFLAGS="$LDFLAGS -Wl,-export-dynamic"
+ DLDFLAGS="$DLDFLAGS "'-Wl,-soname,$(.TARGET)'
LIBPATHFLAG=' -L%1$-s'
RPATHFLAG=' -Wl,-R%1$-s'
fi
rb_cv_dlopen=yes ;;
+ interix3*) : ${LDSHARED='${CC} -shared'}
+ LDFLAGS="$LDFLAGS -Wl,-E"
+ # use special random-slot linkage in 0x[56]XXXXXXX
+ DLDFLAGS="$DLDFLAGS "'-Wl,-h,$(.TARGET) -Wl,--image-base,$$(($$RANDOM %%4096/2*262144+1342177280))'
+ LIBPATHFLAG=' -L%1$-s'
+ RPATHFLAG=' -Wl,-R%1$-s'
+ rb_cv_dlopen=yes ;;
openbsd*) : ${LDSHARED="\$(CC) -shared ${CCDLFLAGS}"}
if test "$rb_cv_binary_elf" = yes; then
LDFLAGS="$LDFLAGS -Wl,-E"
@@ -1157,6 +1175,7 @@ if test "$enable_shared" = 'yes'; then
;;
linux*)
LIBRUBY_DLDFLAGS='-Wl,-soname,lib$(RUBY_SO_NAME).so.$(MAJOR).$(MINOR)'
+ LIBRUBYARG_SHARED='-Wl,-R -Wl,${libdir} -L${libdir} -L. -l$(RUBY_SO_NAME)'
LIBRUBY_ALIASES='lib$(RUBY_SO_NAME).so.$(MAJOR).$(MINOR) lib$(RUBY_SO_NAME).so'
;;
gnu*)
@@ -1182,11 +1201,26 @@ if test "$enable_shared" = 'yes'; then
LIBRUBY_ALIASES=""
fi
;;
+ interix3*)
+ SOLIBS='$(LIBS)'
+ LIBRUBY_SO='lib$(RUBY_SO_NAME).so.$(MAJOR)$(MINOR).$(TEENY)'
+ # link explicitly to 0x48000000
+ LIBRUBY_DLDFLAGS='-Wl,-h,lib$(RUBY_SO_NAME).so.$(MAJOR)$(MINOR) -Wl,--image-base,1207959552'
+ LIBRUBYARG_SHARED='-Wl,-R -Wl,${libdir} -L${libdir} -L. -l$(RUBY_SO_NAME)'
+ LIBRUBY_ALIASES='lib$(RUBY_SO_NAME).so.$(MAJOR)$(MINOR) lib$(RUBY_SO_NAME).so'
+ ;;
openbsd*)
SOLIBS='$(LIBS)'
LIBRUBY_SO='lib$(RUBY_INSTALL_NAME).so.$(MAJOR).'`expr ${MINOR} \* 10 + ${TEENY}`
;;
solaris*)
+ SOLIBS='$(LIBS)'
+ LIBRUBY_SO='lib$(RUBY_SO_NAME).so.$(MAJOR)'
+ LIBRUBY_ALIASES='lib$(RUBY_SO_NAME).so.$(MAJOR).$(MINOR).$(TEENY) lib$(RUBY_SO_NAME).so'
+ if test "$GCC" = yes; then
+ LIBRUBY_DLDFLAGS="$DLDFLAGS "'-Wl,-h,$(.TARGET)'
+ LIBRUBYARG_SHARED='-Wl,-R -Wl,${libdir} -L${libdir} -L. -l$(RUBY_SO_NAME)'
+ fi
XLDFLAGS="$XLDFLAGS "'-R${libdir}'
;;
hpux*)
|