summaryrefslogtreecommitdiff
path: root/net/ORBit2
diff options
context:
space:
mode:
authorsketch <sketch@pkgsrc.org>2004-11-05 10:19:10 +0000
committersketch <sketch@pkgsrc.org>2004-11-05 10:19:10 +0000
commite6e425ab8a7c4c264d0defdae99981314b0d7d0e (patch)
treeb3c476f02d23821a17954f1aad5847b30e542830 /net/ORBit2
parent6a83f088ee3ead6eede14fe76745d6e0c518c131 (diff)
downloadpkgsrc-e6e425ab8a7c4c264d0defdae99981314b0d7d0e.tar.gz
Sunpro (and possibly other compilers') preprocessor takes the input of
"#pragma<space>foo..." and outputs "#pragma<tab>foo...", breaking the ORBit preprocessor which only looks for the former. Ensure the latter case is handled. Fixes build on Solaris/Sunpro.
Diffstat (limited to 'net/ORBit2')
-rw-r--r--net/ORBit2/distinfo3
-rw-r--r--net/ORBit2/patches/patch-aa21
2 files changed, 23 insertions, 1 deletions
diff --git a/net/ORBit2/distinfo b/net/ORBit2/distinfo
index 7f1b1c8776c..56b42adf6c6 100644
--- a/net/ORBit2/distinfo
+++ b/net/ORBit2/distinfo
@@ -1,4 +1,5 @@
-$NetBSD: distinfo,v 1.20 2004/09/21 16:44:14 jmmv Exp $
+$NetBSD: distinfo,v 1.21 2004/11/05 10:19:10 sketch Exp $
SHA1 (ORBit2-2.12.0.tar.bz2) = 76bdfbfb6ac797aa2075b7c6de40df916129fc77
Size (ORBit2-2.12.0.tar.bz2) = 666898 bytes
+SHA1 (patch-aa) = 6e87e28e3634908f35c219f81a47d0353cfaf551
diff --git a/net/ORBit2/patches/patch-aa b/net/ORBit2/patches/patch-aa
new file mode 100644
index 00000000000..5405dc80e66
--- /dev/null
+++ b/net/ORBit2/patches/patch-aa
@@ -0,0 +1,21 @@
+$NetBSD: patch-aa,v 1.6 2004/11/05 10:19:10 sketch Exp $
+
+--- src/idl-compiler/orbit-idl-c-headers.c.orig Wed Nov 3 13:10:51 2004
++++ src/idl-compiler/orbit-idl-c-headers.c Wed Nov 3 13:11:53 2004
+@@ -447,6 +447,16 @@
+ while(*cte && !isspace((int)*cte) && *cte != '"') cte++;
+ *cte = '\0';
+ fprintf(ci->fh, "#include <%s>\n", ctmp);
++ } else if(!strncmp(list->data,
++ "#pragma\tinclude_defs",
++ sizeof("#pragma\tinclude_defs")-1)) {
++ char *ctmp, *cte;
++ ctmp = ((char *)list->data) + sizeof("#pragma\tinclude_defs");
++ while(*ctmp && (isspace((int)*ctmp) || *ctmp == '"')) ctmp++;
++ cte = ctmp;
++ while(*cte && !isspace((int)*cte) && *cte != '"') cte++;
++ *cte = '\0';
++ fprintf(ci->fh, "#include <%s>\n", ctmp);
+ } else
+ fprintf(ci->fh, "%s\n", (char *)list->data);
+ }