summaryrefslogtreecommitdiff
path: root/lang/ruby19-base/patches/patch-ab
blob: 418063223e7ed37c435c667e9c0c2ca96c9682de (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
$NetBSD: patch-ab,v 1.1.1.1 2010/09/12 03:50:06 taca Exp $

Adding Interix support.

--- configure.orig	2010-08-18 05:56:27.000000000 +0000
+++ configure
@@ -9296,6 +9296,9 @@ esac
   superux*) :
     	ac_cv_func_setitimer=no
 		 ;; #(
+  interix*)	LIBS="-lm $LIBS"
+	ac_cv_func_getpgrp_void=yes
+		 ;; #(
   *) :
     	LIBS="-lm $LIBS" ;;
 esac
@@ -14926,8 +14929,12 @@ esac ;; #(
 			rb_cv_dlopen=yes ;; #(
   interix*) :
     	: ${LDSHARED='$(CC) -shared'}
+			LDFLAGS="$LDFLAGS -Wl,-E"
 			XLDFLAGS="$XLDFLAGS -Wl,-E"
+			# use special random-slot linkage in 0x[56]XXXXXXX
 			LIBPATHFLAG=" -L%1\$-s"
+			DLDFLAGS="$DLDFLAGS "'-Wl,-h,$(.TARGET) -Wl,--image-base,$$(($$RANDOM %4096/2*262144+1342177280))'
+			RPATHFLAG=' -Wl,-R%1$-s'
 			rb_cv_dlopen=yes ;; #(
   freebsd*|dragonfly*) :
 
@@ -15424,7 +15431,12 @@ esac
 	 ;; #(
   interix*) :
 
-	LIBRUBYARG_SHARED='-L. -L${libdir} -l$(RUBY_SO_NAME)'
+	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'
 	 ;; #(
   *) :
      ;;