summaryrefslogtreecommitdiff
path: root/lang/parrot/patches
diff options
context:
space:
mode:
authorhe <he>2009-04-20 07:55:00 +0000
committerhe <he>2009-04-20 07:55:00 +0000
commit6be839468cb46440b32d7521c7e1b17273886bca (patch)
treeb35fc154ad3a88eae24ad1613f06c20acd303280 /lang/parrot/patches
parent3cd1ac6af5cef37f233dcccf09576e46ecaebd18 (diff)
downloadpkgsrc-6be839468cb46440b32d7521c7e1b17273886bca.tar.gz
While the logic for handling NetBSD/powerpc (and OpenBSD/powerpc)
was correct, it was mis-placed in the file. It needs to include <elf.h> or the moral equivalent of that before the symbols can be tested. This now corresponds with what's committed upstream. Again, since this is a build fix, no revision bump should be required.
Diffstat (limited to 'lang/parrot/patches')
-rw-r--r--lang/parrot/patches/patch-ab56
1 files changed, 28 insertions, 28 deletions
diff --git a/lang/parrot/patches/patch-ab b/lang/parrot/patches/patch-ab
index 794f21e9c9d..0abce3717e3 100644
--- a/lang/parrot/patches/patch-ab
+++ b/lang/parrot/patches/patch-ab
@@ -1,36 +1,36 @@
-$NetBSD: patch-ab,v 1.6 2009/04/17 22:08:44 he Exp $
+$NetBSD: patch-ab,v 1.7 2009/04/20 07:55:00 he Exp $
The R_PPC_ADDR16{HI,LO} constants are named something else on
NetBSD, and might be elsewhere.
Also add workarounds for NetBSD/powerpc 3.x, which has some
constants defined as enums.
---- src/exec_save.c.orig 2009-03-08 20:32:43.000000000 +0000
-+++ src/exec_save.c
-@@ -30,6 +30,26 @@ static void save_int(FILE *fp, int i);
- static void save_short(FILE *fp, short s);
- static void save_struct(FILE *fp, void *sp, size_t size);
+--- src/exec_save.c.orig 2009-03-08 21:32:43.000000000 +0100
++++ src/exec_save.c 2009-04-19 12:55:25.000000000 +0200
+@@ -150,6 +150,26 @@
+ # include <elf.h>
+ # endif
-+#if defined(PARROT_PPC)
-+#if !defined(R_PPC_ADDR16_HI) && !defined(R_PPC_ADDR16_LO) && \
-+ defined(R_PPC_16_HI) && defined(R_PPC_16_LO)
-+# define R_PPC_ADDR16_HI R_PPC_16_HI
-+# define R_PPC_ADDR16_LO R_PPC_16_LO
-+#endif
-+/*
-+ * NetBSD/powerpc 3.x doesn't define these constants,
-+ * but instead has them as enums, so add some workarounds for it.
-+ */
-+#if !defined(R_PPC_ADDR16_HI) && !defined(R_PPC_ADDR16_LO) && \
-+ defined(__NetBSD__)
-+# define R_PPC_ADDR16_HI RELOC_16_HI
-+# define R_PPC_ADDR16_LO RELOC_16_LO
-+#endif
-+#if !defined(R_PPC_REL24) && defined(__NetBSD__)
-+# define R_PPC_REL24 RELOC_REL24
-+#endif
-+#endif /* PARROT_PPC */
++# if defined(PARROT_PPC)
++# if !defined(R_PPC_ADDR16_HI) && !defined(R_PPC_ADDR16_LO) && \
++ defined(R_PPC_16_HI) && defined(R_PPC_16_LO)
++# define R_PPC_ADDR16_HI R_PPC_16_HI
++# define R_PPC_ADDR16_LO R_PPC_16_LO
++# endif
++ /*
++ * NetBSD/powerpc 3.x and OpenBSD/powerpc doesn't define these constants,
++ * but instead has them as enums, so add some workarounds for those.
++ */
++# if !defined(R_PPC_ADDR16_HI) && !defined(R_PPC_ADDR16_LO) && \
++ (defined(__NetBSD__) || defined(__OpenBSD__))
++# define R_PPC_ADDR16_HI RELOC_16_HI
++# define R_PPC_ADDR16_LO RELOC_16_LO
++# endif
++# if !defined(R_PPC_REL24) && (defined(__NetBSD__) || defined(__OpenBSD__))
++# define R_PPC_REL24 RELOC_REL24
++# endif
++# endif /* PARROT_PPC */
+
- #ifdef EXEC_A_OUT
-
- # include <a.out.h>
+ /* Add a section to the file
+ *
+ * n = Name