From 4e1b9526717720f5004a7a7c7859a410fe019f7f Mon Sep 17 00:00:00 2001 From: rillig Date: Thu, 27 Oct 2005 01:08:06 +0000 Subject: Added two more patches for Solaris, which makes the package build. Removed the extra LIBS for the SunPro compiler from the Makefile, as they made the build fail for me. --- textproc/aspell/Makefile | 8 +--- textproc/aspell/distinfo | 4 +- textproc/aspell/patches/patch-al | 79 ++++++++++++++++++++++++++++++++++++++++ textproc/aspell/patches/patch-am | 24 ++++++++++++ 4 files changed, 107 insertions(+), 8 deletions(-) create mode 100644 textproc/aspell/patches/patch-al create mode 100644 textproc/aspell/patches/patch-am (limited to 'textproc/aspell') diff --git a/textproc/aspell/Makefile b/textproc/aspell/Makefile index d8ece801c11..33c86a483a3 100644 --- a/textproc/aspell/Makefile +++ b/textproc/aspell/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.36 2005/09/11 16:29:58 minskim Exp $ +# $NetBSD: Makefile,v 1.37 2005/10/27 01:08:06 rillig Exp $ # DISTNAME= aspell-0.60.3 @@ -42,12 +42,6 @@ NOT_FOR_COMPILER= xlc LIBS.SunOS+= -lm -.include "../../mk/compiler.mk" - -.if !empty(PKGSRC_COMPILER:Msunpro) -LIBS.SunOS+= -lCrun -lCstd -.endif - # Create directory for dictionaries. post-install: ${INSTALL_DATA_DIR} ${PREFIX}/lib/aspell diff --git a/textproc/aspell/distinfo b/textproc/aspell/distinfo index 1763eb5c6c5..9faab78603c 100644 --- a/textproc/aspell/distinfo +++ b/textproc/aspell/distinfo @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.16 2005/10/27 00:18:51 rillig Exp $ +$NetBSD: distinfo,v 1.17 2005/10/27 01:08:06 rillig Exp $ SHA1 (aspell-0.60.3.tar.gz) = 90f9414947550b92f2a113b131d8c628cb7e7887 RMD160 (aspell-0.60.3.tar.gz) = 92e0dd8e271a48f73407e23c2d0246f2827e1789 @@ -9,3 +9,5 @@ SHA1 (patch-ah) = b38fa850bb3ff3c62c020fb45ce388888f145286 SHA1 (patch-ai) = f5192b728bb9de6b5b0beeeaa8cc771bc3321aae SHA1 (patch-aj) = 1bb74cbd4c6aaade00c0289e9f1ae5c992d2ea26 SHA1 (patch-ak) = c4e228b8712c1e36bbeb8d268f83893cfeb4e620 +SHA1 (patch-al) = 2e39f1670f99c9267be2b2d214765a19a5390b9f +SHA1 (patch-am) = a40d1f2e6f02c49143f04f316c992daf6f71c13f diff --git a/textproc/aspell/patches/patch-al b/textproc/aspell/patches/patch-al new file mode 100644 index 00000000000..d4467f31cf1 --- /dev/null +++ b/textproc/aspell/patches/patch-al @@ -0,0 +1,79 @@ +$NetBSD: patch-al,v 1.1 2005/10/27 01:08:06 rillig Exp $ + +The SunPro compiler does not like empty arrays, so let's not create C++ +source files that have them. + +--- gen/mk-static-filter.pl.orig 2004-06-29 02:18:17.000000000 +0200 ++++ gen/mk-static-filter.pl 2005-10-27 02:45:45.784646500 +0200 +@@ -130,38 +130,44 @@ printf STATICFILTERS "\n };\n"; + printf STATICFILTERS "\n const unsigned int standard_filters_size = ". + "sizeof(standard_filters)/sizeof(FilterEntry);\n"; + ++my %empty_filters = (); + + #create KeyInfo structures for each static filter + while ($filter = shift @filterhashes) { +- printf STATICFILTERS "\n static KeyInfo ".${$filter}{"NAME"}."_options[] = {\n"; ++ my $txt = "\n static KeyInfo ".${$filter}{"NAME"}."_options[] = {\n"; + + #create KeyInfo structs and begin end handles + $firstopt = 1; + while (($name,$option)=each %{$filter}) { + ($name=~/(?:NAME|(?:DE|EN)CODER|FILTER|DESCRIPTION)/) && next; +- ( $firstopt != 1 ) && ( printf STATICFILTERS ",\n" ); ++ ( $firstopt != 1 ) && ( $txt .= ",\n" ); + $firstopt = 0; +- printf STATICFILTERS " {\n". ++ $txt .= " {\n". + " \"f-${$filter}{NAME}-$name\",\n"; + ( (lc ${$option}{"TYPE"}) eq "bool") && +- printf STATICFILTERS " KeyInfoBool,\n"; ++ ($txt .= " KeyInfoBool,\n"); + ( (lc ${$option}{"TYPE"}) eq "int") && +- printf STATICFILTERS " KeyInfoInt,\n"; ++ ($txt .= " KeyInfoInt,\n"); + ( (lc ${$option}{"TYPE"}) eq "string") && +- printf STATICFILTERS " KeyInfoString,\n"; ++ ($txt .= " KeyInfoString,\n"); + ( (lc ${$option}{"TYPE"}) eq "list") && +- printf STATICFILTERS " KeyInfoList,\n"; +- print STATICFILTERS " \"".${$option}{"DEFAULT"}."\",\n". ++ ($txt .= " KeyInfoList,\n"); ++ $txt .= " \"".${$option}{"DEFAULT"}."\",\n". + " \"".${$option}{"DESCRIPTION"}."\"\n". + " }"; + } +- printf STATICFILTERS "\n };\n"; +- printf STATICFILTERS "\n const KeyInfo * ".${$filter}{"NAME"}."_options_begin = ". ++ $txt .= "\n };\n"; ++ $txt .= "\n const KeyInfo * ".${$filter}{"NAME"}."_options_begin = ". + ${$filter}{"NAME"}."_options;\n"; +- printf STATICFILTERS "\n const KeyInfo * ".${$filter}{"NAME"}."_options_end = ". ++ $txt .= "\n const KeyInfo * ".${$filter}{"NAME"}."_options_end = ". + ${$filter}{"NAME"}."_options+sizeof(". + ${$filter}{"NAME"}."_options)/". + "sizeof(KeyInfo);\n"; ++ if ($firstopt != 1) { ++ print STATICFILTERS $txt; ++ } else { ++ $empty_filters{$filter->{"NAME"}} = 1; ++ } + } + + #finally create filter modules list. +@@ -170,6 +176,7 @@ printf STATICFILTERS "\n\n static Conf + #printf STATICFILTERS " {\"fm\",0,modes_module_begin,modes_module_end}"; + $firstopt = 1; + while ($filter = shift @rallfilters) { ++ if (!exists($empty_filters{$filter})) { + ( $firstopt != 1 ) && ( printf STATICFILTERS ",\n" ); + $firstopt = 0; + printf STATICFILTERS " {\n". +@@ -177,6 +184,7 @@ while ($filter = shift @rallfilters) { + " \"".${${filters}{$filter}}{DESCRIPTION}."\",\n" . + " ${filter}_options_begin,${filter}_options_end\n" . + " }"; ++ } + } + printf STATICFILTERS "\n };\n"; + printf STATICFILTERS "\n const ConfigModule * filter_modules_begin = ". diff --git a/textproc/aspell/patches/patch-am b/textproc/aspell/patches/patch-am new file mode 100644 index 00000000000..cf822de8e30 --- /dev/null +++ b/textproc/aspell/patches/patch-am @@ -0,0 +1,24 @@ +$NetBSD: patch-am,v 1.1 2005/10/27 01:08:06 rillig Exp $ + +To understand recursion, you first have to understand recursion. + +--- prog/aspell.cpp.orig 2005-06-19 13:58:59.000000000 +0200 ++++ prog/aspell.cpp 2005-10-27 02:53:09.018812500 +0200 +@@ -1878,7 +1878,7 @@ struct SML_Parms { + typedef SML_WordEntry Value; + typedef const char * Key; + static const bool is_multi = false; +- hash hash; ++ acommon::hash hash; + bool equal(Key x, Key y) {return strcmp(x,y) == 0;} + Key key(const Value & v) {return v.word;} + }; +@@ -2029,7 +2029,7 @@ struct CML_Parms { + typedef CML_Entry Value; + typedef const char * Key; + static const bool is_multi = true; +- hash hash; ++ acommon::hash hash; + bool equal(Key x, Key y) {return strcmp(x,y) == 0;} + Key key(const Value & v) {return v.word;} + }; -- cgit v1.2.3