* tools/Info.cs: Add --list-backends, --list-static-indexes to
[beagle.git] / beagled / Makefile.am
blob78231446d4bcb3685456cd70ee4908d9a8ea0464
2 # Warnings we don't want to see.
3 # Most of these are thanks to DotLucene.  It would be nice if we could use
4 # "#pragma warning" on these.
6 # 0162 = Unreachable code detected
7 # 0164 = This label has not been referenced
8 # 0169 = The private method/field 'foo' is never used
9 # 0219 = Variable is assigned but never used
10 # 0436 = Ignore imported type (local SqliteClient)
12 # unsafe arg for Mono.Data.SqliteClient fork
13 CSC = mcs -debug -nowarn:0162,0164,0169,0219,0436 -unsafe
15 BACKENDDIR = $(pkglibdir)/Backends
17 PLUGIN_TARGET = BeagleDaemonPlugins.dll
19 PLUGIN_CSFLAGS = -target:library
21 PLUGIN_CSFILES =                        \
22         $(srcdir)/Flavor.cs             \
23         $(srcdir)/Filter.cs
25 PLUGIN_LOCAL_ASSEMBLIES =               \
26         ../Util/Util.dll                \
27         ../BeagleClient/Beagle.dll
29 PLUGIN_ASSEMBLIES =                             \
30         -r:Mono.Posix                           \
31         $(BEAGLED_LIBS)                         \
32         $(PLUGIN_LOCAL_ASSEMBLIES:%=-r:%)
35 $(PLUGIN_TARGET): $(PLUGIN_CSFILES) $(PLUGIN_LOCAL_ASSEMBLIES)
36         $(CSC) -out:$@ $(PLUGIN_CSFLAGS) $(PLUGIN_CSFILES) $(PLUGIN_ASSEMBLIES)
38 ############################################################
40 WRAPPER_IN = wrapper.in
41 WRAPPER_SED = sed                                       \
42         -e "s|\@prefix\@|$(prefix)|g"                   \
43         -e "s|\@pkglibdir\@|$(pkglibdir)|g"             \
44         -e "s|\@libdir\@|$(libdir)|g"                   \
45         -e "s|\@evolibdir\@|$(EVO_LIBDIR)|g"            \
46         -e "s|\@gacprefix\@|$(GAC_PREFIX)|g"            \
47         -e "s|\@bash\@|$(BASH)|"                        \
48         -e "s|\@wrapper\@|$@|g"
50 ############################################################
52 lucenedir = $(srcdir)/Lucene.Net
54 LUCENE_1_9_CSFILES =                                                    \
55         $(lucenedir)/AssemblyInfo.cs                                    \
56         $(lucenedir)/LucenePackage.cs                                   \
57         $(lucenedir)/SupportClass.cs                                    \
58         $(lucenedir)/Store/BufferedIndexInput.cs                        \
59         $(lucenedir)/Store/BufferedIndexOutput.cs                       \
60         $(lucenedir)/Store/Directory.cs                                 \
61         $(lucenedir)/Store/FSDirectory.cs                               \
62         $(lucenedir)/Store/IndexInput.cs                                \
63         $(lucenedir)/Store/IndexOutput.cs                               \
64         $(lucenedir)/Store/InputStream.cs                               \
65         $(lucenedir)/Store/Lock.cs                                      \
66         $(lucenedir)/Store/MMapDirectory.cs                             \
67         $(lucenedir)/Store/OutputStream.cs                              \
68         $(lucenedir)/Store/RAMDirectory.cs                              \
69         $(lucenedir)/Store/RAMFile.cs                                   \
70         $(lucenedir)/Store/RAMInputStream.cs                            \
71         $(lucenedir)/Store/RAMOutputStream.cs                           \
72         $(lucenedir)/Util/BitVector.cs                                  \
73         $(lucenedir)/Util/Constants.cs                                  \
74         $(lucenedir)/Util/Parameter.cs                                  \
75         $(lucenedir)/Util/PriorityQueue.cs                              \
76         $(lucenedir)/Util/StringHelper.cs                               \
77         $(lucenedir)/Index/CompoundFileReader.cs                        \
78         $(lucenedir)/Index/CompoundFileWriter.cs                        \
79         $(lucenedir)/Index/DocumentWriter.cs                            \
80         $(lucenedir)/Index/FieldInfo.cs                                 \
81         $(lucenedir)/Index/FieldInfos.cs                                \
82         $(lucenedir)/Index/FieldsReader.cs                              \
83         $(lucenedir)/Index/FieldsWriter.cs                              \
84         $(lucenedir)/Index/FilterIndexReader.cs                         \
85         $(lucenedir)/Index/IndexReader.cs                               \
86         $(lucenedir)/Index/IndexWriter.cs                               \
87         $(lucenedir)/Index/MultipleTermPositions.cs                     \
88         $(lucenedir)/Index/MultiReader.cs                               \
89         $(lucenedir)/Index/SegmentInfo.cs                               \
90         $(lucenedir)/Index/SegmentInfos.cs                              \
91         $(lucenedir)/Index/SegmentMergeInfo.cs                          \
92         $(lucenedir)/Index/SegmentMergeQueue.cs                         \
93         $(lucenedir)/Index/SegmentMerger.cs                             \
94         $(lucenedir)/Index/SegmentReader.cs                             \
95         $(lucenedir)/Index/SegmentTermDocs.cs                           \
96         $(lucenedir)/Index/SegmentTermEnum.cs                           \
97         $(lucenedir)/Index/SegmentTermPositions.cs                      \
98         $(lucenedir)/Index/SegmentTermPositionVector.cs                 \
99         $(lucenedir)/Index/SegmentTermVector.cs                         \
100         $(lucenedir)/Index/Term.cs                                      \
101         $(lucenedir)/Index/TermBuffer.cs                                \
102         $(lucenedir)/Index/TermDocs.cs                                  \
103         $(lucenedir)/Index/TermEnum.cs                                  \
104         $(lucenedir)/Index/TermFreqVector.cs                            \
105         $(lucenedir)/Index/TermInfo.cs                                  \
106         $(lucenedir)/Index/TermInfosReader.cs                           \
107         $(lucenedir)/Index/TermInfosWriter.cs                           \
108         $(lucenedir)/Index/TermPositions.cs                             \
109         $(lucenedir)/Index/TermPositionVector.cs                        \
110         $(lucenedir)/Index/TermVectorOffsetInfo.cs                      \
111         $(lucenedir)/Index/TermVectorsReader.cs                         \
112         $(lucenedir)/Index/TermVectorsWriter.cs                         \
113         $(lucenedir)/Document/DateField.cs                              \
114         $(lucenedir)/Document/DateTools.cs                              \
115         $(lucenedir)/Document/Document.cs                               \
116         $(lucenedir)/Document/Field.cs                                  \
117         $(lucenedir)/Document/NumberTools.cs                            \
118         $(lucenedir)/Analysis/DE/WordlistLoader.cs                      \
119         $(lucenedir)/Analysis/Standard/CharStream.cs                    \
120         $(lucenedir)/Analysis/Standard/FastCharStream.cs                \
121         $(lucenedir)/Analysis/Standard/ParseException.cs                \
122         $(lucenedir)/Analysis/Standard/StandardAnalyzer.cs              \
123         $(lucenedir)/Analysis/Standard/StandardFilter.cs                \
124         $(lucenedir)/Analysis/Standard/StandardTokenizer.cs             \
125         $(lucenedir)/Analysis/Standard/StandardTokenizerConstants.cs    \
126         $(lucenedir)/Analysis/Standard/StandardTokenizerTokenManager.cs \
127         $(lucenedir)/Analysis/Standard/Token.cs                         \
128         $(lucenedir)/Analysis/Standard/TokenMgrError.cs                 \
129         $(lucenedir)/Analysis/Analyzer.cs                               \
130         $(lucenedir)/Analysis/CharTokenizer.cs                          \
131         $(lucenedir)/Analysis/LetterTokenizer.cs                        \
132         $(lucenedir)/Analysis/LowerCaseFilter.cs                        \
133         $(lucenedir)/Analysis/LowerCaseTokenizer.cs                     \
134         $(lucenedir)/Analysis/PerFieldAnalyzerWrapper.cs                \
135         $(lucenedir)/Analysis/PorterStemFilter.cs                       \
136         $(lucenedir)/Analysis/PorterStemmer.cs                          \
137         $(lucenedir)/Analysis/SimpleAnalyzer.cs                         \
138         $(lucenedir)/Analysis/StopAnalyzer.cs                           \
139         $(lucenedir)/Analysis/StopFilter.cs                             \
140         $(lucenedir)/Analysis/Token.cs                                  \
141         $(lucenedir)/Analysis/TokenFilter.cs                            \
142         $(lucenedir)/Analysis/Tokenizer.cs                              \
143         $(lucenedir)/Analysis/TokenStream.cs                            \
144         $(lucenedir)/Analysis/WhitespaceAnalyzer.cs                     \
145         $(lucenedir)/Analysis/WhitespaceTokenizer.cs                    \
146         $(lucenedir)/Search/Spans/NearSpans.cs                          \
147         $(lucenedir)/Search/Spans/SpanFirstQuery.cs                     \
148         $(lucenedir)/Search/Spans/SpanNearQuery.cs                      \
149         $(lucenedir)/Search/Spans/SpanNotQuery.cs                       \
150         $(lucenedir)/Search/Spans/SpanOrQuery.cs                        \
151         $(lucenedir)/Search/Spans/SpanQuery.cs                          \
152         $(lucenedir)/Search/Spans/Spans.cs                              \
153         $(lucenedir)/Search/Spans/SpanScorer.cs                         \
154         $(lucenedir)/Search/Spans/SpanTermQuery.cs                      \
155         $(lucenedir)/Search/Spans/SpanWeight.cs                         \
156         $(lucenedir)/Search/BooleanClause.cs                            \
157         $(lucenedir)/Search/BooleanQuery.cs                             \
158         $(lucenedir)/Search/BooleanScorer.cs                            \
159         $(lucenedir)/Search/BooleanScorer2.cs                           \
160         $(lucenedir)/Search/CachingWrapperFilter.cs                     \
161         $(lucenedir)/Search/ConjunctionScorer.cs                        \
162         $(lucenedir)/Search/DateFilter.cs                               \
163         $(lucenedir)/Search/DefaultSimilarity.cs                        \
164         $(lucenedir)/Search/DisjunctionSumScorer.cs                     \
165         $(lucenedir)/Search/ExactPhraseScorer.cs                        \
166         $(lucenedir)/Search/Explanation.cs                              \
167         $(lucenedir)/Search/FieldCache.cs                               \
168         $(lucenedir)/Search/FieldCacheImpl.cs                           \
169         $(lucenedir)/Search/FieldDoc.cs                                 \
170         $(lucenedir)/Search/FieldDocSortedHitQueue.cs                   \
171         $(lucenedir)/Search/FieldSortedHitQueue.cs                      \
172         $(lucenedir)/Search/Filter.cs                                   \
173         $(lucenedir)/Search/FilteredQuery.cs                            \
174         $(lucenedir)/Search/FilteredTermEnum.cs                         \
175         $(lucenedir)/Search/FuzzyQuery.cs                               \
176         $(lucenedir)/Search/FuzzyTermEnum.cs                            \
177         $(lucenedir)/Search/HitCollector.cs                             \
178         $(lucenedir)/Search/HitQueue.cs                                 \
179         $(lucenedir)/Search/Hits.cs                                     \
180         $(lucenedir)/Search/IndexSearcher.cs                            \
181         $(lucenedir)/Search/MultiPhraseQuery.cs                         \
182         $(lucenedir)/Search/MultiSearcher.cs                            \
183         $(lucenedir)/Search/MultiTermQuery.cs                           \
184         $(lucenedir)/Search/NonMatchingScorer.cs                        \
185         $(lucenedir)/Search/ParallelMultiSearcher.cs                    \
186         $(lucenedir)/Search/PhrasePositions.cs                          \
187         $(lucenedir)/Search/PhrasePrefixQuery.cs                        \
188         $(lucenedir)/Search/PhraseQuery.cs                              \
189         $(lucenedir)/Search/PhraseQueue.cs                              \
190         $(lucenedir)/Search/PhraseScorer.cs                             \
191         $(lucenedir)/Search/PrefixQuery.cs                              \
192         $(lucenedir)/Search/Query.cs                                    \
193         $(lucenedir)/Search/QueryFilter.cs                              \
194         $(lucenedir)/Search/QueryTermVector.cs                          \
195         $(lucenedir)/Search/RangeFilter.cs                              \
196         $(lucenedir)/Search/RangeQuery.cs                               \
197         $(lucenedir)/Search/RemoteSearchable.cs                         \
198         $(lucenedir)/Search/ReqExclScorer.cs                            \
199         $(lucenedir)/Search/ReqOptSumScorer.cs                          \
200         $(lucenedir)/Search/ScoreDoc.cs                                 \
201         $(lucenedir)/Search/ScoreDocComparator.cs                       \
202         $(lucenedir)/Search/Scorer.cs                                   \
203         $(lucenedir)/Search/Searchable.cs                               \
204         $(lucenedir)/Search/Searcher.cs                                 \
205         $(lucenedir)/Search/Similarity.cs                               \
206         $(lucenedir)/Search/SimilarityDelegator.cs                      \
207         $(lucenedir)/Search/SloppyPhraseScorer.cs                       \
208         $(lucenedir)/Search/Sort.cs                                     \
209         $(lucenedir)/Search/SortComparator.cs                           \
210         $(lucenedir)/Search/SortComparatorSource.cs                     \
211         $(lucenedir)/Search/SortField.cs                                \
212         $(lucenedir)/Search/TermQuery.cs                                \
213         $(lucenedir)/Search/TermScorer.cs                               \
214         $(lucenedir)/Search/TopDocs.cs                                  \
215         $(lucenedir)/Search/TopFieldDocs.cs                             \
216         $(lucenedir)/Search/Weight.cs                                   \
217         $(lucenedir)/Search/WildcardQuery.cs                            \
218         $(lucenedir)/Search/WildcardTermEnum.cs                         \
219         $(lucenedir)/QueryParser/Precedence/CharStream.cs               \
220         $(lucenedir)/QueryParser/Precedence/ParseException.cs           \
221         $(lucenedir)/QueryParser/Precedence/FastCharStream.cs           \
222         $(lucenedir)/QueryParser/Precedence/PrecedenceQueryParserConstants.cs\
223         $(lucenedir)/QueryParser/Precedence/Token.cs                    \
224         $(lucenedir)/QueryParser/Precedence/PrecedenceQueryParserTokenManager.cs\
225         $(lucenedir)/QueryParser/Precedence/PrecedenceQueryParser.cs    \
226         $(lucenedir)/QueryParser/Precedence/TokenMgrError.cs            \
227         $(lucenedir)/QueryParser/CharStream.cs                          \
228         $(lucenedir)/QueryParser/FastCharStream.cs                      \
229         $(lucenedir)/QueryParser/MultiFieldQueryParser.cs               \
230         $(lucenedir)/QueryParser/ParseException.cs                      \
231         $(lucenedir)/QueryParser/QueryParser.cs                         \
232         $(lucenedir)/QueryParser/QueryParserConstants.cs                \
233         $(lucenedir)/QueryParser/QueryParserTokenManager.cs             \
234         $(lucenedir)/QueryParser/Token.cs                               \
235         $(lucenedir)/QueryParser/TokenMgrError.cs
237 LUCENE_CSFILES = $(LUCENE_1_9_CSFILES)
239 ############################################################
241 sqlitedir = $(srcdir)/Mono.Data.SqliteClient
243 SQLITE_CSFILES =                                        \
244         $(sqlitedir)/SqliteCommand.cs                   \
245         $(sqlitedir)/SqliteConnection.cs                \
246         $(sqlitedir)/Sqlite.cs                          \
247         $(sqlitedir)/SqliteDataAdapter.cs               \
248         $(sqlitedir)/SqliteDataReader.cs                \
249         $(sqlitedir)/SqliteExceptions.cs                \
250         $(sqlitedir)/SqliteParameterCollection.cs       \
251         $(sqlitedir)/SqliteParameter.cs                 \
252         $(sqlitedir)/SqliteRowUpdatedEventArgs.cs       \
253         $(sqlitedir)/SqliteRowUpdatedEventHandler.cs    \
254         $(sqlitedir)/SqliteRowUpdatingEventArgs.cs      \
255         $(sqlitedir)/SqliteRowUpdatingEventHandler.cs   \
256         $(sqlitedir)/SqliteTransaction.cs
258 ############################################################
260 DAEMON_DLL_TARGET = BeagleDaemonLib.dll
262 DAEMON_DLL_CSFLAGS = -target:library $(BEAGLE_DEFINES)
264 fsqueryabledir = $(srcdir)/FileSystemQueryable
265 FILE_SYSTEM_QUERYABLE_CSFILES =                                 \
266         $(fsqueryabledir)/DirectoryModel.cs                     \
267         $(fsqueryabledir)/DirectoryState.cs                     \
268         $(fsqueryabledir)/TreeCrawlTask.cs                      \
269         $(fsqueryabledir)/FileCrawlTask.cs                      \
270         $(fsqueryabledir)/DirectoryIndexableGenerator.cs        \
271         $(fsqueryabledir)/FileNameFilter.cs                     \
272         $(fsqueryabledir)/LuceneNameResolver.cs                 \
273         $(fsqueryabledir)/FileSystemQueryable.cs                \
274         $(fsqueryabledir)/IFileEventBackend.cs                  \
275         $(fsqueryabledir)/InotifyBackend.cs                     \
276         $(fsqueryabledir)/NullFileEventBackend.cs
279 gaimlogqueryable = $(srcdir)/GaimLogQueryable
280 GAIM_LOG_QUERYABLE_CSFILES =                            \
281         $(gaimlogqueryable)/GaimLogQueryable.cs
283 tomboyqueryable = $(srcdir)/TomboyQueryable
284 TOMBOY_QUERYABLE_CSFILES =                              \
285         $(tomboyqueryable)/TomboyQueryable.cs
287 kmailqueryable = $(srcdir)/KMailQueryable
288 KMAIL_QUERYABLE_CSFILES =                               \
289         $(kmailqueryable)/KMailQueryable.cs             \
290         $(kmailqueryable)/KMailIndexableGenerator.cs    \
291         $(kmailqueryable)/KMailIndexer.cs
293 blamqueryable = $(srcdir)/BlamQueryable
294 BLAM_QUERYABLE_CSFILES =                                \
295         $(blamqueryable)/BlamQueryable.cs
297 lifereaqueryable = $(srcdir)/LifereaQueryable
298 LIFEREA_QUERYABLE_CSFILES =                             \
299         $(lifereaqueryable)/LifereaQueryable.cs
301 akregatorqueryable = $(srcdir)/AkregatorQueryable
302 AKREGATOR_QUERYABLE_CSFILES =                           \
303         $(akregatorqueryable)/AkregatorQueryable.cs
305 konqhistoryqueryable = $(srcdir)/KonqHistoryQueryable
306 KONQHISTORY_QUERYABLE_CSFILES =                         \
307         $(konqhistoryqueryable)/KonqQueryable.cs
309 kopetequeryable = $(srcdir)/KopeteQueryable
310 KOPETE_QUERYABLE_CSFILES =                              \
311         $(kopetequeryable)/KopeteQueryable.cs           \
312         $(kopetequeryable)/KopeteCrawler.cs
314 indexingservicequeryable = $(srcdir)/IndexingServiceQueryable
315 INDEXING_SERVICE_QUERYABLE_CSFILES =                    \
316         $(indexingservicequeryable)/IndexingServiceQueryable.cs
318 DAEMON_DLL_CSFILES =                                            \
319         $(LUCENE_CSFILES)                                       \
320         $(KMAIL_QUERYABLE_CSFILES)                              \
321         $(FILE_SYSTEM_QUERYABLE_CSFILES)                        \
322         $(GAIM_LOG_QUERYABLE_CSFILES)                           \
323         $(INDEXING_SERVICE_QUERYABLE_CSFILES)                   \
324         $(TOMBOY_QUERYABLE_CSFILES)                             \
325         $(BLAM_QUERYABLE_CSFILES)                               \
326         $(LIFEREA_QUERYABLE_CSFILES)                            \
327         $(AKREGATOR_QUERYABLE_CSFILES)                          \
328         $(KONQHISTORY_QUERYABLE_CSFILES)                                \
329         $(KOPETE_QUERYABLE_CSFILES)                             \
330         $(srcdir)/FileAttributes.cs                             \
331         $(srcdir)/FileAttributesStore.cs                        \
332         $(srcdir)/FileAttributesStore_ExtendedAttribute.cs      \
333         $(srcdir)/FileAttributesStore_Mixed.cs                  \
334         $(srcdir)/FileAttributesStore_Sqlite.cs                 \
335         $(srcdir)/FilterFactory.cs                              \
336         $(srcdir)/IFileAttributesStore.cs                       \
337         $(srcdir)/IIndexer.cs                                   \
338         $(srcdir)/IndexSynchronization.cs                       \
339         $(srcdir)/IndexerReceipts.cs                            \
340         $(srcdir)/IndexerRequest.cs                             \
341         $(srcdir)/IQueryResult.cs                               \
342         $(srcdir)/IQueryWorker.cs                               \
343         $(srcdir)/IQueryable.cs                                 \
344         $(srcdir)/LuceneBitArray.cs                             \
345         $(srcdir)/LuceneCommon.cs                               \
346         $(srcdir)/LuceneIndexingDriver.cs                       \
347         $(srcdir)/LuceneQueryingDriver.cs                       \
348         $(srcdir)/LuceneFileQueryable.cs                        \
349         $(srcdir)/LuceneQueryable.cs                            \
350         $(srcdir)/NoiseFilter.cs                                \
351         $(srcdir)/PropertyKeywordFu.cs                          \
352         $(srcdir)/QueryDriver.cs                                \
353         $(srcdir)/QueryExecutor.cs                              \
354         $(srcdir)/QueryResult.cs                                \
355         $(srcdir)/QueryStringParser.cs                          \
356         $(srcdir)/Queryable.cs                                  \
357         $(srcdir)/QueryableFlavor.cs                            \
358         $(srcdir)/RemoteControlExecutors.cs                     \
359         $(srcdir)/RemoteIndexerRequest.cs                       \
360         $(srcdir)/RemoteIndexerResponse.cs                      \
361         $(srcdir)/Server.cs                                     \
362         $(srcdir)/Shutdown.cs                                   \
363         $(srcdir)/SnippetExecutor.cs                            \
364         $(srcdir)/SnippetFu.cs                                  \
365         $(srcdir)/StaticQueryable.cs                            \
366         $(srcdir)/TextCache.cs
368 DAEMON_DLL_LOCAL_ASSEMBLIES =           \
369         ../Util/Util.dll                \
370         ../BeagleClient/Beagle.dll      \
371         ./$(PLUGIN_TARGET)
373 DAEMON_DLL_ASSEMBLIES =                         \
374         $(BEAGLED_LIBS)                         \
375         $(DAEMON_DLL_LOCAL_ASSEMBLIES:%=-r:%)   \
376         $(SHARPZIPLIB_LIBS)             \
377         -r:Mono.Data.SqliteClient               \
378         -r:Mono.Posix                           \
379         -r:System.Runtime.Remoting              \
380         -r:System.Web
382 if USE_LOCAL_SQLITE
383 DAEMON_DLL_CSFILES += $(SQLITE_CSFILES)
384 DAEMON_DLL_ASSEMBLIES += -r:System.Data
385 else
386 DAEMON_DLL_ASSEMBLIES += -r:Mono.Data.SqliteClient
387 endif
389 #if ENABLE_MOZILLA_BACKEND
390 #mozillaqueryable = $(srcdir)/MozillaQueryable
391 #MOZILLA_QUERYABLE_CSFILES =                            \
392 #       $(mozillaqueryable)/MozillaQueryable.cs
393 #DAEMON_DLL_CSFILES +=                                  \
394 #       $(MOZILLA_QUERYABLE_CSFILES)
395 #endif
397 if ENABLE_WEBSERVICES
398 DAEMON_DLL_CSFILES += \
399         $(webservicesdir)/WebServiceProxy.cs    \
400         $(webservicesdir)/NetBeagleHandler.cs   \
401         $(webservicesdir)/NetBeagleQueryable.cs 
402 DAEMON_DLL_ASSEMBLIES += -r:System.Web.Services 
403 endif
405 if ENABLE_GOOGLEDRIVER
406 DAEMON_DLL_CSFILES +=                  \
407        $(srcdir)/GoogleDriver.cs
408 endif
410 $(DAEMON_DLL_TARGET): $(DAEMON_DLL_CSFILES) $(DAEMON_DLL_LOCAL_ASSEMBLIES)
411         $(CSC) -out:$@ $(DAEMON_DLL_CSFLAGS) $(DAEMON_DLL_CSFILES) $(DAEMON_DLL_ASSEMBLIES)
413 ############################################################
416 ### Pluggable backend support
419 BACKEND_CSFLAGS = -target:library
420 BACKEND_LOCAL_ASSEMBLIES =                      \
421         ../Util/Util.dll                        \
422         ../BeagleClient/Beagle.dll              \
423         ./$(DAEMON_DLL_TARGET)
425 BACKEND_ASSEMBLIES =                            \
426         $(SHARPZIPLIB_LIBS)                     \
427         $(BACKEND_LOCAL_ASSEMBLIES:%=-r:%)      \
428         -r:Mono.Posix
431 ### Evolution backend
434 edsqueryable = $(srcdir)/EvolutionDataServerQueryable
435 EDS_QUERYABLE_CSFILES =                                 \
436         $(edsqueryable)/BookContainer.cs                \
437         $(edsqueryable)/CalContainer.cs                 \
438         $(edsqueryable)/Container.cs                    \
439         $(edsqueryable)/EvolutionDataServerQueryable.cs \
440         $(edsqueryable)/SourcesHandler.cs
442 evomailqueryable = $(srcdir)/EvolutionMailDriver
443 EVO_MAIL_QUERYABLE_CSFILES =                                    \
444         $(evomailqueryable)/EvolutionMailDriver.cs              \
445         $(evomailqueryable)/EvolutionMailIndexableGenerator.cs  \
446         $(evomailqueryable)/GConfThreadHelper.cs                \
447         $(evomailqueryable)/MailCrawler.cs
449 EVO_DLL_TARGET = EvolutionBackends.dll
450 EVO_DLL_CSFLAGS = $(BACKEND_CSFLAGS)
451 EVO_DLL_CSFILES = $(EDS_QUERYABLE_CSFILES) $(EVO_MAIL_QUERYABLE_CSFILES)
452 EVO_DLL_ASSEMBLIES = $(BACKEND_ASSEMBLIES) $(EVO_LIBS)
454 $(EVO_DLL_TARGET): $(EVO_DLL_CSFILES) $(DAEMON_DLL_LOCAL_ASSEMBLIES) $(DAEMON_DLL_TARGET)
455         $(CSC) -out:$@ $(EVO_DLL_CSFLAGS) $(EVO_DLL_CSFILES) -r:$(DAEMON_DLL_TARGET) $(EVO_DLL_ASSEMBLIES)
457 ############################################################
460 ### Web Services
463 webservicesdir = $(srcdir)/WebServices
464 xspdir = $(srcdir)/WebServices/WebServer
466 WEBSERVICES_XSP_TARGET = BeagleXsp.dll
468 WEBSERVICES_XSP_CSFLAGS = -target:library 
470 WEBSERVICES_XSP_ASSEMBLIES =                    \
471         -r:System                               \
472         -r:System.Web                           \
473         -r:System.Runtime.Remoting      
475 WEBSERVICES_XSP_CSFILES =                       \
476         $(xspdir)/IApplicationHost.cs           \
477         $(xspdir)/MonoWorkerRequest.cs          \
478         $(xspdir)/Tracing.cs                    \
479         $(xspdir)/ApplicationServer.cs          \
480         $(xspdir)/LingeringNetworkStream.cs     \
481         $(xspdir)/BaseApplicationHost.cs        \
482         $(xspdir)/BaseRequestBroker.cs          \
483         $(xspdir)/IWebSource.cs                 \
484         $(xspdir)/server.cs                     \
485         $(xspdir)/InitialWorkerRequest.cs       \
486         $(xspdir)/XSPApplicationHost.cs         \
487         $(xspdir)/XSPWorkerRequest.cs           \
488         $(xspdir)/AssemblyInfo.cs
490 $(WEBSERVICES_XSP_TARGET): $(WEBSERVICES_XSP_CSFILES) 
491         $(CSC) -out:$@ $(WEBSERVICES_XSP_CSFLAGS) $(WEBSERVICES_XSP_CSFILES) $(WEBSERVICES_XSP_ASSEMBLIES)
494 WEBSERVICES_BACKEND_TARGET = BeagleWebServicesBackEnd.dll
496 WEBSERVICES_BACKEND_LOCAL_ASSEMBLIES =  \
497         ../Util/Util.dll                \
498         ../images/Images.dll            \
499         ../BeagleClient/Beagle.dll      \
500         ../Tiles/Tiles.dll              \
501         BeagleDaemonPlugins.dll         \
502         BeagleDaemonLib.dll                     \
503         $(WEBSERVICES_XSP_TARGET)
505 WEBSERVICES_BACKEND_ASSEMBLIES = \
506         $(WEBSERVICES_BACKEND_LOCAL_ASSEMBLIES:%=-r:%)  \
507         -r:System                                       \
508         -r:System.Web                           \
509         -r:System.Runtime.Remoting      \
510         $(BEAGLED_LIBS)
512 WEBSERVICES_BACKEND_CSFILES = \
513         $(webservicesdir)/ExternalAccessFilter.cs       \
514         $(webservicesdir)/WebBackEnd.cs         \
515         $(webservicesdir)/WebServiceBackEnd.cs
517 WEBSERVICES_CSFLAGS = -target:library -noconfig
519 $(WEBSERVICES_BACKEND_TARGET): $(WEBSERVICES_BACKEND_CSFILES) $(WEBSERVICES_BACKEND_LOCAL_ASSEMBLIES)
520         $(CSC) -out:$@ $(WEBSERVICES_CSFLAGS) $(WEBSERVICES_BACKEND_CSFILES) $(WEBSERVICES_BACKEND_ASSEMBLIES)
522 WEBSERVICES_FRONTEND_TARGET = BeagleWebServicesFrontEnd.dll
523 WEBSERVICES_FRONTEND_CSFILES = \
524         $(webservicesdir)/WebFrontEnd.cs        \
525         $(webservicesdir)/WebServiceFrontEnd.cs
527 WEBSERVICES_FRONTEND_ASSEMBLIES =       \
528         $(WEBSERVICES_BACKEND_ASSEMBLIES)       \
529         -r:$(WEBSERVICES_BACKEND_TARGET)        \
530         -r:System.Web.Services
532 $(WEBSERVICES_FRONTEND_TARGET): $(WEBSERVICES_FRONTEND_CSFILES) $(WEBSERVICES_BACKEND_TARGET) 
533         $(CSC) -out:$@ $(WEBSERVICES_CSFLAGS) $(WEBSERVICES_FRONTEND_CSFILES) $(WEBSERVICES_FRONTEND_ASSEMBLIES)
535 WEBSERVICES_RESOURCES =                         \
536         $(webservicesdir)/search.aspx   \
537         $(webservicesdir)/search.asmx   \
538         $(webservicesdir)/web.config
540 WEBSERVICES_RESOURCES_DIST =            \
541         $(webservicesdir)/search.aspx   \
542         $(webservicesdir)/search.asmx   \
543         $(webservicesdir)/web.config
545 XSP_DIR = $(pkgdatadir)/xsp
546 XSPBIN_DIR = $(XSP_DIR)/bin
548 ############################################################
550 DAEMON_WRAPPER = beagled
551 DAEMON_WRAPPER_IN = beagled.in
552 DAEMON_TARGET = BeagleDaemon.exe
554 $(DAEMON_WRAPPER): $(srcdir)/$(DAEMON_WRAPPER_IN)
555         $(WRAPPER_SED) -e "s|\@target\@|$(DAEMON_TARGET)|g" < $(srcdir)/$(DAEMON_WRAPPER_IN) > $@
556         chmod +x $(DAEMON_WRAPPER)
558 DAEMON_CSFLAGS =                                \
559         -target:exe                             \
560         $(BEAGLE_DEFINES)
562 DAEMON_CSFILES =                                \
563         $(srcdir)/BeagleDaemon.cs               \
564         $(srcdir)/RemoteIndexer.cs
566 DAEMON_LOCAL_ASSEMBLIES =                       \
567         ../Util/Util.dll                        \
568         ../BeagleClient/Beagle.dll              \
569         ./$(PLUGIN_TARGET)                      \
570         ./$(DAEMON_DLL_TARGET)
572 DAEMON_ASSEMBLIES =                             \
573         $(BEAGLED_LIBS)                         \
574         $(SHARPZIPLIB_LIBS)                     \
575         $(DAEMON_LOCAL_ASSEMBLIES:%=-r:%)       \
576         -r:Mono.Posix
578 if ENABLE_WEBSERVICES
579 DAEMON_CSFLAGS += -define:ENABLE_WEBSERVICES
581 DAEMON_LOCAL_ASSEMBLIES +=              \
582         BeagleDaemonPlugins.dll         \
583         ../images/Images.dll            \
584         ../Tiles/Tiles.dll              \
585         $(WEBSERVICES_BACKEND_TARGET)   \
586         $(WEBSERVICES_FRONTEND_TARGET)  
588 DAEMON_ASSEMBLIES += -r:System.Runtime.Remoting
589 endif
591 $(DAEMON_TARGET): $(DAEMON_CSFILES) $(DAEMON_LOCAL_ASSEMBLIES)
592         $(CSC) -out:$@ $(DAEMON_CSFLAGS) $(DAEMON_CSFILES) $(DAEMON_ASSEMBLIES)
594 ############################################################
595 ############################################################
596 ############################################################
598 # This next section is a very good example of why we need real mono support in
599 # automake.  This is a massive wart on our development platform.
601 INDEX_HELPER_WRAPPER = beagled-index-helper
602 INDEX_HELPER_WRAPPER_IN = $(INDEX_HELPER_WRAPPER).in
603 INDEX_HELPER_TARGET = IndexHelper.exe
605 $(INDEX_HELPER_WRAPPER): $(srcdir)/$(INDEX_HELPER_WRAPPER_IN)
606         $(WRAPPER_SED) -e "s|\@target\@|$(INDEX_HELPER_TARGET)|g" < $(srcdir)/$(INDEX_HELPER_WRAPPER_IN) > $@
607         chmod +x $(INDEX_HELPER_WRAPPER)
609 INDEX_HELPER_CSFLAGS = -target:exe $(BEAGLE_DEFINES)
611 indexhelperdir = $(srcdir)/IndexHelper
613 INDEX_HELPER_CSFILES =  \
614         $(indexhelperdir)/IndexHelper.cs                \
615         $(indexhelperdir)/RemoteIndexerExecutor.cs
618 INDEX_HELPER_LOCAL_ASSEMBLIES =         \
619         ../Util/Util.dll                \
620         ../BeagleClient/Beagle.dll      \
621         ./$(DAEMON_DLL_TARGET)
623 INDEX_HELPER_ASSEMBLIES = \
624         $(BEAGLED_LIBS)                         \
625         $(SHARPZIPLIB_LIBS)                     \
626         $(INDEX_HELPER_LOCAL_ASSEMBLIES:%=-r:%) \
627         -r:Mono.Posix                           \
628         -r:System.Runtime.Remoting
630 $(INDEX_HELPER_TARGET): $(INDEX_HELPER_CSFILES) $(INDEX_HELPER_LOCAL_ASSEMBLIES)
631         $(CSC) -out:$@ $(INDEX_HELPER_CSFLAGS) $(INDEX_HELPER_CSFILES) $(INDEX_HELPER_ASSEMBLIES)
633 ############################################################
635 EXTRACT_CONTENT_WRAPPER = beagle-extract-content
636 EXTRACT_CONTENT_TARGET = ExtractContent.exe
638 $(EXTRACT_CONTENT_WRAPPER): $(srcdir)/$(WRAPPER_IN)
639         $(WRAPPER_SED) -e "s|\@target\@|$(EXTRACT_CONTENT_TARGET)|g" < $(srcdir)/$(WRAPPER_IN) > $@
640         chmod +x $(EXTRACT_CONTENT_WRAPPER)
643 EXTRACT_CONTENT_CSFLAGS = \
644         -target:exe
646 EXTRACT_CONTENT_CSFILES = \
647         $(srcdir)/ExtractContent.cs
649 EXTRACT_CONTENT_LOCAL_ASSEMBLIES = \
650         ../Util/Util.dll                        \
651         ../BeagleClient/Beagle.dll              \
652         ./$(PLUGIN_TARGET)                      \
653         ./$(DAEMON_DLL_TARGET)
655 EXTRACT_CONTENT_ASSEMBLIES = \
656         $(BEAGLED_LIBS)                         \
657         $(SHARPZIPLIB_LIBS)                     \
658         $(DAEMON_LOCAL_ASSEMBLIES:%=-r:%)       \
659         -r:Mono.Posix                           \
660         -r:System.Runtime.Remoting
662 $(EXTRACT_CONTENT_TARGET): $(EXTRACT_CONTENT_CSFILES) $(EXTRACT_CONTENT_LOCAL_ASSEMBLIES)
663         $(CSC) -out:$@ $(EXTRACT_CONTENT_CSFLAGS) $(EXTRACT_CONTENT_CSFILES) $(EXTRACT_CONTENT_ASSEMBLIES)
665 ############################################################
667 DUMP_INDEX_WRAPPER = beagle-dump-index
668 DUMP_INDEX_TARGET = DumpIndex.exe
670 $(DUMP_INDEX_WRAPPER): $(srcdir)/$(WRAPPER_IN)
671         $(WRAPPER_SED) -e "s|\@target\@|$(DUMP_INDEX_TARGET)|g" < $(srcdir)/$(WRAPPER_IN) > $@
672         chmod +x $(DUMP_INDEX_WRAPPER)
674 DUMP_INDEX_CSFLAGS = \
675         -target:exe
677 DUMP_INDEX_CSFILES = \
678         $(srcdir)/DumpIndex.cs
680 DUMP_INDEX_LOCAL_ASSEMBLIES = \
681         ../Util/Util.dll                        \
682         ../BeagleClient/Beagle.dll              \
683         ./$(PLUGIN_TARGET)                      \
684         ./$(DAEMON_DLL_TARGET)
686 DUMP_INDEX_ASSEMBLIES = \
687         $(BEAGLED_LIBS)                         \
688         $(SHARPZIPLIB_LIBS)                     \
689         $(DAEMON_LOCAL_ASSEMBLIES:%=-r:%)       \
690         -r:Mono.Posix                           \
691         -r:System.Runtime.Remoting
693 $(DUMP_INDEX_TARGET): $(DUMP_INDEX_CSFILES) $(DUMP_INDEX_LOCAL_ASSEMBLIES)
694         $(CSC) -out:$@ $(DUMP_INDEX_CSFLAGS) $(DUMP_INDEX_CSFILES) $(DUMP_INDEX_ASSEMBLIES)
696 ############################################################
698 INDEX_WEB_CONTENT_WRAPPER = beagle-index-url
699 INDEX_WEB_CONTENT_TARGET = IndexWebContent.exe
701 $(INDEX_WEB_CONTENT_WRAPPER): $(srcdir)/$(WRAPPER_IN)
702         $(WRAPPER_SED) -e "s|\@target\@|$(INDEX_WEB_CONTENT_TARGET)|g" < $(srcdir)/$(WRAPPER_IN) > $@
703         chmod +x $(INDEX_WEB_CONTENT_WRAPPER)
706 INDEX_WEB_CONTENT_CSFLAGS = \
707         -target:exe
709 INDEX_WEB_CONTENT_CSFILES = \
710         $(srcdir)/IndexWebContent.cs
712 INDEX_WEB_CONTENT_LOCAL_ASSEMBLIES = \
713         ../Util/Util.dll                        \
714         ../BeagleClient/Beagle.dll              \
715         ./$(PLUGIN_TARGET)                      \
716         ./$(DAEMON_DLL_TARGET)
718 INDEX_WEB_CONTENT_ASSEMBLIES =  \
719         $(INDEX_WEB_CONTENT_LOCAL_ASSEMBLIES:%=-r:%)
721 $(INDEX_WEB_CONTENT_TARGET): $(INDEX_WEB_CONTENT_CSFILES) $(INDEX_WEB_CONTENT_LOCAL_ASSEMBLIES)
722         $(CSC) -out:$@ $(INDEX_WEB_CONTENT_CSFLAGS) $(INDEX_WEB_CONTENT_CSFILES) $(INDEX_WEB_CONTENT_ASSEMBLIES)
724 ############################################################
726 MASTER_DELETE_WRAPPER = beagle-master-delete-button
727 MASTER_DELETE_TARGET = MasterDelete.exe
729 $(MASTER_DELETE_WRAPPER): $(srcdir)/$(WRAPPER_IN)
730         $(WRAPPER_SED) -e "s|\@target\@|$(MASTER_DELETE_TARGET)|g" < $(srcdir)/$(WRAPPER_IN) > $@
731         chmod +x $(MASTER_DELETE_WRAPPER)
734 MASTER_DELETE_CSFLAGS = \
735         -target:exe
737 MASTER_DELETE_CSFILES = \
738         $(srcdir)/MasterDelete.cs
740 MASTER_DELETE_LOCAL_ASSEMBLIES = \
741         ../Util/Util.dll                        \
742         ../BeagleClient/Beagle.dll              \
743         ./$(PLUGIN_TARGET)                      \
744         ./$(DAEMON_DLL_TARGET)
746 MASTER_DELETE_ASSEMBLIES = \
747         $(BEAGLED_LIBS)                         \
748         $(SHARPZIPLIB_LIBS)                     \
749         $(DAEMON_LOCAL_ASSEMBLIES:%=-r:%)       \
750         -r:Mono.Posix                           \
751         -r:System.Runtime.Remoting
753 $(MASTER_DELETE_TARGET): $(MASTER_DELETE_CSFILES) $(MASTER_DELETE_LOCAL_ASSEMBLIES)
754         $(CSC) -out:$@ $(MASTER_DELETE_CSFLAGS) $(MASTER_DELETE_CSFILES) $(MASTER_DELETE_ASSEMBLIES)
756 ############################################################
758 SNIPPET_TEST_WRAPPER = beagle-snippet-test
759 SNIPPET_TEST_TARGET = SnippetTest.exe
761 $(SNIPPET_TEST_WRAPPER): $(srcdir)/$(WRAPPER_IN)
762         $(WRAPPER_SED) -e "s|\@target\@|$(SNIPPET_TEST_TARGET)|g" < $(srcdir)/$(WRAPPER_IN) > $@
763         chmod +x $(SNIPPET_TEST_WRAPPER)
765 SNIPPET_TEST_CSFLAGS = \
766         -target:exe
768 SNIPPET_TEST_CSFILES = \
769         $(srcdir)/SnippetTest.cs
771 SNIPPET_TEST_LOCAL_ASSEMBLIES = \
772         ../Util/Util.dll                        \
773         ../BeagleClient/Beagle.dll              \
774         ./$(PLUGIN_TARGET)                      \
775         ./$(DAEMON_DLL_TARGET)
777 SNIPPET_TEST_ASSEMBLIES = \
778         $(BEAGLED_LIBS)                         \
779         $(SHARPZIPLIB_LIBS)                     \
780         $(DAEMON_LOCAL_ASSEMBLIES:%=-r:%)       \
781         -r:Mono.Posix                           \
782         -r:System.Runtime.Remoting
784 $(SNIPPET_TEST_TARGET): $(SNIPPET_TEST_CSFILES) $(SNIPPET_TEST_LOCAL_ASSEMBLIES)
785         $(CSC) -out:$@ $(SNIPPET_TEST_CSFLAGS) $(SNIPPET_TEST_CSFILES) $(SNIPPET_TEST_ASSEMBLIES)
787 ############################################################
789 TERM_STATS_WRAPPER = beagle-term-stats
790 TERM_STATS_TARGET = TermStatsTool.exe
792 $(TERM_STATS_WRAPPER): $(srcdir)/$(WRAPPER_IN)
793         $(WRAPPER_SED) -e "s|\@target\@|$(TERM_STATS_TARGET)|g" < $(srcdir)/$(WRAPPER_IN) > $@
794         chmod +x $(TERM_STATS_WRAPPER)
796 TERM_STATS_CSFLAGS = \
797         -target:exe
799 TERM_STATS_CSFILES = \
800         $(srcdir)/TermStatsTool.cs
802 TERM_STATS_LOCAL_ASSEMBLIES =   \
803         ../Util/Util.dll                        \
804         ../BeagleClient/Beagle.dll              \
805         ./$(PLUGIN_TARGET)                      \
806         ./$(DAEMON_DLL_TARGET)
808 TERM_STATS_ASSEMBLIES = \
809         $(BEAGLED_LIBS)                         \
810         $(SHARPZIPLIB_LIBS)                     \
811         $(DAEMON_LOCAL_ASSEMBLIES:%=-r:%)       \
812         -r:Mono.Posix                           \
813         -r:System.Runtime.Remoting
815 $(TERM_STATS_TARGET): $(TERM_STATS_CSFILES) $(TERM_STATS_LOCAL_ASSEMBLIES)
816         $(CSC) -out:$@ $(TERM_STATS_CSFLAGS) $(TERM_STATS_CSFILES) $(TERM_STATS_ASSEMBLIES)
818 ############################################################
820 NAME_INDEX_WRAPPER = beagle-name-index
821 NAME_INDEX_TARGET = NameIndexTool.exe
823 $(NAME_INDEX_WRAPPER): $(srcdir)/$(WRAPPER_IN)
824         $(WRAPPER_SED) -e "s|\@target\@|$(NAME_INDEX_TARGET)|g" < $(srcdir)/$(WRAPPER_IN) > $@
825         chmod +x $(NAME_INDEX_WRAPPER)
827 NAME_INDEX_CSFLAGS = \
828         -target:exe
830 NAME_INDEX_CSFILES = \
831         $(srcdir)/NameIndexTool.cs
833 NAME_INDEX_LOCAL_ASSEMBLIES =   \
834         ../Util/Util.dll                        \
835         ../BeagleClient/Beagle.dll              \
836         ./$(PLUGIN_TARGET)                      \
837         ./$(DAEMON_DLL_TARGET)
839 NAME_INDEX_ASSEMBLIES = \
840         $(BEAGLED_LIBS)                         \
841         $(SHARPZIPLIB_LIBS)                     \
842         $(DAEMON_LOCAL_ASSEMBLIES:%=-r:%)       \
843         -r:Mono.Posix                           \
844         -r:System.Runtime.Remoting
846 $(NAME_INDEX_TARGET): $(NAME_INDEX_CSFILES) $(NAME_INDEX_LOCAL_ASSEMBLIES)
847         $(CSC) -out:$@ $(NAME_INDEX_CSFLAGS) $(NAME_INDEX_CSFILES) $(NAME_INDEX_ASSEMBLIES)
849 ############################################################
851 FS_SANITY_CHECK_WRAPPER = beagle-file-system-sanity-check
852 FS_SANITY_CHECK_TARGET = SanityCheckTool.exe
854 $(FS_SANITY_CHECK_WRAPPER): $(srcdir)/$(WRAPPER_IN)
855         $(WRAPPER_SED) -e "s|\@target\@|$(FS_SANITY_CHECK_TARGET)|g" < $(srcdir)/$(WRAPPER_IN) > $@
856         chmod +x $(FS_SANITY_CHECK_WRAPPER)
858 FS_SANITY_CHECK_CSFLAGS = \
859         -target:exe
861 FS_SANITY_CHECK_CSFILES = \
862         $(srcdir)/SanityCheckTool.cs
864 FS_SANITY_CHECK_LOCAL_ASSEMBLIES = \
865         ../Util/Util.dll                        \
866         ../BeagleClient/Beagle.dll              \
867         ./$(PLUGIN_TARGET)                      \
868         ./$(DAEMON_DLL_TARGET)
870 FS_SANITY_CHECK_ASSEMBLIES = \
871         $(BEAGLED_LIBS)                         \
872         $(SHARPZIPLIB_LIBS)                     \
873         $(DAEMON_LOCAL_ASSEMBLIES:%=-r:%)       \
874         -r:Mono.Posix                           \
875         -r:System.Runtime.Remoting
877 $(FS_SANITY_CHECK_TARGET): $(FS_SANITY_CHECK_CSFILES) $(FS_SANITY_CHECK_LOCAL_ASSEMBLIES)
878         $(CSC) -out:$@ $(FS_SANITY_CHECK_CSFLAGS) $(FS_SANITY_CHECK_CSFILES) $(FS_SANITY_CHECK_ASSEMBLIES)
880 ############################################################
882 BUILD_INDEX_WRAPPER = beagle-build-index
883 BUILD_INDEX_TARGET = BuildIndex.exe
885 $(BUILD_INDEX_WRAPPER): $(srcdir)/$(WRAPPER_IN)
886         $(WRAPPER_SED) -e "s|\@target\@|$(BUILD_INDEX_TARGET)|g" < $(srcdir)/$(WRAPPER_IN) > $@
887         chmod +x $(BUILD_INDEX_WRAPPER)
889 BUILD_INDEX_CSFLAGS = \
890         -target:exe
892 BUILD_INDEX_CSFILES = \
893         $(srcdir)/BuildIndex.cs
895 BUILD_INDEX_LOCAL_ASSEMBLIES = \
896         ../Util/Util.dll                        \
897         ../BeagleClient/Beagle.dll              \
898         ./$(PLUGIN_TARGET)                      \
899         ./$(DAEMON_DLL_TARGET)
901 BUILD_INDEX_ASSEMBLIES = \
902         $(BEAGLED_LIBS)                         \
903         $(DAEMON_LOCAL_ASSEMBLIES:%=-r:%)       \
904         -r:Mono.Posix
906 $(BUILD_INDEX_TARGET): $(BUILD_INDEX_CSFILES) $(BUILD_INDEX_LOCAL_ASSEMBLIES)
907         $(CSC) -out:$@ $(BUILD_INDEX_CSFLAGS) $(BUILD_INDEX_CSFILES) $(BUILD_INDEX_ASSEMBLIES)
909 ############################################################
911 MANAGE_INDEX_WRAPPER = beagle-manage-index
912 MANAGE_INDEX_TARGET = ManageIndex.exe
914 $(MANAGE_INDEX_WRAPPER): $(srcdir)/$(WRAPPER_IN)
915         $(WRAPPER_SED) -e "s|\@target\@|$(MANAGE_INDEX_TARGET)|g" < $(srcdir)/$(WRAPPER_IN) > $@
916         chmod +x $(MANAGE_INDEX_WRAPPER)
918 MANAGE_INDEX_CSFLAGS = \
919         -target:exe
921 MANAGE_INDEX_CSFILES = \
922         $(srcdir)/ManageIndex.cs
924 MANAGE_INDEX_LOCAL_ASSEMBLIES = \
925         ../Util/Util.dll                        \
926         ../BeagleClient/Beagle.dll              \
927         ./$(PLUGIN_TARGET)                      \
928         ./$(DAEMON_DLL_TARGET)
930 MANAGE_INDEX_ASSEMBLIES = \
931         $(BEAGLED_LIBS)                         \
932         $(DAEMON_LOCAL_ASSEMBLIES:%=-r:%)       \
933         -r:Mono.Posix
935 $(MANAGE_INDEX_TARGET): $(MANAGE_INDEX_CSFILES) $(MANAGE_INDEX_LOCAL_ASSEMBLIES)
936         $(CSC) -out:$@ $(MANAGE_INDEX_CSFLAGS) $(MANAGE_INDEX_CSFILES) $(MANAGE_INDEX_ASSEMBLIES)
938 ############################################################
940 CRAWL_SYSTEM_IN = beagle-crawl-system.in
941 CRAWL_SYSTEM = beagle-crawl-system
943 $(CRAWL_SYSTEM): $(srcdir)/$(CRAWL_SYSTEM_IN)
944         $(WRAPPER_SEB) -e "s|\@target\@|$(CRAWL_SYSTEM)|g" < $(srcdir)/$(CRAWL_SYSTEM_IN) > $@
945         chmod +x $(CRAWL_SYSTEM)
947 # OK, now back to our regularly scheduled program.  But notice all of the
948 # EXTRA_DIST and CLEANFILES stuff at the bottom of the file.  Yuck.
950 ############################################################
951 ############################################################
952 ############################################################
954 #       $(MASTER_DELETE_TARGET)
956 #       $(FS_SANITY_CHECK_TARGET)
958 ALL_TARGETS =                           \
959         $(PLUGIN_TARGET)                \
960         $(DAEMON_DLL_TARGET)            \
961         $(DAEMON_TARGET)                \
962         $(DAEMON_WRAPPER)               \
963         $(INDEX_HELPER_TARGET)          \
964         $(INDEX_HELPER_WRAPPER)         \
965         $(INDEX_WEB_CONTENT_TARGET)     \
966         $(INDEX_WEB_CONTENT_WRAPPER)    \
967         $(EXTRACT_CONTENT_TARGET)       \
968         $(EXTRACT_CONTENT_WRAPPER)      \
969         $(DUMP_INDEX_TARGET)            \
970         $(SNIPPET_TEST_TARGET)          \
971         $(TERM_STATS_TARGET)            \
972         $(NAME_INDEX_TARGET)            \
973         $(MANAGE_INDEX_TARGET)          \
974         $(MANAGE_INDEX_WRAPPER)         \
975         $(BUILD_INDEX_TARGET)           \
976         $(BUILD_INDEX_WRAPPER)
978 if ENABLE_WEBSERVICES
979 ALL_TARGETS +=                          \
980         $(XSP_TARGET)                   \
981         $(WEBSERVICES_FRONTEND_TARGET)  \
982         $(WEBSERVICES_BACKEND_TARGET)   
983 endif
985 if ENABLE_EVOLUTION
986 ALL_TARGETS +=                          \
987         $(EVO_DLL_TARGET)
988 endif
990 man_MANS =                              \
991         beagled.1                       \
992         beagle-build-index.8            \
993         beagle-manage-index.8
995 all: $(ALL_TARGETS)
997 install-data-local: $(ALL_TARGETS)
998         $(mkinstalldirs) $(DESTDIR)$(bindir)
999         $(mkinstalldirs) $(DESTDIR)$(sbindir)
1000         $(mkinstalldirs) $(DESTDIR)$(pkglibdir)
1001         $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
1002         $(mkinstalldirs) $(DESTDIR)$(BACKENDDIR)
1003 if ENABLE_WEBSERVICES
1004         $(mkinstalldirs) $(DESTDIR)$(XSP_DIR)
1005         $(mkinstalldirs) $(DESTDIR)$(XSPBIN_DIR)
1006 endif
1007 if ENABLE_EVOLUTION
1008         $(INSTALL_DATA) $(EVO_DLL_TARGET) $(EVO_DLL_TARGET).mdb $(DESTDIR)$(BACKENDDIR)
1009 endif
1010         @for i in $(BIN_WRAPPERS); do                                           \
1011                 sed -e "s|\#installed=1|installed=1|" < $$i > $$i.tmp;          \
1012                 echo "$(INSTALL_SCRIPT) $$i.tmp $(DESTDIR)$(bindir)/$$i";       \
1013                 $(INSTALL_SCRIPT) $$i.tmp $(DESTDIR)$(bindir)/$$i || exit 1;    \
1014                 rm -f $$i.tmp;                                                  \
1015         done
1017         @for i in $(SBIN_WRAPPERS); do                                          \
1018                 sed -e "s|\#installed=1|installed=1|" < $$i > $$i.tmp;          \
1019                 echo "$(INSTALL_SCRIPT) $$i.tmp $(DESTDIR)$(sbindir)/$$i";      \
1020                 $(INSTALL_SCRIPT) $$i.tmp $(DESTDIR)$(sbindir)/$$i || exit 1;   \
1021                 rm -f $$i.tmp;                                                  \
1022         done
1024         @sed -e "s|\#installed=1|installed=1|" < $(INDEX_HELPER_WRAPPER) > $(INDEX_HELPER_WRAPPER).tmp
1025         $(INSTALL_SCRIPT) $(INDEX_HELPER_WRAPPER).tmp $(DESTDIR)$(pkglibdir)/$(INDEX_HELPER_WRAPPER)
1026         @rm -f $(INDEX_HELPER_WRAPPER).tmp
1028         $(INSTALL_DATA) $(PLUGIN_TARGET)                 $(DESTDIR)$(pkglibdir)
1029         $(INSTALL_DATA) $(PLUGIN_TARGET).mdb             $(DESTDIR)$(pkglibdir)
1030         $(INSTALL_DATA) $(DAEMON_DLL_TARGET)             $(DESTDIR)$(pkglibdir)
1031         $(INSTALL_DATA) $(DAEMON_DLL_TARGET).mdb         $(DESTDIR)$(pkglibdir)
1032         $(INSTALL_DATA) $(DAEMON_TARGET)                 $(DESTDIR)$(pkglibdir)
1033         $(INSTALL_DATA) $(DAEMON_TARGET).mdb             $(DESTDIR)$(pkglibdir)
1034         $(INSTALL_DATA) $(EXTRACT_CONTENT_TARGET)        $(DESTDIR)$(pkglibdir)
1035         $(INSTALL_DATA) $(EXTRACT_CONTENT_TARGET).mdb    $(DESTDIR)$(pkglibdir)
1036         $(INSTALL_DATA) $(INDEX_WEB_CONTENT_TARGET)      $(DESTDIR)$(pkglibdir)
1037         $(INSTALL_DATA) $(INDEX_WEB_CONTENT_TARGET).mdb  $(DESTDIR)$(pkglibdir)
1038         $(INSTALL_DATA) $(INDEX_HELPER_TARGET)           $(DESTDIR)$(pkglibdir)
1039         $(INSTALL_DATA) $(INDEX_HELPER_TARGET).mdb       $(DESTDIR)$(pkglibdir)
1040         $(INSTALL_DATA) $(BUILD_INDEX_TARGET)            $(DESTDIR)$(pkglibdir)
1041         $(INSTALL_DATA) $(BUILD_INDEX_TARGET).mdb        $(DESTDIR)$(pkglibdir)
1042         $(INSTALL_DATA) $(MANAGE_INDEX_TARGET)           $(DESTDIR)$(pkglibdir)
1043         $(INSTALL_DATA) $(MANAGE_INDEX_TARGET).mdb       $(DESTDIR)$(pkglibdir)
1044 if ENABLE_WEBSERVICES
1045         $(INSTALL_DATA) $(WEBSERVICES_XSP_TARGET) $(DESTDIR)$(pkglibdir)
1046         $(INSTALL_DATA) $(WEBSERVICES_BACKEND_TARGET) $(DESTDIR)$(pkglibdir)
1047         $(INSTALL_DATA) $(WEBSERVICES_FRONTEND_TARGET) $(DESTDIR)$(XSPBIN_DIR)
1048         $(INSTALL_DATA) $(WEBSERVICES_BACKEND_TARGET) $(DESTDIR)$(XSPBIN_DIR)
1049         $(INSTALL_DATA)  $(WEBSERVICES_RESOURCES) $(DESTDIR)$(XSP_DIR)
1050 #       $(INSTALL_DATA) ../Util/Util.dll ../images/Images.dll ../BeagleClient/Beagle.dll ../Tiles/Tiles.dll BeagleDaemonPlugins.dll BeagleDaemonLib.dll $(DESTDIR)$(XSPBIN_DIR)
1052 endif
1054 uninstall-local:
1055 if ENABLE_WEBSERVICES
1056         rm -f $(DESTDIR)$(pkglibdir)/$(WEBSERVICES_BACKEND_TARGET)
1057         rm -f $(DESTDIR)$(pkglibdir)/$(WEBSERVICES_XSP_TARGET)
1058         rm -rf $(DESTDIR)$(XSP_DIR)
1059 endif
1060 if ENABLE_EVOLUTION
1061         rm -f $(DESTDIR)$(BACKENDDIR)/$(EVO_DLL_TARGET)
1062         rm -f $(DESTDIR)$(BACKENDDIR)/$(EVO_DLL_TARGET).mdb
1063 endif
1065         @for i in $(BIN_WRAPPERS); do                           \
1066                 echo "rm -f $(DESTDIR)$(bindir)/$$i";           \
1067                 rm -f $(DESTDIR)$(bindir)/$$i || exit 1;        \
1068         done
1070         @for i in $(SBIN_WRAPPERS); do                          \
1071                 echo "rm -f $(DESTDIR)$(sbindir)/$$i";          \
1072                 rm -f $(DESTDIR)$(sbindir)/$$i || exit 1;       \
1073         done
1075         rm -f $(DESTDIR)$(pkglibdir)/$(PLUGIN_TARGET)
1076         rm -f $(DESTDIR)$(pkglibdir)/$(PLUGIN_TARGET).mdb
1077         rm -f $(DESTDIR)$(pkglibdir)/$(DAEMON_DLL_TARGET)
1078         rm -f $(DESTDIR)$(pkglibdir)/$(DAEMON_DLL_TARGET).mdb
1079         rm -f $(DESTDIR)$(pkglibdir)/$(DAEMON_TARGET)
1080         rm -f $(DESTDIR)$(pkglibdir)/$(DAEMON_TARGET).mdb
1081         rm -f $(DESTDIR)$(pkglibdir)/$(INDEX_HELPER_TARGET)
1082         rm -f $(DESTDIR)$(pkglibdir)/$(INDEX_HELPER_TARGET).mdb
1083         rm -f $(DESTDIR)$(pkglibdir)/$(INDEX_HELPER_WRAPPER)
1084         rm -f $(DESTDIR)$(pkglibdir)/$(INDEX_HELPER_WRAPPER).mdb
1085         rm -f $(DESTDIR)$(pkglibdir)/$(EXTRACT_CONTENT_TARGET)
1086         rm -f $(DESTDIR)$(pkglibdir)/$(EXTRACT_CONTENT_TARGET).mdb
1087         rm -f $(DESTDIR)$(pkglibdir)/$(INDEX_WEB_CONTENT_TARGET)
1088         rm -f $(DESTDIR)$(pkglibdir)/$(INDEX_WEB_CONTENT_TARGET).mdb
1089         rm -f $(DESTDIR)$(pkglibdir)/$(BUILD_INDEX_TARGET)
1090         rm -f $(DESTDIR)$(pkglibdir)/$(BUILD_INDEX_TARGET).mdb
1091         rm -f $(DESTDIR)$(pkglibdir)/$(MANAGE_INDEX_TARGET)
1092         rm -f $(DESTDIR)$(pkglibdir)/$(MANAGE_INDEX_TARGET).mdb
1094 BIN_WRAPPERS = \
1095         $(DAEMON_WRAPPER)               \
1096         $(EXTRACT_CONTENT_WRAPPER)      \
1097         $(INDEX_WEB_CONTENT_WRAPPER)
1099 SBIN_WRAPPERS = \
1100         $(BUILD_INDEX_WRAPPER)          \
1101         $(MANAGE_INDEX_WRAPPER)
1103 #       $(MASTER_DELETE_WRAPPER)
1104 #       $(FS_SANITY_CHECK_WRAPPER)
1106 noinst_SCRIPTS= \
1107         $(DUMP_INDEX_WRAPPER)           \
1108         $(SNIPPET_TEST_WRAPPER)         \
1109         $(TERM_STATS_WRAPPER)           \
1110         $(NAME_INDEX_WRAPPER)           
1112 EXTRA_DIST = \
1113         $(WRAPPER_IN)                           \
1114         $(DAEMON_WRAPPER_IN)                    \
1115         $(INDEX_HELPER_WRAPPER_IN)              \
1116         $(man_MANS)                             \
1117         $(PLUGIN_CSFILES)                       \
1118         $(DAEMON_DLL_CSFILES)                   \
1119         $(DAEMON_CSFILES)                       \
1120         $(EVO_DLL_CSFILES)                      \
1121         $(EXTRACT_CONTENT_CSFILES)              \
1122         $(DUMP_INDEX_CSFILES)                   \
1123         $(INDEX_WEB_CONTENT_CSFILES)            \
1124         $(SNIPPET_TEST_CSFILES)                 \
1125         $(INDEX_HELPER_CSFILES)                 \
1126         $(MASTER_DELETE_CSFILES)                \
1127         $(TERM_STATS_CSFILES)                   \
1128         $(NAME_INDEX_CSFILES)                   \
1129         $(FS_SANITY_CHECK_CSFILES)              \
1130         $(MANAGE_INDEX_CSFILES)                 \
1131         $(BUILD_INDEX_CSFILES)                  \
1132         $(WEBSERVICES_XSP_CSFILES)              \
1133         $(WEBSERVICES_BACKEND_CSFILES)          \
1134         $(WEBSERVICES_FRONTEND_CSFILES)         \
1135         $(WEBSERVICES_RESOURCES_DIST)           \
1136         $(webservicesdir)/WebServiceProxy.cs    \
1137         $(webservicesdir)/NetBeagleHandler.cs   \
1138         $(webservicesdir)/NetBeagleQueryable.cs
1140 CLEANFILES = \
1141         $(PLUGIN_TARGET)                        \
1142         $(PLUGIN_TARGET).mdb                    \
1143         $(DAEMON_DLL_TARGET)                    \
1144         $(DAEMON_DLL_TARGET).mdb                \
1145         $(DAEMON_TARGET)                        \
1146         $(DAEMON_TARGET).mdb                    \
1147         $(DAEMON_WRAPPER)                       \
1148         $(EVO_DLL_TARGET)                       \
1149         $(EVO_DLL_TARGET).mdb                   \
1150         $(INDEX_HELPER_TARGET)                  \
1151         $(INDEX_HELPER_TARGET).mdb              \
1152         $(INDEX_HELPER_WRAPPER)                 \
1153         $(EXTRACT_CONTENT_TARGET)               \
1154         $(EXTRACT_CONTENT_TARGET).mdb           \
1155         $(EXTRACT_CONTENT_WRAPPER)              \
1156         $(DUMP_INDEX_TARGET)                    \
1157         $(DUMP_INDEX_TARGET).mdb                \
1158         $(DUMP_INDEX_WRAPPER)                   \
1159         $(INDEX_WEB_CONTENT_TARGET)             \
1160         $(INDEX_WEB_CONTENT_TARGET).mdb         \
1161         $(INDEX_WEB_CONTENT_WRAPPER)            \
1162         $(MASTER_DELETE_TARGET)                 \
1163         $(MASTER_DELETE_TARGET).mdb             \
1164         $(MASTER_DELETE_WRAPPER)                \
1165         $(SNIPPET_TEST_TARGET)                  \
1166         $(SNIPPET_TEST_TARGET).mdb              \
1167         $(SNIPPET_TEST_WRAPPER)                 \
1168         $(TERM_STATS_TARGET)                    \
1169         $(TERM_STATS_TARGET).mdb                \
1170         $(TERM_STATS_WRAPPER)                   \
1171         $(NAME_INDEX_TARGET)                    \
1172         $(NAME_INDEX_TARGET).mdb                \
1173         $(NAME_INDEX_WRAPPER)                   \
1174         $(FS_SANITY_CHECK_TARGET)               \
1175         $(FS_SANITY_CHECK_TARGET).mdb           \
1176         $(FS_SANITY_CHECK_WRAPPER)              \
1177         $(MANAGE_INDEX_TARGET)                  \
1178         $(MANAGE_INDEX_TARGET).mdb              \
1179         $(MANAGE_INDEX_WRAPPER)                 \
1180         $(BUILD_INDEX_TARGET)                   \
1181         $(BUILD_INDEX_TARGET).mdb               \
1182         $(BUILD_INDEX_WRAPPER)                  \
1183         $(WEBSERVICES_BACKEND_TARGET)           \
1184         $(WEBSERVICES_BACKEND_TARGET).mdb       \
1185         $(WEBSERVICES_FRONTEND_TARGET)          \
1186         $(WEBSERVICES_FRONTEND_TARGET).mdb      \
1187         $(WEBSERVICES_XSP_TARGET)               \
1188         $(WEBSERVICES_XSP_TARGET).mdb