1# $Id$
2
3# This file is part of avahi.
4#
5# avahi is free software; you can redistribute it and/or modify it
6# under the terms of the GNU Lesser General Public License as
7# published by the Free Software Foundation; either version 2 of the
8# License, or (at your option) any later version.
9#
10# avahi is distributed in the hope that it will be useful, but WITHOUT
11# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
12# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
13# License for more details.
14#
15# You should have received a copy of the GNU Lesser General Public
16# License along with avahi; if not, write to the Free Software
17# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
18# USA.
19
20ASSEMBLY = avahi-sharp.dll
21
22CLEANFILES = $(ASSEMBLY) $(ASSEMBLY).mdb $(ASSEMBLY).config
23
24AVAHISOURCES = 				\
25	$(srcdir)/AddressResolver.cs	\
26	$(srcdir)/AssemblyInfo.cs	\
27	$(srcdir)/BrowserBase.cs	\
28	$(srcdir)/Client.cs		\
29	$(srcdir)/ClientException.cs	\
30	$(srcdir)/DomainBrowser.cs	\
31	$(srcdir)/EntryGroup.cs		\
32	$(srcdir)/HostNameResolver.cs	\
33	$(srcdir)/RecordBrowser.cs	\
34	$(srcdir)/ResolverBase.cs	\
35	$(srcdir)/ServiceBrowser.cs	\
36	$(srcdir)/ServiceResolver.cs	\
37	$(srcdir)/ServiceTypeBrowser.cs	\
38	$(srcdir)/Utility.cs
39
40EXTRA_DIST =				\
41	$(AVAHISOURCES)			\
42	$(srcdir)/AvahiTest.cs 		\
43	$(srcdir)/avahi.snk		\
44	$(srcdir)/$(ASSEMBLY).config.in	\
45	$(srcdir)/avahi-sharp-docs.source	\
46	$(srcdir)/en/*.xml		\
47	$(srcdir)/en/*/*.xml		\
48	$(srcdir)/gencfg.sh
49
50$(ASSEMBLY): $(AVAHISOURCES)
51	mcs -keyfile:$(srcdir)/avahi.snk -target:library -out:$@ -debug $(AVAHISOURCES) -r:Mono.Posix
52
53
54$(ASSEMBLY).config: $(ASSEMBLY).config.in
55	$(srcdir)/gencfg.sh $(top_builddir)/avahi-client/libavahi-client.la \
56		$(top_builddir)/avahi-common/libavahi-common.la \
57		$(top_builddir)/avahi-glib/libavahi-glib.la < $< > $@
58
59if HAVE_MONO
60if HAVE_DBUS
61all: $(ASSEMBLY) $(ASSEMBLY).config
62
63if HAVE_MONODOC
64update-docs: $(ASSEMBLY)
65	$(MONODOCER) -assembly:$(ASSEMBLY) -path:en
66
67avahi-sharp-docs.zip: avahi-sharp-docs.tree
68
69avahi-sharp-docs.tree: $(srcdir)/en/*/*
70	$(MDASSEMBLER) --out avahi-sharp-docs --ecma $(srcdir)/en
71
72monodocdir = $(MONODOC_DIR)
73monodoc_DATA = avahi-sharp-docs.zip avahi-sharp-docs.tree avahi-sharp-docs.source
74
75endif
76
77install-data-hook: $(ASSEMBLY)
78	$(GACUTIL) /i $(ASSEMBLY) /package avahi-sharp /gacdir $(libdir) /root $(DESTDIR)$(libdir)
79
80uninstall-hook: $(ASSEMBLY)
81	$(GACUTIL) /u avahi-sharp /package avahi-sharp /gacdir $(libdir) /root $(DESTDIR)$(libdir)
82
83endif
84endif
85