summaryrefslogtreecommitdiff
path: root/lang/ruby18-base/patches/patch-ab
blob: b690710f062ac3120e3ec1df78500316c6d1092e (plain)
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
$NetBSD: patch-ab,v 1.15 2012/07/25 20:25:50 bsiegert Exp $

* Adding Interix and MirBSD support.

--- configure.orig	Fri Jun 29 13:18:00 2012
+++ configure
@@ -6212,6 +6212,9 @@ bsdi*)          LIBS="-lm $LIBS"
 		$as_echo "#define BROKEN_SETREGID 1" >>confdefs.h
 
                 ac_cv_sizeof_rlim_t=8;;
+interix3*)	LIBS="-lm $LIBS"
+		ac_cv_func_getpgrp_void=yes
+		;;
 freebsd*)	LIBS="-lm $LIBS"
 		{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lxpg4 has to be linked" >&5
 $as_echo_n "checking whether -lxpg4 has to be linked... " >&6; }
@@ -10212,6 +10215,13 @@ fi
 			    LDFLAGS="$LDFLAGS -Wl,-export-dynamic"
 			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 ;;
 	interix*) 	: ${LDSHARED="$CC -shared"}
 			XLDFLAGS="$XLDFLAGS -Wl,-E"
 			LIBPATHFLAG=" -L%1\$-s"
@@ -10224,7 +10234,7 @@ fi
 			  test "$GCC" = yes && test "$rb_cv_prog_gnu_ld" = yes || LDSHARED="ld -Bshareable"
 			fi
 			rb_cv_dlopen=yes ;;
-	openbsd*) 	: ${LDSHARED="\$(CC) -shared ${CCDLFLAGS}"}
+	openbsd*|mirbsd*) 	: ${LDSHARED="\$(CC) -shared ${CCDLFLAGS}"}
 			if test "$rb_cv_binary_elf" = yes; then
 			    LDFLAGS="$LDFLAGS -Wl,-E"
 			fi
@@ -10704,7 +10714,7 @@ if test "$enable_shared" = 'yes'; then
 	   LIBRUBY_ALIASES=""
 	fi
  	;;
-    openbsd*)
+    openbsd*|mirbsd*)
 	SOLIBS='$(LIBS)'
 	LIBRUBY_SO='lib$(RUBY_INSTALL_NAME).so.$(MAJOR).'`expr ${MINOR} \* 10 + ${TEENY}`
 	;;
@@ -10740,6 +10750,14 @@ if test "$enable_shared" = 'yes'; then
 	LIBRUBY_DLDFLAGS='-install_name $(libdir)/lib$(RUBY_SO_NAME).dylib -current_version $(MAJOR).$(MINOR).$(TEENY) -compatibility_version $(MAJOR).$(MINOR)'
 	LIBRUBY_ALIASES='lib$(RUBY_SO_NAME).$(MAJOR).$(MINOR).dylib lib$(RUBY_SO_NAME).dylib'
 	;;
+    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'
+ 	;;
     interix*)
 	LIBRUBYARG_SHARED='-L. -L${libdir} -l$(RUBY_SO_NAME)'
 	;;
@@ -10749,6 +10767,7 @@ if test "$enable_shared" = 'yes'; then
 fi
 if test "$enable_rpath" = yes; then
     LIBRUBYARG_SHARED="${linker_flag}-R ${linker_flag}\$(libdir) -L\$(libdir) $LIBRUBYARG_SHARED"
+    LIBRUBY_DLDFLAGS="${linker_flag}-R ${linker_flag}\$(libdir) -L\$(libdir) $LIBRUBY_DLDFLAGS"
 fi
 
 LDFLAGS="-L. $LDFLAGS"