summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormanu <manu@pkgsrc.org>2015-04-18 07:23:18 +0000
committermanu <manu@pkgsrc.org>2015-04-18 07:23:18 +0000
commit845eeef31556c13c53e1e1320b7e3d6425866245 (patch)
tree70e22edaa8a8f9722ed8f6b8fa810836b13fd380
parent52174f11423e846268dab9bf5f39c6be31cddcaf (diff)
downloadpkgsrc-845eeef31556c13c53e1e1320b7e3d6425866245.tar.gz
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.
-rw-r--r--devel/gnustep-objc/Makefile3
-rw-r--r--devel/gnustep-objc/distinfo3
-rw-r--r--devel/gnustep-objc/patches/patch-objc_msgSend.x86-32.S26
3 files changed, 30 insertions, 2 deletions
diff --git a/devel/gnustep-objc/Makefile b/devel/gnustep-objc/Makefile
index 403528936dd..16cf61bbf87 100644
--- a/devel/gnustep-objc/Makefile
+++ b/devel/gnustep-objc/Makefile
@@ -1,7 +1,8 @@
-# $NetBSD: Makefile,v 1.26 2014/05/05 01:53:29 rh Exp $
+# $NetBSD: Makefile,v 1.27 2015/04/18 07:23:18 manu Exp $
DISTNAME= libobjc2-1.6.1
PKGNAME= ${DISTNAME:S/libobjc2/gnustep-objc/}
+PKGREVISION= 1
CATEGORIES= devel gnustep
MASTER_SITES= http://download.gna.org/gnustep/
EXTRACT_SUFX= .tar.bz2
diff --git a/devel/gnustep-objc/distinfo b/devel/gnustep-objc/distinfo
index b7aa11941e2..178c5b9540f 100644
--- a/devel/gnustep-objc/distinfo
+++ b/devel/gnustep-objc/distinfo
@@ -1,5 +1,6 @@
-$NetBSD: distinfo,v 1.8 2012/10/22 02:13:06 rh Exp $
+$NetBSD: distinfo,v 1.9 2015/04/18 07:23:18 manu Exp $
SHA1 (libobjc2-1.6.1.tar.bz2) = 02a6cf02f620530ecd64f32dca348def92412b2b
RMD160 (libobjc2-1.6.1.tar.bz2) = 7babdba063d5377125ffd5b9481e074c32a8cf10
Size (libobjc2-1.6.1.tar.bz2) = 116263 bytes
+SHA1 (patch-objc_msgSend.x86-32.S) = 381fe840c433864ea39858b0cf4af6af46790d06
diff --git a/devel/gnustep-objc/patches/patch-objc_msgSend.x86-32.S b/devel/gnustep-objc/patches/patch-objc_msgSend.x86-32.S
new file mode 100644
index 00000000000..471aad410b0
--- /dev/null
+++ b/devel/gnustep-objc/patches/patch-objc_msgSend.x86-32.S
@@ -0,0 +1,26 @@
+$NetBSD: patch-objc_msgSend.x86-32.S,v 1.1 2015/04/18 07:23:18 manu 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