3
languages=english porter
5
COMPILER_SOURCES = compiler/space.c \
11
compiler/generator_java.c
12
COMPILER_HEADERS = compiler/header.h \
16
RUNTIME_SOURCES = runtime/api.c \
18
RUNTIME_HEADERS = runtime/api.h \
21
MKMODULES_SOURCES = libstemmer/mkmodules.c
23
LIBSTEMMER_SOURCES = libstemmer/libstemmer.c \
26
STEMWORDS_SOURCES = examples/stemwords.c
28
COMPILER_OBJECTS=$(COMPILER_SOURCES:.c=.o)
29
RUNTIME_OBJECTS=$(RUNTIME_SOURCES:.c=.o)
30
MKMODULES_OBJECTS=$(MKMODULES_SOURCES:.c=.o)
31
LIBSTEMMER_OBJECTS=$(LIBSTEMMER_SOURCES:.c=.o)
32
STEMWORDS_OBJECTS=$(STEMWORDS_SOURCES:.c=.o)
36
all: snowball libstemmer.o stemwords
39
rm -f $(COMPILER_OBJECTS) $(RUNTIME_OBJECTS) $(MKMODULES_OBJECTS) \
40
$(LIBSTEMMER_OBJECTS) $(STEMWORDS_OBJECTS) snowball mkmodules \
41
libstemmer.o stemwords libstemmer/modules.h snowball.splint
43
snowball: $(COMPILER_OBJECTS)
46
mkmodules: $(MKMODULES_SOURCES)
49
libstemmer/modules.h: mkmodules
50
./mkmodules $@ $(languages)
52
libstemmer/libstemmer.o: libstemmer/modules.h
54
libstemmer.o: libstemmer/libstemmer.o $(RUNTIME_OBJECTS) $(languages:=/stem.o)
57
stemwords: $(STEMWORDS_OBJECTS) libstemmer.o
60
%/stem.c: %/stem.sbl snowball
61
@l=`echo "$<" | sed 's!\(.*\)/stem.sbl$$!\1!;s!^.*/!!'`; \
62
./snowball $< -o $${l}/stem -eprefix $${l}_
64
%/stem.o: %/stem.c %/stem.h
65
$(CC) $(CFLAGS) -O4 -c -o $@ -I runtime/ $<
67
splint: snowball.splint
68
snowball.splint: $(COMPILER_SOURCES)