Merging from head
[beagle.git] / beagled / Makefile.am
blob9b5b91b6b885c0271097a97c0ab444640052c89d
1 autostartdir = $(sysconfdir)/xdg/autostart
2 autostart_DATA = beagled-autostart.desktop
4 # Warnings we don't want to see.
5 # Most of these are thanks to DotLucene.  It would be nice if we could use
6 # "#pragma warning" on these.
8 # 0162 = Unreachable code detected
9 # 0164 = This label has not been referenced
10 # 0168 = The variable 'foo' is declared but never used
11 # 0169 = The private method/field 'foo' is never used
12 # 0219 = Variable is assigned but never used
13 # 0436 = Ignore imported type (local SqliteClient)
15 # unsafe arg for Mono.Data.SqliteClient fork
16 CSC = $(MCS) -debug -nowarn:0162,0164,0168,0169,0219,0436 -unsafe
18 BACKENDDIR = $(pkglibdir)/Backends
20 PLUGIN_TARGET = BeagleDaemonPlugins.dll
22 PLUGIN_CSFLAGS = -target:library
24 PLUGIN_CSFILES =                        \
25         $(srcdir)/Flavor.cs             \
26         $(srcdir)/Filter.cs
28 PLUGIN_LOCAL_ASSEMBLIES =               \
29         ../Util/Util.dll                \
30         ../BeagleClient/Beagle.dll
32 PLUGIN_ASSEMBLIES =                             \
33         -r:Mono.Posix                           \
34         $(BEAGLED_LIBS)                         \
35         $(PLUGIN_LOCAL_ASSEMBLIES:%=-r:%)
38 $(PLUGIN_TARGET): $(PLUGIN_CSFILES) $(PLUGIN_LOCAL_ASSEMBLIES)
39         $(CSC) -out:$@ $(PLUGIN_CSFLAGS) $(PLUGIN_CSFILES) $(PLUGIN_ASSEMBLIES)
41 ############################################################
43 WRAPPER_IN = wrapper.in
44 WRAPPER_SED = sed                                       \
45         -e "s|\@prefix\@|$(prefix)|g"                   \
46         -e "s|\@pkglibdir\@|$(pkglibdir)|g"             \
47         -e "s|\@libdir\@|$(libdir)|g"                   \
48         -e "s|\@evolibdir\@|$(EVO_LIBDIR)|g"            \
49         -e "s|\@gacprefix\@|$(GAC_PREFIX)|g"            \
50         -e "s|\@bash\@|$(BASH)|"                        \
51         -e "s|\@wrapper\@|$@|g"
53 ############################################################
55 lucenedir = $(srcdir)/Lucene.Net
57 LUCENE_1_9_CSFILES =                                                    \
58         $(lucenedir)/Analysis/Standard/CharStream.cs    \
59         $(lucenedir)/Analysis/Standard/FastCharStream.cs        \
60         $(lucenedir)/Analysis/Standard/ParseException.cs        \
61         $(lucenedir)/Analysis/Standard/StandardAnalyzer.cs      \
62         $(lucenedir)/Analysis/Standard/StandardFilter.cs        \
63         $(lucenedir)/Analysis/Standard/StandardTokenizer.cs     \
64         $(lucenedir)/Analysis/Standard/StandardTokenizerConstants.cs    \
65         $(lucenedir)/Analysis/Standard/StandardTokenizerTokenManager.cs \
66         $(lucenedir)/Analysis/Standard/Token.cs \
67         $(lucenedir)/Analysis/Standard/TokenMgrError.cs \
68         $(lucenedir)/Analysis/Analyzer.cs       \
69         $(lucenedir)/Analysis/CharTokenizer.cs  \
70         $(lucenedir)/Analysis/ISOLatin1AccentFilter.cs  \
71         $(lucenedir)/Analysis/KeywordAnalyzer.cs        \
72         $(lucenedir)/Analysis/KeywordTokenizer.cs       \
73         $(lucenedir)/Analysis/LengthFilter.cs   \
74         $(lucenedir)/Analysis/LetterTokenizer.cs        \
75         $(lucenedir)/Analysis/LowerCaseFilter.cs        \
76         $(lucenedir)/Analysis/LowerCaseTokenizer.cs     \
77         $(lucenedir)/Analysis/PerFieldAnalyzerWrapper.cs        \
78         $(lucenedir)/Analysis/PorterStemFilter.cs       \
79         $(lucenedir)/Analysis/PorterStemmer.cs  \
80         $(lucenedir)/Analysis/SimpleAnalyzer.cs \
81         $(lucenedir)/Analysis/StopAnalyzer.cs   \
82         $(lucenedir)/Analysis/StopFilter.cs     \
83         $(lucenedir)/Analysis/Token.cs  \
84         $(lucenedir)/Analysis/TokenFilter.cs    \
85         $(lucenedir)/Analysis/Tokenizer.cs      \
86         $(lucenedir)/Analysis/TokenStream.cs    \
87         $(lucenedir)/Analysis/WhitespaceAnalyzer.cs     \
88         $(lucenedir)/Analysis/WhitespaceTokenizer.cs    \
89         $(lucenedir)/Analysis/WordlistLoader.cs \
90         $(lucenedir)/Document/DateField.cs      \
91         $(lucenedir)/Document/DateTools.cs      \
92         $(lucenedir)/Document/Document.cs       \
93         $(lucenedir)/Document/Field.cs  \
94         $(lucenedir)/Document/NumberTools.cs    \
95         $(lucenedir)/Index/CompoundFileReader.cs        \
96         $(lucenedir)/Index/CompoundFileWriter.cs        \
97         $(lucenedir)/Index/DocumentWriter.cs    \
98         $(lucenedir)/Index/FieldInfo.cs \
99         $(lucenedir)/Index/FieldInfos.cs        \
100         $(lucenedir)/Index/FieldsReader.cs      \
101         $(lucenedir)/Index/FieldsWriter.cs      \
102         $(lucenedir)/Index/FilterIndexReader.cs \
103         $(lucenedir)/Index/IndexFileNameFilter.cs       \
104         $(lucenedir)/Index/IndexFileNames.cs    \
105         $(lucenedir)/Index/IndexModifier.cs     \
106         $(lucenedir)/Index/IndexReader.cs       \
107         $(lucenedir)/Index/IndexWriter.cs       \
108         $(lucenedir)/Index/MultipleTermPositions.cs     \
109         $(lucenedir)/Index/MultiReader.cs       \
110         $(lucenedir)/Index/ParallelReader.cs    \
111         $(lucenedir)/Index/SegmentInfo.cs       \
112         $(lucenedir)/Index/SegmentInfos.cs      \
113         $(lucenedir)/Index/SegmentMergeInfo.cs  \
114         $(lucenedir)/Index/SegmentMergeQueue.cs \
115         $(lucenedir)/Index/SegmentMerger.cs     \
116         $(lucenedir)/Index/SegmentReader.cs     \
117         $(lucenedir)/Index/SegmentTermDocs.cs   \
118         $(lucenedir)/Index/SegmentTermEnum.cs   \
119         $(lucenedir)/Index/SegmentTermPositions.cs      \
120         $(lucenedir)/Index/SegmentTermPositionVector.cs \
121         $(lucenedir)/Index/SegmentTermVector.cs \
122         $(lucenedir)/Index/Term.cs      \
123         $(lucenedir)/Index/TermBuffer.cs        \
124         $(lucenedir)/Index/TermDocs.cs  \
125         $(lucenedir)/Index/TermEnum.cs  \
126         $(lucenedir)/Index/TermFreqVector.cs    \
127         $(lucenedir)/Index/TermInfo.cs  \
128         $(lucenedir)/Index/TermInfosReader.cs   \
129         $(lucenedir)/Index/TermInfosWriter.cs   \
130         $(lucenedir)/Index/TermPositions.cs     \
131         $(lucenedir)/Index/TermPositionVector.cs        \
132         $(lucenedir)/Index/TermVectorOffsetInfo.cs      \
133         $(lucenedir)/Index/TermVectorsReader.cs \
134         $(lucenedir)/Index/TermVectorsWriter.cs \
135         $(lucenedir)/QueryParser/CharStream.cs  \
136         $(lucenedir)/QueryParser/FastCharStream.cs      \
137         $(lucenedir)/QueryParser/MultiFieldQueryParser.cs       \
138         $(lucenedir)/QueryParser/ParseException.cs      \
139         $(lucenedir)/QueryParser/QueryParser.cs \
140         $(lucenedir)/QueryParser/QueryParserConstants.cs        \
141         $(lucenedir)/QueryParser/QueryParserTokenManager.cs     \
142         $(lucenedir)/QueryParser/Token.cs       \
143         $(lucenedir)/QueryParser/TokenMgrError.cs       \
144         $(lucenedir)/Search/Regex/RegexQuery.cs \
145         $(lucenedir)/Search/Regex/RegexTermEnum.cs      \
146         $(lucenedir)/Search/Regex/SpanRegexQuery.cs     \
147         $(lucenedir)/Search/Spans/NearSpans.cs  \
148         $(lucenedir)/Search/Spans/SpanFirstQuery.cs     \
149         $(lucenedir)/Search/Spans/SpanNearQuery.cs      \
150         $(lucenedir)/Search/Spans/SpanNotQuery.cs       \
151         $(lucenedir)/Search/Spans/SpanOrQuery.cs        \
152         $(lucenedir)/Search/Spans/SpanQuery.cs  \
153         $(lucenedir)/Search/Spans/Spans.cs      \
154         $(lucenedir)/Search/Spans/SpanScorer.cs \
155         $(lucenedir)/Search/Spans/SpanTermQuery.cs      \
156         $(lucenedir)/Search/Spans/SpanWeight.cs \
157         $(lucenedir)/Search/BooleanClause.cs    \
158         $(lucenedir)/Search/BooleanQuery.cs     \
159         $(lucenedir)/Search/BooleanScorer.cs    \
160         $(lucenedir)/Search/BooleanScorer2.cs   \
161         $(lucenedir)/Search/CachingWrapperFilter.cs     \
162         $(lucenedir)/Search/ConjunctionScorer.cs        \
163         $(lucenedir)/Search/ConstantScoreQuery.cs       \
164         $(lucenedir)/Search/ConstantScoreRangeQuery.cs  \
165         $(lucenedir)/Search/DateFilter.cs       \
166         $(lucenedir)/Search/DefaultSimilarity.cs        \
167         $(lucenedir)/Search/DisjunctionMaxQuery.cs      \
168         $(lucenedir)/Search/DisjunctionMaxScorer.cs     \
169         $(lucenedir)/Search/DisjunctionSumScorer.cs     \
170         $(lucenedir)/Search/ExactPhraseScorer.cs        \
171         $(lucenedir)/Search/Explanation.cs      \
172         $(lucenedir)/Search/FieldCache.cs       \
173         $(lucenedir)/Search/FieldCacheImpl.cs   \
174         $(lucenedir)/Search/FieldDoc.cs \
175         $(lucenedir)/Search/FieldDocSortedHitQueue.cs   \
176         $(lucenedir)/Search/FieldSortedHitQueue.cs      \
177         $(lucenedir)/Search/Filter.cs   \
178         $(lucenedir)/Search/FilteredQuery.cs    \
179         $(lucenedir)/Search/FilteredTermEnum.cs \
180         $(lucenedir)/Search/FuzzyQuery.cs       \
181         $(lucenedir)/Search/FuzzyTermEnum.cs    \
182         $(lucenedir)/Search/Hit.cs      \
183         $(lucenedir)/Search/HitCollector.cs     \
184         $(lucenedir)/Search/HitIterator.cs      \
185         $(lucenedir)/Search/HitQueue.cs \
186         $(lucenedir)/Search/Hits.cs     \
187         $(lucenedir)/Search/IndexSearcher.cs    \
188         $(lucenedir)/Search/MatchAllDocsQuery.cs        \
189         $(lucenedir)/Search/MultiPhraseQuery.cs \
190         $(lucenedir)/Search/MultiSearcher.cs    \
191         $(lucenedir)/Search/MultiTermQuery.cs   \
192         $(lucenedir)/Search/NonMatchingScorer.cs        \
193         $(lucenedir)/Search/ParallelMultiSearcher.cs    \
194         $(lucenedir)/Search/PhrasePositions.cs  \
195         $(lucenedir)/Search/PhrasePrefixQuery.cs        \
196         $(lucenedir)/Search/PhraseQuery.cs      \
197         $(lucenedir)/Search/PhraseQueue.cs      \
198         $(lucenedir)/Search/PhraseScorer.cs     \
199         $(lucenedir)/Search/PrefixQuery.cs      \
200         $(lucenedir)/Search/Query.cs    \
201         $(lucenedir)/Search/QueryFilter.cs      \
202         $(lucenedir)/Search/QueryTermVector.cs  \
203         $(lucenedir)/Search/RangeFilter.cs      \
204         $(lucenedir)/Search/RangeQuery.cs       \
205         $(lucenedir)/Search/RemoteSearchable.cs \
206         $(lucenedir)/Search/ReqExclScorer.cs    \
207         $(lucenedir)/Search/ReqOptSumScorer.cs  \
208         $(lucenedir)/Search/ScoreDoc.cs \
209         $(lucenedir)/Search/ScoreDocComparator.cs       \
210         $(lucenedir)/Search/Scorer.cs   \
211         $(lucenedir)/Search/Searchable.cs       \
212         $(lucenedir)/Search/Searcher.cs \
213         $(lucenedir)/Search/Similarity.cs       \
214         $(lucenedir)/Search/SimilarityDelegator.cs      \
215         $(lucenedir)/Search/SloppyPhraseScorer.cs       \
216         $(lucenedir)/Search/Sort.cs     \
217         $(lucenedir)/Search/SortComparator.cs   \
218         $(lucenedir)/Search/SortComparatorSource.cs     \
219         $(lucenedir)/Search/SortField.cs        \
220         $(lucenedir)/Search/TermQuery.cs        \
221         $(lucenedir)/Search/TermScorer.cs       \
222         $(lucenedir)/Search/TopDocs.cs  \
223         $(lucenedir)/Search/TopFieldDocs.cs     \
224         $(lucenedir)/Search/Weight.cs   \
225         $(lucenedir)/Search/WildcardQuery.cs    \
226         $(lucenedir)/Search/WildcardTermEnum.cs \
227         $(lucenedir)/Store/BufferedIndexInput.cs        \
228         $(lucenedir)/Store/BufferedIndexOutput.cs       \
229         $(lucenedir)/Store/Directory.cs \
230         $(lucenedir)/Store/FSDirectory.cs       \
231         $(lucenedir)/Store/IndexInput.cs        \
232         $(lucenedir)/Store/IndexOutput.cs       \
233         $(lucenedir)/Store/InputStream.cs       \
234         $(lucenedir)/Store/Lock.cs      \
235         $(lucenedir)/Store/MMapDirectory.cs     \
236         $(lucenedir)/Store/OutputStream.cs      \
237         $(lucenedir)/Store/RAMDirectory.cs      \
238         $(lucenedir)/Store/RAMFile.cs   \
239         $(lucenedir)/Store/RAMInputStream.cs    \
240         $(lucenedir)/Store/RAMOutputStream.cs   \
241         $(lucenedir)/Util/BitVector.cs  \
242         $(lucenedir)/Util/Constants.cs  \
243         $(lucenedir)/Util/Parameter.cs  \
244         $(lucenedir)/Util/PriorityQueue.cs      \
245         $(lucenedir)/Util/SmallFloat.cs \
246         $(lucenedir)/Util/StringHelper.cs       \
247         $(lucenedir)/Util/ToStringUtils.cs      \
248         $(lucenedir)/AssemblyInfo.cs    \
249         $(lucenedir)/LucenePackage.cs   \
250         $(lucenedir)/SharpZipLibAdapter.cs      \
251         $(lucenedir)/SupportClass.cs
253 LUCENE_CSFILES = $(LUCENE_1_9_CSFILES)
255 ############################################################
257 sqlitedir = $(srcdir)/Mono.Data.SqliteClient
259 SQLITE_CSFILES =                                        \
260         $(sqlitedir)/SqliteCommand.cs                   \
261         $(sqlitedir)/SqliteConnection.cs                \
262         $(sqlitedir)/Sqlite.cs                          \
263         $(sqlitedir)/SqliteDataAdapter.cs               \
264         $(sqlitedir)/SqliteDataReader.cs                \
265         $(sqlitedir)/SqliteExceptions.cs                \
266         $(sqlitedir)/SqliteParameterCollection.cs       \
267         $(sqlitedir)/SqliteParameter.cs                 \
268         $(sqlitedir)/SqliteRowUpdatedEventArgs.cs       \
269         $(sqlitedir)/SqliteRowUpdatedEventHandler.cs    \
270         $(sqlitedir)/SqliteRowUpdatingEventArgs.cs      \
271         $(sqlitedir)/SqliteRowUpdatingEventHandler.cs   \
272         $(sqlitedir)/SqliteTransaction.cs
274 ############################################################
276 DAEMON_DLL_TARGET = BeagleDaemonLib.dll
278 DAEMON_DLL_CSFLAGS = -target:library $(BEAGLE_DEFINES)
280 fsqueryabledir = $(srcdir)/FileSystemQueryable
281 FILE_SYSTEM_QUERYABLE_CSFILES =                                 \
282         $(fsqueryabledir)/DirectoryModel.cs                     \
283         $(fsqueryabledir)/DirectoryState.cs                     \
284         $(fsqueryabledir)/TreeCrawlTask.cs                      \
285         $(fsqueryabledir)/FileCrawlTask.cs                      \
286         $(fsqueryabledir)/DirectoryIndexableGenerator.cs        \
287         $(fsqueryabledir)/FileNameFilter.cs                     \
288         $(fsqueryabledir)/LuceneNameResolver.cs                 \
289         $(fsqueryabledir)/FileSystemQueryable.cs                \
290         $(fsqueryabledir)/IFileEventBackend.cs                  \
291         $(fsqueryabledir)/InotifyBackend.cs                     \
292         $(fsqueryabledir)/NullFileEventBackend.cs               \
293         $(fsqueryabledir)/NautilusMetadata.cs
296 gaimlogqueryable = $(srcdir)/GaimLogQueryable
297 GAIM_LOG_QUERYABLE_CSFILES =                            \
298         $(gaimlogqueryable)/GaimLogQueryable.cs
300 tomboyqueryable = $(srcdir)/TomboyQueryable
301 TOMBOY_QUERYABLE_CSFILES =                              \
302         $(tomboyqueryable)/TomboyQueryable.cs
304 labyrinthqueryable = $(srcdir)/LabyrinthQueryable
305 LABYRINTH_QUERYABLE_CSFILES =                           \
306         $(labyrinthqueryable)/LabyrinthQueryable.cs
308 kmailqueryable = $(srcdir)/KMailQueryable
309 KMAIL_QUERYABLE_CSFILES =                               \
310         $(kmailqueryable)/KMailQueryable.cs             \
311         $(kmailqueryable)/KMailIndexableGenerator.cs    \
312         $(kmailqueryable)/KMailIndexer.cs
314 blamqueryable = $(srcdir)/BlamQueryable
315 BLAM_QUERYABLE_CSFILES =                                \
316         $(blamqueryable)/BlamQueryable.cs
318 lifereaqueryable = $(srcdir)/LifereaQueryable
319 LIFEREA_QUERYABLE_CSFILES =                             \
320         $(lifereaqueryable)/LifereaQueryable.cs
322 akregatorqueryable = $(srcdir)/AkregatorQueryable
323 AKREGATOR_QUERYABLE_CSFILES =                           \
324         $(akregatorqueryable)/AkregatorQueryable.cs
326 konqhistoryqueryable = $(srcdir)/KonqHistoryQueryable
327 KONQHISTORY_QUERYABLE_CSFILES =                         \
328         $(konqhistoryqueryable)/KonqQueryable.cs
330 konqbookmarkqueryable = $(srcdir)/KonqBookmarkQueryable
331 KONQBOOKMARK_QUERYABLE_CSFILES =                                \
332         $(konqbookmarkqueryable)/KonqBookmarkQueryable.cs
334 kopetequeryable = $(srcdir)/KopeteQueryable
335 KOPETE_QUERYABLE_CSFILES =                              \
336         $(kopetequeryable)/KopeteQueryable.cs           \
337         $(kopetequeryable)/KopeteCrawler.cs
339 knotesqueryable = $(srcdir)/KNotesQueryable
340 KNOTES_QUERYABLE_CSFILES =                              \
341         $(knotesqueryable)/KNotesQueryable.cs
343 kabcqueryable = $(srcdir)/KAddressBookQueryable
344 KABC_QUERYABLE_CSFILES =                                \
345         $(kabcqueryable)/KabcQueryable.cs
347 indexingservicequeryable = $(srcdir)/IndexingServiceQueryable
348 INDEXING_SERVICE_QUERYABLE_CSFILES =                    \
349         $(indexingservicequeryable)/IndexingServiceQueryable.cs
351 DAEMON_DLL_CSFILES =                                            \
352         $(LUCENE_CSFILES)                                       \
353         $(KMAIL_QUERYABLE_CSFILES)                              \
354         $(FILE_SYSTEM_QUERYABLE_CSFILES)                        \
355         $(GAIM_LOG_QUERYABLE_CSFILES)                           \
356         $(INDEXING_SERVICE_QUERYABLE_CSFILES)                   \
357         $(TOMBOY_QUERYABLE_CSFILES)                             \
358         $(LABYRINTH_QUERYABLE_CSFILES)                          \
359         $(BLAM_QUERYABLE_CSFILES)                               \
360         $(LIFEREA_QUERYABLE_CSFILES)                            \
361         $(AKREGATOR_QUERYABLE_CSFILES)                          \
362         $(KONQHISTORY_QUERYABLE_CSFILES)                        \
363         $(KONQBOOKMARK_QUERYABLE_CSFILES)                       \
364         $(KNOTES_QUERYABLE_CSFILES)                             \
365         $(KABC_QUERYABLE_CSFILES)                               \
366         $(KOPETE_QUERYABLE_CSFILES)                             \
367         $(srcdir)/AssemblyInfo.cs                               \
368         $(srcdir)/FileAttributes.cs                             \
369         $(srcdir)/FileAttributesStore.cs                        \
370         $(srcdir)/FileAttributesStore_ExtendedAttribute.cs      \
371         $(srcdir)/FileAttributesStore_Mixed.cs                  \
372         $(srcdir)/FileAttributesStore_Sqlite.cs                 \
373         $(srcdir)/FilterFactory.cs                              \
374         $(srcdir)/IFileAttributesStore.cs                       \
375         $(srcdir)/IIndexer.cs                                   \
376         $(srcdir)/IndexSynchronization.cs                       \
377         $(srcdir)/IndexerReceipts.cs                            \
378         $(srcdir)/IndexerRequest.cs                             \
379         $(srcdir)/InformationalMessagesRequestExecutor.cs       \
380         $(srcdir)/IQueryResult.cs                               \
381         $(srcdir)/IQueryWorker.cs                               \
382         $(srcdir)/IQueryable.cs                                 \
383         $(srcdir)/LuceneBitArray.cs                             \
384         $(srcdir)/LuceneCommon.cs                               \
385         $(srcdir)/LuceneIndexingDriver.cs                       \
386         $(srcdir)/LuceneQueryingDriver.cs                       \
387         $(srcdir)/LuceneFileQueryable.cs                        \
388         $(srcdir)/LuceneQueryable.cs                            \
389         $(srcdir)/NoiseFilter.cs                                \
390         $(srcdir)/PropertyKeywordFu.cs                          \
391         $(srcdir)/QueryDriver.cs                                \
392         $(srcdir)/QueryExecutor.cs                              \
393         $(srcdir)/QueryResult.cs                                \
394         $(srcdir)/QueryStringParser.cs                          \
395         $(srcdir)/Queryable.cs                                  \
396         $(srcdir)/QueryableFlavor.cs                            \
397         $(srcdir)/RemoteControlExecutors.cs                     \
398         $(srcdir)/RemoteIndexerRequest.cs                       \
399         $(srcdir)/RemoteIndexerResponse.cs                      \
400         $(srcdir)/Server.cs                                     \
401         $(srcdir)/Shutdown.cs                                   \
402         $(srcdir)/SnippetExecutor.cs                            \
403         $(srcdir)/SnippetFu.cs                                  \
404         $(srcdir)/SqliteUtils.cs                                \
405         $(srcdir)/StaticQueryable.cs                            \
406         $(srcdir)/TextCache.cs
408 DAEMON_DLL_LOCAL_ASSEMBLIES =           \
409         ../Util/Util.dll                \
410         ../BeagleClient/Beagle.dll      \
411         ./$(PLUGIN_TARGET)
413 DAEMON_DLL_ASSEMBLIES =                         \
414         $(BEAGLED_LIBS)                         \
415         $(DAEMON_DLL_LOCAL_ASSEMBLIES:%=-r:%)   \
416         $(SHARPZIPLIB_LIBS)             \
417         -r:Mono.Data.SqliteClient               \
418         -r:Mono.Posix                           \
419         -r:System.Runtime.Remoting              \
420         -r:System.Web
422 if USE_LOCAL_SQLITE
423 DAEMON_DLL_CSFILES += $(SQLITE_CSFILES)
424 DAEMON_DLL_ASSEMBLIES += -r:System.Data
425 else
426 DAEMON_DLL_ASSEMBLIES += -r:Mono.Data.SqliteClient
427 endif
429 if ENABLE_GOOGLEDRIVER
430 DAEMON_DLL_CSFILES +=                  \
431        $(srcdir)/GoogleDriver.cs
432 endif
434 $(DAEMON_DLL_TARGET): $(DAEMON_DLL_CSFILES) $(DAEMON_DLL_LOCAL_ASSEMBLIES)
435         $(CSC) -out:$@ $(DAEMON_DLL_CSFLAGS) $(DAEMON_DLL_CSFILES) $(DAEMON_DLL_ASSEMBLIES)
437 ############################################################
440 ### Pluggable backend support
443 BACKEND_CSFLAGS = -target:library
444 BACKEND_LOCAL_ASSEMBLIES =                      \
445         ../Util/Util.dll                        \
446         ../BeagleClient/Beagle.dll              \
447         ./$(DAEMON_DLL_TARGET)
449 BACKEND_ASSEMBLIES =                            \
450         $(SHARPZIPLIB_LIBS)                     \
451         $(BACKEND_LOCAL_ASSEMBLIES:%=-r:%)      \
452         -r:Mono.Posix
455 ### Evolution backend
458 edsqueryable = $(srcdir)/EvolutionDataServerQueryable
459 EDS_QUERYABLE_CSFILES =                                 \
460         $(edsqueryable)/BookContainer.cs                \
461         $(edsqueryable)/CalContainer.cs                 \
462         $(edsqueryable)/Container.cs                    \
463         $(edsqueryable)/EvolutionDataServerQueryable.cs \
464         $(edsqueryable)/SourcesHandler.cs
466 evomailqueryable = $(srcdir)/EvolutionMailDriver
467 EVO_MAIL_QUERYABLE_CSFILES =                                    \
468         $(evomailqueryable)/EvolutionMailDriver.cs              \
469         $(evomailqueryable)/EvolutionMailIndexableGenerator.cs  \
470         $(evomailqueryable)/EvolutionSummaryTracker.cs          \
471         $(evomailqueryable)/GConfThreadHelper.cs                \
472         $(evomailqueryable)/MailCrawler.cs
474 EVO_DLL_TARGET = EvolutionBackends.dll
475 EVO_DLL_CSFLAGS = $(BACKEND_CSFLAGS)
476 EVO_DLL_CSFILES =                                       \
477         $(srcdir)/EvolutionBackendsAssemblyInfo.cs      \
478         $(EDS_QUERYABLE_CSFILES)                        \
479         $(EVO_MAIL_QUERYABLE_CSFILES)
480 EVO_DLL_ASSEMBLIES = $(BACKEND_ASSEMBLIES) $(EVO_LIBS)
482 $(EVO_DLL_TARGET): $(EVO_DLL_CSFILES) $(DAEMON_DLL_LOCAL_ASSEMBLIES) $(DAEMON_DLL_TARGET)
483         $(CSC) -out:$@ $(EVO_DLL_CSFLAGS) $(EVO_DLL_CSFILES) -r:$(DAEMON_DLL_TARGET) $(EVO_DLL_ASSEMBLIES)
485 ############################################################
487 DAEMON_WRAPPER = beagled
488 DAEMON_WRAPPER_IN = beagled.in
489 DAEMON_TARGET = BeagleDaemon.exe
491 $(DAEMON_WRAPPER): $(srcdir)/$(DAEMON_WRAPPER_IN)
492         $(WRAPPER_SED) -e "s|\@target\@|$(DAEMON_TARGET)|g" < $(srcdir)/$(DAEMON_WRAPPER_IN) > $@
493         chmod +x $(DAEMON_WRAPPER)
495 DAEMON_CSFLAGS =                                \
496         -target:exe                             \
497         $(BEAGLE_DEFINES)
499 DAEMON_CSFILES =                                \
500         $(srcdir)/BeagleDaemon.cs               \
501         $(srcdir)/RemoteIndexer.cs
503 DAEMON_LOCAL_ASSEMBLIES =                       \
504         ../Util/Util.dll                        \
505         ../BeagleClient/Beagle.dll              \
506         ./$(PLUGIN_TARGET)                      \
507         ./$(DAEMON_DLL_TARGET)
509 DAEMON_ASSEMBLIES =                             \
510         $(BEAGLED_LIBS)                         \
511         $(SHARPZIPLIB_LIBS)                     \
512         $(DAEMON_LOCAL_ASSEMBLIES:%=-r:%)       \
513         -r:Mono.Posix
515 $(DAEMON_TARGET): $(DAEMON_CSFILES) $(DAEMON_LOCAL_ASSEMBLIES)
516         $(CSC) -out:$@ $(DAEMON_CSFLAGS) $(DAEMON_CSFILES) $(DAEMON_ASSEMBLIES)
518 if ENABLE_THUNDERBIRD   
519 THUNDERBIRD_DIR = $(srcdir)/ThunderbirdQueryable
521 THUNDERBIRD_TARGET = ThunderbirdBackends.dll
523 THUNDERBIRD_CSFLAGS = -target:library
526 THUNDERBIRD_CSFILES =                                           \
527         $(THUNDERBIRD_DIR)/LuceneAccess.cs                      \
528         $(THUNDERBIRD_DIR)/ThunderbirdIndexer.cs                \
529         $(THUNDERBIRD_DIR)/ThunderbirdIndexableGenerator.cs     \
530         $(THUNDERBIRD_DIR)/ThunderbirdQueryable.cs              \
531         $(THUNDERBIRD_DIR)/ThunderbirdInotify.cs                \
532         $(THUNDERBIRD_DIR)/Mail.cs                              \
533         $(THUNDERBIRD_DIR)/Contact.cs                           \
534         $(THUNDERBIRD_DIR)/Rss.cs                               \
535         $(THUNDERBIRD_DIR)/Nntp.cs                              \
536         $(THUNDERBIRD_DIR)/MoveMail.cs
538 THUNDERBIRD_LOCAL_ASSEMBLIES =          \
539         ../Util/Util.dll                \
540         ../BeagleClient/Beagle.dll      \
541         ./BeagleDaemonLib.dll
543 THUNDERBIRD_ASSEMBLIES =                                \
544         -r:Mono.Posix                           \
545         $(BEAGLED_LIBS)                         \
546         $(THUNDERBIRD_LOCAL_ASSEMBLIES:%=-r:%)
549 $(THUNDERBIRD_TARGET): $(THUNDERBIRD_CSFILES) $(THUNDERBIRD_LOCAL_ASSEMBLIES)
550         $(CSC) -out:$@ $(THUNDERBIRD_CSFLAGS) $(THUNDERBIRD_CSFILES) $(THUNDERBIRD_ASSEMBLIES)
551 endif
553 ############################################################
554 ############################################################
555 ############################################################
557 # This next section is a very good example of why we need real mono support in
558 # automake.  This is a massive wart on our development platform.
560 INDEX_HELPER_WRAPPER = beagled-index-helper
561 INDEX_HELPER_WRAPPER_IN = $(INDEX_HELPER_WRAPPER).in
562 INDEX_HELPER_TARGET = IndexHelper.exe
564 $(INDEX_HELPER_WRAPPER): $(srcdir)/$(INDEX_HELPER_WRAPPER_IN)
565         $(WRAPPER_SED) -e "s|\@target\@|$(INDEX_HELPER_TARGET)|g" < $(srcdir)/$(INDEX_HELPER_WRAPPER_IN) > $@
566         chmod +x $(INDEX_HELPER_WRAPPER)
568 INDEX_HELPER_CSFLAGS = -target:exe $(BEAGLE_DEFINES)
570 indexhelperdir = $(srcdir)/IndexHelper
572 INDEX_HELPER_CSFILES =  \
573         $(indexhelperdir)/IndexHelper.cs                \
574         $(indexhelperdir)/RemoteIndexerExecutor.cs
577 INDEX_HELPER_LOCAL_ASSEMBLIES =         \
578         ../Util/Util.dll                \
579         ../BeagleClient/Beagle.dll      \
580         ./$(DAEMON_DLL_TARGET)          \
581         ./$(PLUGIN_TARGET)
583 INDEX_HELPER_ASSEMBLIES = \
584         $(BEAGLED_LIBS)                         \
585         $(SHARPZIPLIB_LIBS)                     \
586         $(INDEX_HELPER_LOCAL_ASSEMBLIES:%=-r:%) \
587         -r:Mono.Posix                           \
588         -r:System.Runtime.Remoting
590 $(INDEX_HELPER_TARGET): $(INDEX_HELPER_CSFILES) $(INDEX_HELPER_LOCAL_ASSEMBLIES)
591         $(CSC) -out:$@ $(INDEX_HELPER_CSFLAGS) $(INDEX_HELPER_CSFILES) $(INDEX_HELPER_ASSEMBLIES)
593 ############################################################
595 EXTRACT_CONTENT_WRAPPER = beagle-extract-content
596 EXTRACT_CONTENT_TARGET = ExtractContent.exe
598 $(EXTRACT_CONTENT_WRAPPER): $(srcdir)/$(WRAPPER_IN)
599         $(WRAPPER_SED) -e "s|\@target\@|$(EXTRACT_CONTENT_TARGET)|g" < $(srcdir)/$(WRAPPER_IN) > $@
600         chmod +x $(EXTRACT_CONTENT_WRAPPER)
603 EXTRACT_CONTENT_CSFLAGS = \
604         -target:exe
606 EXTRACT_CONTENT_CSFILES = \
607         $(srcdir)/ExtractContent.cs
609 EXTRACT_CONTENT_LOCAL_ASSEMBLIES = \
610         ../Util/Util.dll                        \
611         ../BeagleClient/Beagle.dll              \
612         ./$(PLUGIN_TARGET)                      \
613         ./$(DAEMON_DLL_TARGET)
615 EXTRACT_CONTENT_ASSEMBLIES = \
616         $(BEAGLED_LIBS)                         \
617         $(SHARPZIPLIB_LIBS)                     \
618         $(DAEMON_LOCAL_ASSEMBLIES:%=-r:%)       \
619         -r:Mono.Posix                           \
620         -r:System.Runtime.Remoting
622 $(EXTRACT_CONTENT_TARGET): $(EXTRACT_CONTENT_CSFILES) $(EXTRACT_CONTENT_LOCAL_ASSEMBLIES)
623         $(CSC) -out:$@ $(EXTRACT_CONTENT_CSFLAGS) $(EXTRACT_CONTENT_CSFILES) $(EXTRACT_CONTENT_ASSEMBLIES)
625 ############################################################
627 DUMP_INDEX_WRAPPER = beagle-dump-index
628 DUMP_INDEX_TARGET = DumpIndex.exe
630 $(DUMP_INDEX_WRAPPER): $(srcdir)/$(WRAPPER_IN)
631         $(WRAPPER_SED) -e "s|\@target\@|$(DUMP_INDEX_TARGET)|g" < $(srcdir)/$(WRAPPER_IN) > $@
632         chmod +x $(DUMP_INDEX_WRAPPER)
634 DUMP_INDEX_CSFLAGS = \
635         -target:exe
637 DUMP_INDEX_CSFILES = \
638         $(srcdir)/DumpIndex.cs
640 DUMP_INDEX_LOCAL_ASSEMBLIES = \
641         ../Util/Util.dll                        \
642         ../BeagleClient/Beagle.dll              \
643         ./$(PLUGIN_TARGET)                      \
644         ./$(DAEMON_DLL_TARGET)
646 DUMP_INDEX_ASSEMBLIES = \
647         $(BEAGLED_LIBS)                         \
648         $(SHARPZIPLIB_LIBS)                     \
649         $(DAEMON_LOCAL_ASSEMBLIES:%=-r:%)       \
650         -r:Mono.Posix                           \
651         -r:System.Runtime.Remoting
653 $(DUMP_INDEX_TARGET): $(DUMP_INDEX_CSFILES) $(DUMP_INDEX_LOCAL_ASSEMBLIES)
654         $(CSC) -out:$@ $(DUMP_INDEX_CSFLAGS) $(DUMP_INDEX_CSFILES) $(DUMP_INDEX_ASSEMBLIES)
656 ############################################################
658 INDEX_WEB_CONTENT_WRAPPER = beagle-index-url
659 INDEX_WEB_CONTENT_TARGET = IndexWebContent.exe
661 $(INDEX_WEB_CONTENT_WRAPPER): $(srcdir)/$(WRAPPER_IN)
662         $(WRAPPER_SED) -e "s|\@target\@|$(INDEX_WEB_CONTENT_TARGET)|g" < $(srcdir)/$(WRAPPER_IN) > $@
663         chmod +x $(INDEX_WEB_CONTENT_WRAPPER)
666 INDEX_WEB_CONTENT_CSFLAGS = \
667         -target:exe
669 INDEX_WEB_CONTENT_CSFILES = \
670         $(srcdir)/IndexWebContent.cs
672 INDEX_WEB_CONTENT_LOCAL_ASSEMBLIES = \
673         ../Util/Util.dll                        \
674         ../BeagleClient/Beagle.dll              \
675         ./$(PLUGIN_TARGET)                      \
676         ./$(DAEMON_DLL_TARGET)
678 INDEX_WEB_CONTENT_ASSEMBLIES =  \
679         $(INDEX_WEB_CONTENT_LOCAL_ASSEMBLIES:%=-r:%)
681 $(INDEX_WEB_CONTENT_TARGET): $(INDEX_WEB_CONTENT_CSFILES) $(INDEX_WEB_CONTENT_LOCAL_ASSEMBLIES)
682         $(CSC) -out:$@ $(INDEX_WEB_CONTENT_CSFLAGS) $(INDEX_WEB_CONTENT_CSFILES) $(INDEX_WEB_CONTENT_ASSEMBLIES)
684 ############################################################
686 MASTER_DELETE_WRAPPER = beagle-master-delete-button
687 MASTER_DELETE_TARGET = MasterDelete.exe
689 $(MASTER_DELETE_WRAPPER): $(srcdir)/$(WRAPPER_IN)
690         $(WRAPPER_SED) -e "s|\@target\@|$(MASTER_DELETE_TARGET)|g" < $(srcdir)/$(WRAPPER_IN) > $@
691         chmod +x $(MASTER_DELETE_WRAPPER)
694 MASTER_DELETE_CSFLAGS = \
695         -target:exe
697 MASTER_DELETE_CSFILES = \
698         $(srcdir)/MasterDelete.cs
700 MASTER_DELETE_LOCAL_ASSEMBLIES = \
701         ../Util/Util.dll                        \
702         ../BeagleClient/Beagle.dll              \
703         ./$(PLUGIN_TARGET)                      \
704         ./$(DAEMON_DLL_TARGET)
706 MASTER_DELETE_ASSEMBLIES = \
707         $(BEAGLED_LIBS)                         \
708         $(SHARPZIPLIB_LIBS)                     \
709         $(DAEMON_LOCAL_ASSEMBLIES:%=-r:%)       \
710         -r:Mono.Posix                           \
711         -r:System.Runtime.Remoting
713 $(MASTER_DELETE_TARGET): $(MASTER_DELETE_CSFILES) $(MASTER_DELETE_LOCAL_ASSEMBLIES)
714         $(CSC) -out:$@ $(MASTER_DELETE_CSFLAGS) $(MASTER_DELETE_CSFILES) $(MASTER_DELETE_ASSEMBLIES)
716 ############################################################
718 SNIPPET_TEST_WRAPPER = beagle-snippet-test
719 SNIPPET_TEST_TARGET = SnippetTest.exe
721 $(SNIPPET_TEST_WRAPPER): $(srcdir)/$(WRAPPER_IN)
722         $(WRAPPER_SED) -e "s|\@target\@|$(SNIPPET_TEST_TARGET)|g" < $(srcdir)/$(WRAPPER_IN) > $@
723         chmod +x $(SNIPPET_TEST_WRAPPER)
725 SNIPPET_TEST_CSFLAGS = \
726         -target:exe
728 SNIPPET_TEST_CSFILES = \
729         $(srcdir)/SnippetTest.cs
731 SNIPPET_TEST_LOCAL_ASSEMBLIES = \
732         ../Util/Util.dll                        \
733         ../BeagleClient/Beagle.dll              \
734         ./$(PLUGIN_TARGET)                      \
735         ./$(DAEMON_DLL_TARGET)
737 SNIPPET_TEST_ASSEMBLIES = \
738         $(BEAGLED_LIBS)                         \
739         $(SHARPZIPLIB_LIBS)                     \
740         $(DAEMON_LOCAL_ASSEMBLIES:%=-r:%)       \
741         -r:Mono.Posix                           \
742         -r:System.Runtime.Remoting
744 $(SNIPPET_TEST_TARGET): $(SNIPPET_TEST_CSFILES) $(SNIPPET_TEST_LOCAL_ASSEMBLIES)
745         $(CSC) -out:$@ $(SNIPPET_TEST_CSFLAGS) $(SNIPPET_TEST_CSFILES) $(SNIPPET_TEST_ASSEMBLIES)
747 ############################################################
749 TERM_STATS_WRAPPER = beagle-term-stats
750 TERM_STATS_TARGET = TermStatsTool.exe
752 $(TERM_STATS_WRAPPER): $(srcdir)/$(WRAPPER_IN)
753         $(WRAPPER_SED) -e "s|\@target\@|$(TERM_STATS_TARGET)|g" < $(srcdir)/$(WRAPPER_IN) > $@
754         chmod +x $(TERM_STATS_WRAPPER)
756 TERM_STATS_CSFLAGS = \
757         -target:exe
759 TERM_STATS_CSFILES = \
760         $(srcdir)/TermStatsTool.cs
762 TERM_STATS_LOCAL_ASSEMBLIES =   \
763         ../Util/Util.dll                        \
764         ../BeagleClient/Beagle.dll              \
765         ./$(PLUGIN_TARGET)                      \
766         ./$(DAEMON_DLL_TARGET)
768 TERM_STATS_ASSEMBLIES = \
769         $(BEAGLED_LIBS)                         \
770         $(SHARPZIPLIB_LIBS)                     \
771         $(DAEMON_LOCAL_ASSEMBLIES:%=-r:%)       \
772         -r:Mono.Posix                           \
773         -r:System.Runtime.Remoting
775 $(TERM_STATS_TARGET): $(TERM_STATS_CSFILES) $(TERM_STATS_LOCAL_ASSEMBLIES)
776         $(CSC) -out:$@ $(TERM_STATS_CSFLAGS) $(TERM_STATS_CSFILES) $(TERM_STATS_ASSEMBLIES)
778 ############################################################
780 NAME_INDEX_WRAPPER = beagle-name-index
781 NAME_INDEX_TARGET = NameIndexTool.exe
783 $(NAME_INDEX_WRAPPER): $(srcdir)/$(WRAPPER_IN)
784         $(WRAPPER_SED) -e "s|\@target\@|$(NAME_INDEX_TARGET)|g" < $(srcdir)/$(WRAPPER_IN) > $@
785         chmod +x $(NAME_INDEX_WRAPPER)
787 NAME_INDEX_CSFLAGS = \
788         -target:exe
790 NAME_INDEX_CSFILES = \
791         $(srcdir)/NameIndexTool.cs
793 NAME_INDEX_LOCAL_ASSEMBLIES =   \
794         ../Util/Util.dll                        \
795         ../BeagleClient/Beagle.dll              \
796         ./$(PLUGIN_TARGET)                      \
797         ./$(DAEMON_DLL_TARGET)
799 NAME_INDEX_ASSEMBLIES = \
800         $(BEAGLED_LIBS)                         \
801         $(SHARPZIPLIB_LIBS)                     \
802         $(DAEMON_LOCAL_ASSEMBLIES:%=-r:%)       \
803         -r:Mono.Posix                           \
804         -r:System.Runtime.Remoting
806 $(NAME_INDEX_TARGET): $(NAME_INDEX_CSFILES) $(NAME_INDEX_LOCAL_ASSEMBLIES)
807         $(CSC) -out:$@ $(NAME_INDEX_CSFLAGS) $(NAME_INDEX_CSFILES) $(NAME_INDEX_ASSEMBLIES)
809 ############################################################
811 FS_SANITY_CHECK_WRAPPER = beagle-file-system-sanity-check
812 FS_SANITY_CHECK_TARGET = SanityCheckTool.exe
814 $(FS_SANITY_CHECK_WRAPPER): $(srcdir)/$(WRAPPER_IN)
815         $(WRAPPER_SED) -e "s|\@target\@|$(FS_SANITY_CHECK_TARGET)|g" < $(srcdir)/$(WRAPPER_IN) > $@
816         chmod +x $(FS_SANITY_CHECK_WRAPPER)
818 FS_SANITY_CHECK_CSFLAGS = \
819         -target:exe
821 FS_SANITY_CHECK_CSFILES = \
822         $(srcdir)/SanityCheckTool.cs
824 FS_SANITY_CHECK_LOCAL_ASSEMBLIES = \
825         ../Util/Util.dll                        \
826         ../BeagleClient/Beagle.dll              \
827         ./$(PLUGIN_TARGET)                      \
828         ./$(DAEMON_DLL_TARGET)
830 FS_SANITY_CHECK_ASSEMBLIES = \
831         $(BEAGLED_LIBS)                         \
832         $(SHARPZIPLIB_LIBS)                     \
833         $(DAEMON_LOCAL_ASSEMBLIES:%=-r:%)       \
834         -r:Mono.Posix                           \
835         -r:System.Runtime.Remoting
837 $(FS_SANITY_CHECK_TARGET): $(FS_SANITY_CHECK_CSFILES) $(FS_SANITY_CHECK_LOCAL_ASSEMBLIES)
838         $(CSC) -out:$@ $(FS_SANITY_CHECK_CSFLAGS) $(FS_SANITY_CHECK_CSFILES) $(FS_SANITY_CHECK_ASSEMBLIES)
840 ############################################################
842 BUILD_INDEX_WRAPPER = beagle-build-index
843 BUILD_INDEX_TARGET = BuildIndex.exe
845 $(BUILD_INDEX_WRAPPER): $(srcdir)/$(WRAPPER_IN)
846         $(WRAPPER_SED) -e "s|\@target\@|$(BUILD_INDEX_TARGET)|g" < $(srcdir)/$(WRAPPER_IN) > $@
847         chmod +x $(BUILD_INDEX_WRAPPER)
849 BUILD_INDEX_CSFLAGS = \
850         -target:exe
852 BUILD_INDEX_CSFILES = \
853         $(srcdir)/BuildIndex.cs
855 BUILD_INDEX_LOCAL_ASSEMBLIES = \
856         ../Util/Util.dll                        \
857         ../BeagleClient/Beagle.dll              \
858         ./$(PLUGIN_TARGET)                      \
859         ./$(DAEMON_DLL_TARGET)
861 BUILD_INDEX_ASSEMBLIES = \
862         $(BEAGLED_LIBS)                         \
863         $(DAEMON_LOCAL_ASSEMBLIES:%=-r:%)       \
864         -r:Mono.Posix
866 $(BUILD_INDEX_TARGET): $(BUILD_INDEX_CSFILES) $(BUILD_INDEX_LOCAL_ASSEMBLIES)
867         $(CSC) -out:$@ $(BUILD_INDEX_CSFLAGS) $(BUILD_INDEX_CSFILES) $(BUILD_INDEX_ASSEMBLIES)
869 ############################################################
871 MANAGE_INDEX_WRAPPER = beagle-manage-index
872 MANAGE_INDEX_TARGET = ManageIndex.exe
874 $(MANAGE_INDEX_WRAPPER): $(srcdir)/$(WRAPPER_IN)
875         $(WRAPPER_SED) -e "s|\@target\@|$(MANAGE_INDEX_TARGET)|g" < $(srcdir)/$(WRAPPER_IN) > $@
876         chmod +x $(MANAGE_INDEX_WRAPPER)
878 MANAGE_INDEX_CSFLAGS = \
879         -target:exe
881 MANAGE_INDEX_CSFILES = \
882         $(srcdir)/ManageIndex.cs
884 MANAGE_INDEX_LOCAL_ASSEMBLIES = \
885         ../Util/Util.dll                        \
886         ../BeagleClient/Beagle.dll              \
887         ./$(PLUGIN_TARGET)                      \
888         ./$(DAEMON_DLL_TARGET)
890 MANAGE_INDEX_ASSEMBLIES = \
891         $(BEAGLED_LIBS)                         \
892         $(DAEMON_LOCAL_ASSEMBLIES:%=-r:%)       \
893         -r:Mono.Posix
895 $(MANAGE_INDEX_TARGET): $(MANAGE_INDEX_CSFILES) $(MANAGE_INDEX_LOCAL_ASSEMBLIES)
896         $(CSC) -out:$@ $(MANAGE_INDEX_CSFLAGS) $(MANAGE_INDEX_CSFILES) $(MANAGE_INDEX_ASSEMBLIES)
898 ############################################################
900 CRAWL_SYSTEM_IN = beagle-crawl-system.in
901 CRAWL_SYSTEM = beagle-crawl-system
903 $(CRAWL_SYSTEM): $(srcdir)/$(CRAWL_SYSTEM_IN)
904         $(WRAPPER_SEB) -e "s|\@target\@|$(CRAWL_SYSTEM)|g" < $(srcdir)/$(CRAWL_SYSTEM_IN) > $@
905         chmod +x $(CRAWL_SYSTEM)
907 # OK, now back to our regularly scheduled program.  But notice all of the
908 # EXTRA_DIST and CLEANFILES stuff at the bottom of the file.  Yuck.
910 ############################################################
911 ############################################################
912 ############################################################
914 #       $(MASTER_DELETE_TARGET)
916 #       $(FS_SANITY_CHECK_TARGET)
918 ALL_TARGETS =                           \
919         $(PLUGIN_TARGET)                \
920         $(DAEMON_DLL_TARGET)            \
921         $(DAEMON_TARGET)                \
922         $(DAEMON_WRAPPER)               \
923         $(INDEX_HELPER_TARGET)          \
924         $(INDEX_HELPER_WRAPPER)         \
925         $(INDEX_WEB_CONTENT_TARGET)     \
926         $(INDEX_WEB_CONTENT_WRAPPER)    \
927         $(EXTRACT_CONTENT_TARGET)       \
928         $(EXTRACT_CONTENT_WRAPPER)      \
929         $(DUMP_INDEX_TARGET)            \
930         $(SNIPPET_TEST_TARGET)          \
931         $(TERM_STATS_TARGET)            \
932         $(NAME_INDEX_TARGET)            \
933         $(MANAGE_INDEX_TARGET)          \
934         $(MANAGE_INDEX_WRAPPER)         \
935         $(BUILD_INDEX_TARGET)           \
936         $(BUILD_INDEX_WRAPPER)
938 if ENABLE_THUNDERBIRD
939 ALL_TARGETS += $(THUNDERBIRD_TARGET)
940 endif
942 if ENABLE_EVOLUTION
943 ALL_TARGETS +=                          \
944         $(EVO_DLL_TARGET)
945 endif
947 man_MANS =                              \
948         beagled.1                       \
949         beagle-build-index.8            \
950         beagle-manage-index.8
952 all: $(ALL_TARGETS)
954 install-data-local: $(ALL_TARGETS)
955         $(mkinstalldirs) $(DESTDIR)$(bindir)
956         $(mkinstalldirs) $(DESTDIR)$(sbindir)
957         $(mkinstalldirs) $(DESTDIR)$(pkglibdir)
958         $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
959         $(mkinstalldirs) $(DESTDIR)$(BACKENDDIR)
960 if ENABLE_EVOLUTION
961         $(INSTALL_DATA) $(EVO_DLL_TARGET) $(EVO_DLL_TARGET).mdb $(DESTDIR)$(BACKENDDIR)
962 endif
963         @for i in $(BIN_WRAPPERS); do                                           \
964                 sed -e "s|\#installed=1|installed=1|" < $$i > $$i.tmp;          \
965                 echo "$(INSTALL_SCRIPT) $$i.tmp $(DESTDIR)$(bindir)/$$i";       \
966                 $(INSTALL_SCRIPT) $$i.tmp $(DESTDIR)$(bindir)/$$i || exit 1;    \
967                 rm -f $$i.tmp;                                                  \
968         done
970         @for i in $(SBIN_WRAPPERS); do                                          \
971                 sed -e "s|\#installed=1|installed=1|" < $$i > $$i.tmp;          \
972                 echo "$(INSTALL_SCRIPT) $$i.tmp $(DESTDIR)$(sbindir)/$$i";      \
973                 $(INSTALL_SCRIPT) $$i.tmp $(DESTDIR)$(sbindir)/$$i || exit 1;   \
974                 rm -f $$i.tmp;                                                  \
975         done
977         @sed -e "s|\#installed=1|installed=1|" < $(INDEX_HELPER_WRAPPER) > $(INDEX_HELPER_WRAPPER).tmp
978         $(INSTALL_SCRIPT) $(INDEX_HELPER_WRAPPER).tmp $(DESTDIR)$(pkglibdir)/$(INDEX_HELPER_WRAPPER)
979         @rm -f $(INDEX_HELPER_WRAPPER).tmp
981         $(INSTALL_DATA) $(PLUGIN_TARGET)                 $(DESTDIR)$(pkglibdir)
982         $(INSTALL_DATA) $(PLUGIN_TARGET).mdb             $(DESTDIR)$(pkglibdir)
983         $(INSTALL_DATA) $(DAEMON_DLL_TARGET)             $(DESTDIR)$(pkglibdir)
984         $(INSTALL_DATA) $(DAEMON_DLL_TARGET).mdb         $(DESTDIR)$(pkglibdir)
985         $(INSTALL_DATA) $(DAEMON_TARGET)                 $(DESTDIR)$(pkglibdir)
986         $(INSTALL_DATA) $(DAEMON_TARGET).mdb             $(DESTDIR)$(pkglibdir)
987         $(INSTALL_DATA) $(EXTRACT_CONTENT_TARGET)        $(DESTDIR)$(pkglibdir)
988         $(INSTALL_DATA) $(EXTRACT_CONTENT_TARGET).mdb    $(DESTDIR)$(pkglibdir)
989         $(INSTALL_DATA) $(INDEX_WEB_CONTENT_TARGET)      $(DESTDIR)$(pkglibdir)
990         $(INSTALL_DATA) $(INDEX_WEB_CONTENT_TARGET).mdb  $(DESTDIR)$(pkglibdir)
991         $(INSTALL_DATA) $(INDEX_HELPER_TARGET)           $(DESTDIR)$(pkglibdir)
992         $(INSTALL_DATA) $(INDEX_HELPER_TARGET).mdb       $(DESTDIR)$(pkglibdir)
993         $(INSTALL_DATA) $(BUILD_INDEX_TARGET)            $(DESTDIR)$(pkglibdir)
994         $(INSTALL_DATA) $(BUILD_INDEX_TARGET).mdb        $(DESTDIR)$(pkglibdir)
995         $(INSTALL_DATA) $(MANAGE_INDEX_TARGET)           $(DESTDIR)$(pkglibdir)
996         $(INSTALL_DATA) $(MANAGE_INDEX_TARGET).mdb       $(DESTDIR)$(pkglibdir)
997 if ENABLE_THUNDERBIRD
998         $(INSTALL_DATA) $(THUNDERBIRD_TARGET)                 $(DESTDIR)$(BACKENDDIR)
999         $(INSTALL_DATA) $(THUNDERBIRD_TARGET).mdb             $(DESTDIR)$(BACKENDDIR)
1000 endif
1002 uninstall-local:
1003 if ENABLE_THUNDERBIRD
1004         rm -f $(DESTDIR)$(BACKENDDIR)/$(THUNDERBIRD_TARGET)
1005         rm -f $(DESTDIR)$(BACKENDDIR)/$(THUNDERBIRD_TARGET).mdb
1006 endif
1007 if ENABLE_EVOLUTION
1008         rm -f $(DESTDIR)$(BACKENDDIR)/$(EVO_DLL_TARGET)
1009         rm -f $(DESTDIR)$(BACKENDDIR)/$(EVO_DLL_TARGET).mdb
1010 endif
1012         @for i in $(BIN_WRAPPERS); do                           \
1013                 echo "rm -f $(DESTDIR)$(bindir)/$$i";           \
1014                 rm -f $(DESTDIR)$(bindir)/$$i || exit 1;        \
1015         done
1017         @for i in $(SBIN_WRAPPERS); do                          \
1018                 echo "rm -f $(DESTDIR)$(sbindir)/$$i";          \
1019                 rm -f $(DESTDIR)$(sbindir)/$$i || exit 1;       \
1020         done
1022         rm -f $(DESTDIR)$(pkglibdir)/$(PLUGIN_TARGET)
1023         rm -f $(DESTDIR)$(pkglibdir)/$(PLUGIN_TARGET).mdb
1024         rm -f $(DESTDIR)$(pkglibdir)/$(DAEMON_DLL_TARGET)
1025         rm -f $(DESTDIR)$(pkglibdir)/$(DAEMON_DLL_TARGET).mdb
1026         rm -f $(DESTDIR)$(pkglibdir)/$(DAEMON_TARGET)
1027         rm -f $(DESTDIR)$(pkglibdir)/$(DAEMON_TARGET).mdb
1028         rm -f $(DESTDIR)$(pkglibdir)/$(INDEX_HELPER_TARGET)
1029         rm -f $(DESTDIR)$(pkglibdir)/$(INDEX_HELPER_TARGET).mdb
1030         rm -f $(DESTDIR)$(pkglibdir)/$(INDEX_HELPER_WRAPPER)
1031         rm -f $(DESTDIR)$(pkglibdir)/$(INDEX_HELPER_WRAPPER).mdb
1032         rm -f $(DESTDIR)$(pkglibdir)/$(EXTRACT_CONTENT_TARGET)
1033         rm -f $(DESTDIR)$(pkglibdir)/$(EXTRACT_CONTENT_TARGET).mdb
1034         rm -f $(DESTDIR)$(pkglibdir)/$(INDEX_WEB_CONTENT_TARGET)
1035         rm -f $(DESTDIR)$(pkglibdir)/$(INDEX_WEB_CONTENT_TARGET).mdb
1036         rm -f $(DESTDIR)$(pkglibdir)/$(BUILD_INDEX_TARGET)
1037         rm -f $(DESTDIR)$(pkglibdir)/$(BUILD_INDEX_TARGET).mdb
1038         rm -f $(DESTDIR)$(pkglibdir)/$(MANAGE_INDEX_TARGET)
1039         rm -f $(DESTDIR)$(pkglibdir)/$(MANAGE_INDEX_TARGET).mdb
1041 BIN_WRAPPERS = \
1042         $(DAEMON_WRAPPER)               \
1043         $(EXTRACT_CONTENT_WRAPPER)      \
1044         $(INDEX_WEB_CONTENT_WRAPPER)
1046 SBIN_WRAPPERS = \
1047         $(BUILD_INDEX_WRAPPER)          \
1048         $(MANAGE_INDEX_WRAPPER)
1050 #       $(MASTER_DELETE_WRAPPER)
1051 #       $(FS_SANITY_CHECK_WRAPPER)
1053 noinst_SCRIPTS= \
1054         $(DUMP_INDEX_WRAPPER)           \
1055         $(SNIPPET_TEST_WRAPPER)         \
1056         $(TERM_STATS_WRAPPER)           \
1057         $(NAME_INDEX_WRAPPER)           
1059 EXTRA_DIST = \
1060         $(autostart_DATA)                       \
1061         $(WRAPPER_IN)                           \
1062         $(DAEMON_WRAPPER_IN)                    \
1063         $(INDEX_HELPER_WRAPPER_IN)              \
1064         $(man_MANS)                             \
1065         $(PLUGIN_CSFILES)                       \
1066         $(DAEMON_DLL_CSFILES)                   \
1067         $(DAEMON_CSFILES)                       \
1068         $(EVO_DLL_CSFILES)                      \
1069         $(THUNDERBIRD_CSFILES)                  \
1070         $(EXTRACT_CONTENT_CSFILES)              \
1071         $(DUMP_INDEX_CSFILES)                   \
1072         $(INDEX_WEB_CONTENT_CSFILES)            \
1073         $(SNIPPET_TEST_CSFILES)                 \
1074         $(INDEX_HELPER_CSFILES)                 \
1075         $(MASTER_DELETE_CSFILES)                \
1076         $(TERM_STATS_CSFILES)                   \
1077         $(NAME_INDEX_CSFILES)                   \
1078         $(FS_SANITY_CHECK_CSFILES)              \
1079         $(MANAGE_INDEX_CSFILES)                 \
1080         $(BUILD_INDEX_CSFILES)
1082 CLEANFILES = \
1083         $(PLUGIN_TARGET)                        \
1084         $(PLUGIN_TARGET).mdb                    \
1085         $(DAEMON_DLL_TARGET)                    \
1086         $(DAEMON_DLL_TARGET).mdb                \
1087         $(DAEMON_TARGET)                        \
1088         $(DAEMON_TARGET).mdb                    \
1089         $(DAEMON_WRAPPER)                       \
1090         $(EVO_DLL_TARGET)                       \
1091         $(EVO_DLL_TARGET).mdb                   \
1092         $(INDEX_HELPER_TARGET)                  \
1093         $(INDEX_HELPER_TARGET).mdb              \
1094         $(INDEX_HELPER_WRAPPER)                 \
1095         $(EXTRACT_CONTENT_TARGET)               \
1096         $(EXTRACT_CONTENT_TARGET).mdb           \
1097         $(EXTRACT_CONTENT_WRAPPER)              \
1098         $(DUMP_INDEX_TARGET)                    \
1099         $(DUMP_INDEX_TARGET).mdb                \
1100         $(DUMP_INDEX_WRAPPER)                   \
1101         $(INDEX_WEB_CONTENT_TARGET)             \
1102         $(INDEX_WEB_CONTENT_TARGET).mdb         \
1103         $(INDEX_WEB_CONTENT_WRAPPER)            \
1104         $(MASTER_DELETE_TARGET)                 \
1105         $(MASTER_DELETE_TARGET).mdb             \
1106         $(MASTER_DELETE_WRAPPER)                \
1107         $(SNIPPET_TEST_TARGET)                  \
1108         $(SNIPPET_TEST_TARGET).mdb              \
1109         $(SNIPPET_TEST_WRAPPER)                 \
1110         $(TERM_STATS_TARGET)                    \
1111         $(TERM_STATS_TARGET).mdb                \
1112         $(TERM_STATS_WRAPPER)                   \
1113         $(NAME_INDEX_TARGET)                    \
1114         $(NAME_INDEX_TARGET).mdb                \
1115         $(NAME_INDEX_WRAPPER)                   \
1116         $(FS_SANITY_CHECK_TARGET)               \
1117         $(FS_SANITY_CHECK_TARGET).mdb           \
1118         $(FS_SANITY_CHECK_WRAPPER)              \
1119         $(MANAGE_INDEX_TARGET)                  \
1120         $(MANAGE_INDEX_TARGET).mdb              \
1121         $(MANAGE_INDEX_WRAPPER)                 \
1122         $(BUILD_INDEX_TARGET)                   \
1123         $(BUILD_INDEX_TARGET).mdb               \
1124         $(BUILD_INDEX_WRAPPER)                  \
1125         $(THUNDERBIRD_TARGET)                   \
1126         $(THUNDERBIRD_TARGET).mdb