summaryrefslogtreecommitdiff
path: root/lang/parrot/patches
diff options
context:
space:
mode:
authorhe <he>2009-08-26 21:44:43 +0000
committerhe <he>2009-08-26 21:44:43 +0000
commitc3fa689bba9c9f41ff5b7bd58583862de1bb50e2 (patch)
tree0cb09f5e5d6968a87cd5fb96b8262ecbdd2abacc /lang/parrot/patches
parent77ff78e0d91f17a04fbd5f13261f4d4cd65df838 (diff)
downloadpkgsrc-c3fa689bba9c9f41ff5b7bd58583862de1bb50e2.tar.gz
Update from version 1.4.0nb1 to 1.5.0.
Pkgsrc changes: o Add patch-af and patch-ag so that the math library variant selection actually works as intended. Upstream changes: - Core + Removed several deprecated functions and features + Removed bsr, jsr, branch_cs, and ret opcodes + Removed global stacks system + Changed OPS file format to include explicit preamble + Changed all "new 'Iterator'" instructions into 'iter' instructions + Removed Configure.pl options for specifying non-working GC cores + Removed unexecuting code as found by Coverity + Improvements to the Parrot Debugger + Added experimental fixed-size structure allocator to the GC + Added experimental lazy arena allocation to the GC + Removed the defunct PASM1 compiler object + Refactored hashes, keys, and iterators + Added "corevm" make target to build Parrot without all the supporting libraries + Removed Random PMC type and added in a "rand" dynop + Optimization and Improvements to the NCI thunk generator + New include file libpaths.pasm - Compilers + Multiple .local with same name and different type is now an error on IMCC. - Platforms + Improved support for detecting Fink and Macports + Updated search directories for libraries - Documentation + "Parrot Developers Guide: PIR" released to publisher and available to purchase + Improved documentation about Parrot Debugger + Update PGE Documentation - Miscellaneous + Added tests + Fixes to code, documentation, and standards
Diffstat (limited to 'lang/parrot/patches')
-rw-r--r--lang/parrot/patches/patch-af32
-rw-r--r--lang/parrot/patches/patch-ag26
2 files changed, 58 insertions, 0 deletions
diff --git a/lang/parrot/patches/patch-af b/lang/parrot/patches/patch-af
new file mode 100644
index 00000000000..30cb757a3bf
--- /dev/null
+++ b/lang/parrot/patches/patch-af
@@ -0,0 +1,32 @@
+$NetBSD: patch-af,v 1.1 2009/08/26 21:44:43 he Exp $
+
+Initialization of the math library version needs to be done
+this way instead, ref. patch-ag
+
+--- config/gen/platform/netbsd/misc.c.orig 2009-07-08 02:19:09.000000000 +0200
++++ config/gen/platform/netbsd/misc.c
+@@ -26,17 +26,23 @@ Miscellaneous helper functions that are
+ =item C<void Parrot_platform_init_code(void)>
+
+ Initialize Parrot for the NetBSD platform.
+-So far only turns off SIGFPE for Alpha.
++So far turns off SIGFPE for Alpha, and
++ensures IEEE floating-point semantics from
++the math library.
+
+ =cut
+
+ */
+
+ #include <signal.h>
++#include <math.h>
+
+ void
+ Parrot_platform_init_code(void)
+ {
++
++ _LIB_VERSION = _IEEE_; /* force IEEE math semantics and behaviour */
++
+ #if defined(__alpha__)
+ signal(SIGFPE, SIG_IGN);
+ #endif
diff --git a/lang/parrot/patches/patch-ag b/lang/parrot/patches/patch-ag
new file mode 100644
index 00000000000..6334a830cde
--- /dev/null
+++ b/lang/parrot/patches/patch-ag
@@ -0,0 +1,26 @@
+$NetBSD: patch-ag,v 1.1 2009/08/26 21:44:43 he Exp $
+
+Doing a static initialization causes this to be a local variable
+in this object file. This does not override the library version
+which is stored in a variable in the math library(!)
+
+Instead, we need to initialize _LIB_VERSION in code, ref.
+patch-af.
+
+--- config/gen/platform/netbsd/math.c.orig 2009-07-08 02:19:09.000000000 +0200
++++ config/gen/platform/netbsd/math.c
+@@ -22,14 +22,8 @@ math stuff
+
+ */
+
+-/*
+- * force atan2() to use IEEE behavior
+- */
+-
+ #include <math.h>
+
+-_LIB_VERSION_TYPE _LIB_VERSION = _IEEE_;
+-
+ #if DOUBLE_SIZE == 2 * INT_SIZE
+ /*
+