3 Commits

7 changed files with 141 additions and 81 deletions

View File

@@ -1,20 +1,24 @@
Description: Honor build flags passed as command line arguments
Author: Stefano Rivera <stefanor@debian.org>
Forwarded: not-needed
Last-Update: 2019-10-17
From: Stefano Rivera <stefanor@debian.org>
Date: Sun, 24 Jan 2021 19:07:24 -0700
Subject: Honor build flags passed as command line arguments
Index: snowball-2.2.0/GNUmakefile
===================================================================
--- snowball-2.2.0.orig/GNUmakefile
+++ snowball-2.2.0/GNUmakefile
@@ -170,8 +170,8 @@ C_OTHER_OBJECTS = $(C_OTHER_SOURCES:.c=.
Forwarded: not-needed
---
GNUmakefile | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/GNUmakefile b/GNUmakefile
index e1403be..8c50ec5 100644
--- a/GNUmakefile
+++ b/GNUmakefile
@@ -190,8 +190,8 @@ C_OTHER_OBJECTS = $(C_OTHER_SOURCES:.c=.o)
JAVA_CLASSES = $(JAVA_SOURCES:.java=.class)
JAVA_RUNTIME_CLASSES=$(JAVARUNTIME_SOURCES:.java=.class)
-CFLAGS=-O2 -W -Wall -Wmissing-prototypes -Wmissing-declarations
-CFLAGS=-g -O2 -W -Wall -Wmissing-prototypes -Wmissing-declarations -Wshadow $(WERROR)
-CPPFLAGS=
+override_CFLAGS += -O2 -W -Wall -Wmissing-prototypes -Wmissing-declarations
+ovveride_CPPFLAGS +=
+override CFLAGS += -g -O2 -W -Wall -Wmissing-prototypes -Wmissing-declarations -Wshadow $(WERROR)
+CPPFLAGS?=
INCLUDES=-Iinclude

View File

@@ -1,20 +1,25 @@
Description: preserve the Python source directory instead of deleting it
Author: Dmitry Shachnev <mitya57@debian.org>
Forwarded: not-needed
Last-Update: 2020-07-18
From: Dmitry Shachnev <mitya57@debian.org>
Date: Sun, 24 Jan 2021 19:07:24 -0700
Subject: Preserve the Python source directory instead of deleting it
Index: snowball-2.1.0/GNUmakefile
===================================================================
--- snowball-2.1.0.orig/GNUmakefile
+++ snowball-2.1.0/GNUmakefile
@@ -464,9 +464,7 @@ dist_libstemmer_python: $(PYTHON_SOURCES
Forwarded: not-needed
---
GNUmakefile | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/GNUmakefile b/GNUmakefile
index c9754be..fc05d93 100644
--- a/GNUmakefile
+++ b/GNUmakefile
@@ -487,9 +487,7 @@ dist_libstemmer_python: $(PYTHON_SOURCES) $(COMMON_FILES)
cp -a $(PYTHON_SOURCES) $${dest}/src/$(python_runtime_dir) && \
cp -a $(PYTHON_SAMPLE_SOURCES) $${dest}/src/$(python_sample_dir) && \
cp -a $(PYTHON_RUNTIME_SOURCES) $${dest}/src/$(python_runtime_dir) && \
- cp -a $(COMMON_FILES) $(PYTHON_PACKAGE_FILES) $${dest} && \
- (cd $${dest} && $(python) setup.py sdist bdist_wheel && cp dist/*.tar.gz dist/*.whl ..) && \
- (cd $${dest} && $(python) -m build && cp dist/*.tar.gz dist/*.whl ..) && \
- rm -rf $${dest}
+ cp -a $(COMMON_FILES) $(PYTHON_PACKAGE_FILES) $${dest}
dist_libstemmer_js: $(JS_SOURCES)
dist_libstemmer_js: $(JS_SOURCES) $(COMMON_FILES)
destname=jsstemmer-$(SNOWBALL_VERSION); \

View File

@@ -1,116 +1,139 @@
Description: Build libstemmer as a shared library.
Author: Stefano Rivera <stefanor@debian.org>
Forwarded: http://news.gmane.org/find-root.php?message_id=%3c20110821220427.GC1738%40bach.rivera.co.za%3e
Last-Update: 2019-10-17
iFrom: Stefano Rivera <stefanor@debian.org>
Date: Sun, 24 Jan 2021 19:07:24 -0700
Subject: Build libstemmer as a shared library.
Index: snowball-2.2.0/GNUmakefile
===================================================================
--- snowball-2.2.0.orig/GNUmakefile
+++ snowball-2.2.0/GNUmakefile
@@ -175,7 +175,7 @@ ovveride_CPPFLAGS +=
Forwarded: https://github.com/snowballstem/snowball/pull/42
---
GNUmakefile | 42 ++++++++++++++++++++++++++++--------------
1 file changed, 28 insertions(+), 14 deletions(-)
diff --git a/GNUmakefile b/GNUmakefile
index 8c50ec5..c9754be 100644
--- a/GNUmakefile
+++ b/GNUmakefile
@@ -65,6 +65,8 @@ ICONV = iconv
STEMMING_DATA ?= ../snowball-data
STEMMING_DATA_ABS := $(abspath $(STEMMING_DATA))
+STEMWORDS=LD_LIBRARY_PATH=.:$(LD_LIBRARY_PATH) ./stemwords$(EXEEXT)
+
# Keep one in $(THIN_FACTOR) entries from gzipped vocabularies.
THIN_FACTOR ?= 3
@@ -195,7 +197,7 @@ CPPFLAGS?=
INCLUDES=-Iinclude
-all: snowball$(EXEEXT) libstemmer.a stemwords$(EXEEXT) $(C_OTHER_SOURCES) $(C_OTHER_HEADERS) $(C_OTHER_OBJECTS)
+all: snowball$(EXEEXT) libstemmer.so stemwords$(EXEEXT) $(C_OTHER_SOURCES) $(C_OTHER_HEADERS) $(C_OTHER_OBJECTS)
+all: snowball$(EXEEXT) libstemmer.a libstemmer.so stemwords$(EXEEXT) $(C_OTHER_SOURCES) $(C_OTHER_HEADERS) $(C_OTHER_OBJECTS)
algorithms.mk: libstemmer/mkalgorithms.pl libstemmer/modules.txt
libstemmer/mkalgorithms.pl algorithms.mk libstemmer/modules.txt
@@ -183,7 +183,7 @@ algorithms.mk: libstemmer/mkalgorithms.p
@@ -203,7 +205,7 @@ algorithms.mk: libstemmer/mkalgorithms.pl libstemmer/modules.txt
clean:
rm -f $(COMPILER_OBJECTS) $(RUNTIME_OBJECTS) \
$(LIBSTEMMER_OBJECTS) $(LIBSTEMMER_UTF8_OBJECTS) $(STEMWORDS_OBJECTS) snowball$(EXEEXT) \
- libstemmer.a stemwords$(EXEEXT) \
+ $(wildcard libstemmer.so*) libstemmer.a stemwords$(EXEEXT) \
+ libstemmer.a libstemmer.so stemwords$(EXEEXT) \
libstemmer/modules.h \
libstemmer/modules_utf8.h \
$(C_LIB_SOURCES) $(C_LIB_HEADERS) $(C_LIB_OBJECTS) \
@@ -198,7 +198,7 @@ clean:
@@ -219,7 +221,7 @@ clean:
libstemmer/mkinc.mak libstemmer/mkinc_utf8.mak \
libstemmer/libstemmer.c libstemmer/libstemmer_utf8.c \
algorithms.mk
- rm -rf dist
+ rm -rf dist .shared
- rm -rf ada/obj dist
+ rm -rf ada/obj dist .shared
-rmdir $(c_src_dir)
-rmdir $(python_output_dir)
-rmdir $(js_output_dir)
@@ -222,14 +222,19 @@ libstemmer/modules_utf8.h libstemmer/mki
@@ -257,17 +259,25 @@ libstemmer/libstemmer.o: libstemmer/modules.h $(C_LIB_HEADERS)
libstemmer.a: libstemmer/libstemmer.o $(RUNTIME_OBJECTS) $(C_LIB_OBJECTS)
$(AR) -cru $@ $^
libstemmer/libstemmer.o: libstemmer/modules.h $(C_LIB_HEADERS)
-libstemmer.a: libstemmer/libstemmer.o $(RUNTIME_OBJECTS) $(C_LIB_OBJECTS)
- $(AR) -cru $@ $^
+libstemmer.so: libstemmer/libstemmer.o $(RUNTIME_OBJECTS) $(C_LIB_OBJECTS)
+ $(CC) -shared $(LDFLAGS) \
+ -Wl,--version-script=${RPM_SOURCE_DIR}/libstemmer.ver,-soname,libstemmer.so.1d \
+ -o $@.1d.0.0 ${^:%=.shared/%}
+ ln -s $@.1d.0.0 $@.1d
+ ln -s $@.1d.0.0 $@
+ $(CC) $(CFLAGS) -shared $(LDFLAGS) \
+ -Wl,--version-script=debian/libstemmer.ver,-soname,libstemmer.so.0d \
+ -o $@.0d.0.0 ${^:%=.shared/%}
+ ln -s $@.0d.0.0 $@.0d
+ ln -s $@.0d.0.0 $@
+ $(AR) -crs ${@:.so=.a} $^
+
examples/%.o: examples/%.c
$(CC) $(CFLAGS) $(INCLUDES) $(CPPFLAGS) -c -o $@ $<
-stemwords$(EXEEXT): $(STEMWORDS_OBJECTS) libstemmer.a
- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^
+stemwords$(EXEEXT): $(STEMWORDS_OBJECTS) libstemmer.so
+ $(CC) $(CFLAGS) $(LDFLAGS) -g -o $@ $(STEMWORDS_OBJECTS) -L. -lstemmer
+ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(STEMWORDS_OBJECTS) -L. -lstemmer
tests/%.o: tests/%.c
$(CC) $(CFLAGS) $(INCLUDES) $(CPPFLAGS) -c -o $@ $<
@@ -275,7 +280,6 @@ $(c_src_dir)/stem_ISO_8859_2_%.c $(c_src
./snowball charsets/ISO-8859-2.sbl $< -o $${o} -eprefix $${l}_ISO_8859_2_ -r ../runtime
-stemtest$(EXEEXT): $(STEMTEST_OBJECTS) libstemmer.a
- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^
+stemtest$(EXEEXT): $(STEMTEST_OBJECTS) libstemmer.so
+ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(STEMTEST_OBJECTS) -L. -lstemmer
csharp_stemwords$(EXEEXT): $(CSHARP_STEMWORDS_SOURCES) $(CSHARP_RUNTIME_SOURCES) $(CSHARP_SOURCES)
$(MCS) -unsafe -target:exe -out:$@ $(CSHARP_STEMWORDS_SOURCES) $(CSHARP_RUNTIME_SOURCES) $(CSHARP_SOURCES)
@@ -295,7 +305,6 @@ $(c_src_dir)/stem_ISO_8859_2_%.c $(c_src_dir)/stem_ISO_8859_2_%.h: algorithms/%.
./snowball charsets/ISO-8859-2.sbl $< -o "$(c_src_dir)/stem_ISO_8859_2_$*" -eprefix $*_ISO_8859_2_ -r ../runtime
$(c_src_dir)/stem_%.o: $(c_src_dir)/stem_%.c $(c_src_dir)/stem_%.h
- $(CC) $(CFLAGS) $(INCLUDES) $(CPPFLAGS) -c -o $@ $<
$(java_src_dir)/%Stemmer.java: algorithms/%.sbl snowball$(EXEEXT)
@mkdir -p $(java_src_dir)
@@ -520,13 +524,14 @@ check_koi8r: $(KOI8_R_algorithms:%=check
# a sibling to this one.
STEMMING_DATA ?= ../snowball-data
STEMMING_DATA_ABS := $(abspath $(STEMMING_DATA))
+STEMWORDS=LD_LIBRARY_PATH=.:$(LD_LIBRARY_PATH) ./stemwords$(EXEEXT)
@@ -509,7 +518,7 @@ dist_libstemmer_js: $(JS_SOURCES) $(COMMON_FILES)
check: check_stemtest check_utf8 check_iso_8859_1 check_iso_8859_2 check_koi8r
check_stemtest: stemtest$(EXEEXT)
- ./stemtest
+ LD_LIBRARY_PATH=.:$(LD_LIBRARY_PATH) ./stemtest
check_utf8: $(libstemmer_algorithms:%=check_utf8_%)
@@ -522,9 +531,9 @@ check_koi8r: $(KOI8_R_algorithms:%=check_koi8r_%)
check_utf8_%: $(STEMMING_DATA)/% stemwords$(EXEEXT)
@echo "Checking output of `echo $<|sed 's!.*/!!'` stemmer with UTF-8"
@echo "Checking output of $* stemmer with UTF-8"
@if test -f '$</voc.txt.gz' ; then \
- gzip -dc '$</voc.txt.gz'|./stemwords$(EXEEXT) -c UTF_8 -l `echo $<|sed 's!.*/!!'` -o tmp.txt; \
+ gzip -dc '$</voc.txt.gz'|$(STEMWORDS) -c UTF_8 -l `echo $<|sed 's!.*/!!'` -o tmp.txt; \
- gzip -dc '$</voc.txt.gz'|./stemwords$(EXEEXT) -c UTF_8 -l $* -o tmp.txt; \
+ gzip -dc '$</voc.txt.gz'|$(STEMWORDS) -c UTF_8 -l $* -o tmp.txt; \
else \
- ./stemwords$(EXEEXT) -c UTF_8 -l `echo $<|sed 's!.*/!!'` -i $</voc.txt -o tmp.txt; \
+ $(STEMWORD) -c UTF_8 -l `echo $<|sed 's!.*/!!'` -i $</voc.txt -o tmp.txt; \
- ./stemwords$(EXEEXT) -c UTF_8 -l $* -i $</voc.txt -o tmp.txt; \
+ $(STEMWORDS) -c UTF_8 -l $* -i $</voc.txt -o tmp.txt; \
fi
@if test -f '$</output.txt.gz' ; then \
gzip -dc '$</output.txt.gz'|$(DIFF) -u - tmp.txt; \
@@ -538,7 +543,7 @@ check_utf8_%: $(STEMMING_DATA)/% stemwor
@@ -536,7 +545,7 @@ check_utf8_%: $(STEMMING_DATA)/% stemwords$(EXEEXT)
check_iso_8859_1_%: $(STEMMING_DATA)/% stemwords$(EXEEXT)
@echo "Checking output of `echo $<|sed 's!.*/!!'` stemmer with ISO_8859_1"
@echo "Checking output of $* stemmer with ISO_8859_1"
@$(ICONV) -f UTF-8 -t ISO-8859-1 '$</voc.txt' |\
- ./stemwords -c ISO_8859_1 -l `echo $<|sed 's!.*/!!'` -o tmp.txt
+ $(STEMWORDS) -c ISO_8859_1 -l `echo $<|sed 's!.*/!!'` -o tmp.txt
- ./stemwords -c ISO_8859_1 -l $* -o tmp.txt
+ $(STEMWORDS) -c ISO_8859_1 -l $* -o tmp.txt
@$(ICONV) -f UTF-8 -t ISO-8859-1 '$</output.txt' |\
$(DIFF) -u - tmp.txt
@rm tmp.txt
@@ -546,7 +551,7 @@ check_iso_8859_1_%: $(STEMMING_DATA)/% s
@@ -544,7 +553,7 @@ check_iso_8859_1_%: $(STEMMING_DATA)/% stemwords$(EXEEXT)
check_iso_8859_2_%: $(STEMMING_DATA)/% stemwords$(EXEEXT)
@echo "Checking output of `echo $<|sed 's!.*/!!'` stemmer with ISO_8859_2"
@echo "Checking output of $* stemmer with ISO_8859_2"
@$(ICONV) -f UTF-8 -t ISO-8859-2 '$</voc.txt' |\
- ./stemwords -c ISO_8859_2 -l `echo $<|sed 's!.*/!!'` -o tmp.txt
+ $(STEMWORDS) -c ISO_8859_2 -l `echo $<|sed 's!.*/!!'` -o tmp.txt
- ./stemwords -c ISO_8859_2 -l $* -o tmp.txt
+ $(STEMWORDS) -c ISO_8859_2 -l $* -o tmp.txt
@$(ICONV) -f UTF-8 -t ISO-8859-2 '$</output.txt' |\
$(DIFF) -u - tmp.txt
@rm tmp.txt
@@ -554,7 +559,7 @@ check_iso_8859_2_%: $(STEMMING_DATA)/% s
@@ -552,7 +561,7 @@ check_iso_8859_2_%: $(STEMMING_DATA)/% stemwords$(EXEEXT)
check_koi8r_%: $(STEMMING_DATA)/% stemwords$(EXEEXT)
@echo "Checking output of `echo $<|sed 's!.*/!!'` stemmer with KOI8R"
@echo "Checking output of $* stemmer with KOI8R"
@$(ICONV) -f UTF-8 -t KOI8-R '$</voc.txt' |\
- ./stemwords -c KOI8_R -l `echo $<|sed 's!.*/!!'` -o tmp.txt
+ $(STEMWORDS) -c KOI8_R -l `echo $<|sed 's!.*/!!'` -o tmp.txt
- ./stemwords -c KOI8_R -l $* -o tmp.txt
+ $(STEMWORDS) -c KOI8_R -l $* -o tmp.txt
@$(ICONV) -f UTF-8 -t KOI8-R '$</output.txt' |\
$(DIFF) -u - tmp.txt
@rm tmp.txt
@@ -739,4 +744,9 @@ ada/bin/generate:
@@ -797,4 +806,9 @@ ada/bin/generate:
ada/bin/stemwords: $(ADA_SOURCES)
cd ada && $(gprbuild) -Pstemwords -p
@@ -120,3 +143,4 @@ Index: snowball-2.2.0/GNUmakefile
+ $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $<
+
.SUFFIXES: .class .java

Binary file not shown.

3
snowball-3.0.1.tar.gz Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:80ac10ce40dc4fcfbfed8d085c457b5613da0e86a73611a3d5527d044a142d60
size 256065

View File

@@ -1,3 +1,25 @@
-------------------------------------------------------------------
Mon Sep 1 20:39:44 UTC 2025 - malcolmlewis@opensuse.org
- Updated to version 3.0.1:
+ The __init__.py in 3.0.0 was incorrectly generated due to a
missing build dependency and the list of algorithms was empty,
(gh#snowballstem/snowball#229, gh#snowballstem/snowball#230
and gh#snowballstem/snowball#231).
+ Add trove classifiers for Armenian and Yiddish which have now
been registered with PyPI, (gh#snowballstem/snowball#228).
- Changes from version 3.0.0:
+ Numerous bug fixes and improvements, see full details in
/usr/share/doc/packages/snowball/NEWS.
- Rebase build-options.diff, python-dist.diff and
shared-library.diff.
- Spec file clean up and add patch attributions.
-------------------------------------------------------------------
Thu Apr 4 13:43:20 UTC 2024 - Dominique Leuenberger <dimstar@opensuse.org>
- Properly tag patches as PATCH-FIX-OPENSUSE.
-------------------------------------------------------------------
Tue Oct 10 08:53:44 UTC 2023 - Dominique Leuenberger <dimstar@opensuse.org>

View File

@@ -1,7 +1,7 @@
#
# spec file for package snowball
#
# Copyright (c) 2023 SUSE LLC
# Copyright (c) 2025 SUSE LLC and contributors
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -19,15 +19,18 @@
%define library_name libstemmer1d
Name: snowball
Version: 2.2.0
Version: 3.0.1
Release: 0
Summary: Snowball compiler and stemming algorithms
License: BSD-3-Clause
URL: https://snowballstem.org
Source: https://github.com/snowballstem/snowball/archive/v%{version}.tar.gz#/snowball-%{version}.tar.gz
Source1: libstemmer.ver
# PATCH-FIX-OPENSUSE build-options.diff Stefano Rivera <stefanor@debian.org> -- Honor build flags passed as command line arguments.
Patch0: build-options.diff
# PATCH-FIX-OPENSUSE shared-library.diff Stefano Rivera <stefanor@debian.org> -- Build libstemmer as a shared library.
Patch1: shared-library.diff
# PATCH-FIX-OPENSUSE python-dist.diff Dmitry Shachnev <mitya57@debian.org> -- Preserve the Python source directory instead of deleting it.
Patch2: python-dist.diff
Provides: libstemmer-tools = %{version}-%{release}
@@ -90,13 +93,15 @@ This package holds the development files for libstemmer.
%prep
%autosetup -p1
mkdir -p debian
cp %{S:1} debian/
%build
%make_build CFLAGS="%{optflags}"
%install
install -D -m 0755 -d %{buildroot}%{_libdir}
cp -a libstemmer.so* %{buildroot}%{_libdir}
cp -a libstemmer.so* %{buildroot}%{_libdir}
install -D -m 0644 include/libstemmer.h %{buildroot}%{_includedir}/libstemmer.h
install -D -m 0755 stemwords %{buildroot}%{_bindir}/stemwords