]> granicus.if.org Git - postgresql/blob - src/backend/snowball/Makefile
ba0c60db28a49e9a28fdeaed0c6e87c53cef4abc
[postgresql] / src / backend / snowball / Makefile
1 #-------------------------------------------------------------------------
2 #
3 # Makefile for src/backend/snowball
4 #
5 # $PostgreSQL: pgsql/src/backend/snowball/Makefile,v 1.4 2007/10/23 20:46:12 tgl Exp $
6 #
7 #-------------------------------------------------------------------------
8
9 subdir = src/backend/snowball
10 top_builddir = ../../..
11 include $(top_builddir)/src/Makefile.global
12
13 override CPPFLAGS := -I$(top_srcdir)/src/include/snowball \
14         -I$(top_srcdir)/src/include/snowball/libstemmer $(CPPFLAGS)
15
16 OBJS= dict_snowball.o api.o utilities.o \
17         stem_ISO_8859_1_danish.o \
18         stem_ISO_8859_1_dutch.o \
19         stem_ISO_8859_1_english.o \
20         stem_ISO_8859_1_finnish.o \
21         stem_ISO_8859_1_french.o \
22         stem_ISO_8859_1_german.o \
23         stem_ISO_8859_1_hungarian.o \
24         stem_ISO_8859_1_italian.o \
25         stem_ISO_8859_1_norwegian.o \
26         stem_ISO_8859_1_porter.o \
27         stem_ISO_8859_1_portuguese.o \
28         stem_ISO_8859_1_spanish.o \
29         stem_ISO_8859_1_swedish.o \
30         stem_ISO_8859_2_romanian.o \
31         stem_KOI8_R_russian.o \
32         stem_UTF_8_danish.o \
33         stem_UTF_8_dutch.o \
34         stem_UTF_8_english.o \
35         stem_UTF_8_finnish.o \
36         stem_UTF_8_french.o \
37         stem_UTF_8_german.o \
38         stem_UTF_8_hungarian.o \
39         stem_UTF_8_italian.o \
40         stem_UTF_8_norwegian.o \
41         stem_UTF_8_porter.o \
42         stem_UTF_8_portuguese.o \
43         stem_UTF_8_romanian.o \
44         stem_UTF_8_russian.o \
45         stem_UTF_8_spanish.o \
46         stem_UTF_8_swedish.o \
47         stem_UTF_8_turkish.o
48
49 # first column is language name and also name of dictionary for not-all-ASCII
50 # words, second is name of dictionary for all-ASCII words
51 # Note order dependency: use of some other language as ASCII dictionary
52 # must come after creation of that language
53 LANGUAGES=  \
54         danish          danish          \
55         dutch           dutch           \
56         english         english         \
57         finnish         finnish         \
58         french          french          \
59         german          german          \
60         hungarian       hungarian       \
61         italian         italian         \
62         norwegian       norwegian       \
63         portuguese      portuguese      \
64         romanian        romanian        \
65         russian         english         \
66         spanish         spanish         \
67         swedish         swedish         \
68         turkish         turkish
69
70
71 SQLSCRIPT= snowball_create.sql
72 DICTDIR=tsearch_data
73
74 ifdef VPATH
75 override VPATH := $(srcdir)/libstemmer:$(VPATH)
76 else
77 VPATH = $(srcdir)/libstemmer
78 endif
79
80 SHLIB_LINK      := $(BE_DLLLIBS)
81
82 NAME := dict_snowball
83 SO_MAJOR_VERSION := 0
84 SO_MINOR_VERSION := 0
85 rpath =
86
87 all: all-shared-lib $(SQLSCRIPT)
88
89 include $(top_srcdir)/src/Makefile.shlib
90
91 $(SQLSCRIPT): Makefile snowball_func.sql.in snowball.sql.in
92 ifeq ($(enable_shared), yes)
93         echo '-- Language-specific snowball dictionaries' > $@
94         cat $(srcdir)/snowball_func.sql.in >> $@        
95         @set $(LANGUAGES) ; \
96         while [ "$$#" -gt 0 ] ; \
97         do \
98                 lang=$$1; shift; \
99                 nonascdictname=$$lang; \
100                 ascdictname=$$1; shift; \
101                 if [ -s $(srcdir)/stopwords/$${lang}.stop ] ; then \
102                         stop=", StopWords=$${lang}" ; \
103                 else \
104                         stop=""; \
105                 fi; \
106                 cat $(srcdir)/snowball.sql.in | \
107                         sed -e "s#_LANGNAME_#$$lang#g" | \
108                         sed -e "s#_DICTNAME_#$${lang}_stem#g" | \
109                         sed -e "s#_CFGNAME_#$$lang#g" | \
110                         sed -e "s#_ASCDICTNAME_#$${ascdictname}_stem#g" | \
111                         sed -e "s#_NONASCDICTNAME_#$${nonascdictname}_stem#g" | \
112                         sed -e "s#_STOPWORDS_#$$stop#g" ; \
113         done >> $@
114 else
115         echo "-- No language-specific snowball dictionaries, for lack of shared library support" > $@
116 endif
117
118 install: all installdirs
119 ifeq ($(enable_shared), yes)
120         $(INSTALL_SHLIB) $(shlib) '$(DESTDIR)$(pkglibdir)/$(NAME)$(DLSUFFIX)'
121 endif
122         $(INSTALL_DATA) $(SQLSCRIPT) '$(DESTDIR)$(datadir)'
123         @set $(LANGUAGES) ; \
124         while [ "$$#" -gt 0 ] ; \
125         do \
126                 lang=$$1; shift; shift; \
127                 if [ -s $(srcdir)/stopwords/$${lang}.stop ] ; then \
128                         $(INSTALL_DATA) $(srcdir)/stopwords/$${lang}.stop '$(DESTDIR)$(datadir)/$(DICTDIR)' ; \
129                 fi \
130         done
131
132 installdirs:
133         $(mkinstalldirs) '$(DESTDIR)$(pkglibdir)' '$(DESTDIR)$(datadir)' '$(DESTDIR)$(datadir)/$(DICTDIR)'
134
135 uninstall:
136         rm -f '$(DESTDIR)$(pkglibdir)/$(NAME)$(DLSUFFIX)'
137         rm -f '$(DESTDIR)$(datadir)/$(SQLSCRIPT)'
138         @set $(LANGUAGES) ; \
139         while [ "$$#" -gt 0 ] ; \
140         do \
141                 lang=$$1; shift; shift;  \
142                 if [ -s $(srcdir)/stopwords/$${lang}.stop ] ; then \
143                     rm -f '$(DESTDIR)$(datadir)/$(DICTDIR)/'$${lang}.stop ; \
144                 fi \
145         done
146
147 clean distclean maintainer-clean: clean-lib
148         rm -f $(OBJS) $(SQLSCRIPT)