aboutsummaryrefslogtreecommitdiffstats
path: root/lang
diff options
context:
space:
mode:
authormarcel <marcel@FreeBSD.org>2003-11-27 15:39:33 +0800
committermarcel <marcel@FreeBSD.org>2003-11-27 15:39:33 +0800
commit38bc87d45813fddc20f11c282eaf2dbcc9067c18 (patch)
tree3934cbfe5d3491125dc622254140890fb45e7f41 /lang
parent4ed00d040dc1247ad50aa8a402e775fbba13f5aa (diff)
downloadfreebsd-ports-graphics-38bc87d45813fddc20f11c282eaf2dbcc9067c18.tar.gz
freebsd-ports-graphics-38bc87d45813fddc20f11c282eaf2dbcc9067c18.tar.zst
freebsd-ports-graphics-38bc87d45813fddc20f11c282eaf2dbcc9067c18.zip
Fix the build on ia64:
The __libc_ia64_register_backing_store_base variable is defined on Linux (in glibc) to allow processes to obtain the base of the RSE backing store. On FreeBSD we do not have such a variable. We also do not yet have a different interface for processes to use. So, for now, hardcode the base address of the RSE backing store as it is on FreeBSD. There's little chance this will change in the future, so it's not that evil. Approved by: portmgr (kris)
Diffstat (limited to 'lang')
-rw-r--r--lang/ruby18/files/patch-eval.c12
-rw-r--r--lang/ruby18/files/patch-gc.c12
2 files changed, 24 insertions, 0 deletions
diff --git a/lang/ruby18/files/patch-eval.c b/lang/ruby18/files/patch-eval.c
new file mode 100644
index 00000000000..37762f730b9
--- /dev/null
+++ b/lang/ruby18/files/patch-eval.c
@@ -0,0 +1,12 @@
+--- eval.c.orig Wed Nov 26 22:41:47 2003
++++ eval.c Wed Nov 26 22:40:38 2003
+@@ -7788,8 +7788,7 @@
+
+ #ifdef __ia64__
+ #include <ucontext.h>
+-#pragma weak __libc_ia64_register_backing_store_base
+-extern unsigned long __libc_ia64_register_backing_store_base;
++#define __libc_ia64_register_backing_store_base (4ULL<<61)
+ #endif
+
+ /* Windows SEH refers data on the stack. */
diff --git a/lang/ruby18/files/patch-gc.c b/lang/ruby18/files/patch-gc.c
new file mode 100644
index 00000000000..51aa70da715
--- /dev/null
+++ b/lang/ruby18/files/patch-gc.c
@@ -0,0 +1,12 @@
+--- gc.c.orig Wed Nov 26 22:42:01 2003
++++ gc.c Wed Nov 26 22:40:43 2003
+@@ -32,8 +32,7 @@
+
+ #ifdef __ia64__
+ #include <ucontext.h>
+-#pragma weak __libc_ia64_register_backing_store_base
+-extern unsigned long __libc_ia64_register_backing_store_base;
++#define __libc_ia64_register_backing_store_base (4ULL<<61)
+ #endif
+
+ void re_free_registers _((struct re_registers*));