Wed Apr 29 15:15:11 2015 UTC ()
Pullup ticket #4701 - requested by manu
devel/gnustep-objc: build fix

Revisions pulled up:
- devel/gnustep-objc/Makefile                                   1.27
- devel/gnustep-objc/distinfo                                   1.9
- devel/gnustep-objc/patches/patch-objc_msgSend.x86-32.S        1.1

-------------------------------------------------------------------
   Module Name:    pkgsrc
   Committed By:   manu
   Date:           Sat Apr 18 07:23:18 UTC 2015

   Modified Files:
           pkgsrc/devel/gnustep-objc: Makefile distinfo
   Added Files:
           pkgsrc/devel/gnustep-objc/patches: patch-objc_msgSend.x86-32.S

   Log Message:
   Build fix for missing __i686.get_pc_thunk.bx symbol

   Depending on the compiler, __i686.get_pc_thunk.bx may be missing
   from runtime. Replace it by a localy supplied version.

   To generate a diff of this commit:
   cvs rdiff -u -r1.26 -r1.27 pkgsrc/devel/gnustep-objc/Makefile
   cvs rdiff -u -r1.8 -r1.9 pkgsrc/devel/gnustep-objc/distinfo
   cvs rdiff -u -r0 -r1.1 \
       pkgsrc/devel/gnustep-objc/patches/patch-objc_msgSend.x86-32.S


(spz)
diff -r0 -r1.1.2.2 pkgsrc/devel/gnustep-objc/patches/patch-objc_msgSend.x86-32.S

File Added: pkgsrc/devel/gnustep-objc/patches/Attic/patch-objc_msgSend.x86-32.S
$NetBSD: patch-objc_msgSend.x86-32.S,v 1.1.2.2 2015/04/29 15:15:11 spz Exp $

Depending on the compiler, __i686.get_pc_thunk.bx may be missing
from runtime. Replace it by a localy supplied version.

--- objc_msgSend.x86-32.S.orig	2015-04-17 09:44:49.000000000 +0000
+++ objc_msgSend.x86-32.S	2015-04-17 09:47:40.000000000 +0000
@@ -77,9 +77,9 @@
 
 	jmp   *%eax
 6:                                        # smallObject:
 	push  %ebx                           # Save old %ebx
-	call  __i686.get_pc_thunk.bx
+	call  ___i686.get_pc_thunk.bx
 	addl  $_GLOBAL_OFFSET_TABLE_, %ebx
 	mov   SmallObjectClasses@GOT(%ebx), %eax
 	mov   (%eax), %eax
 	popl  %ebx
@@ -97,4 +97,7 @@
 .globl objc_msgSend_stret
 	.type	objc_msgSend_stret, @function
 objc_msgSend_stret:
 	MSGSEND 8, 12, 0
+___i686.get_pc_thunk.bx:
+	mov   (%esp),%ebx
+	ret