Merge pull request #948 from ermshiperete/bug-xamarin-2394
[mono.git] / mcs / class / Mono.Options / Makefile
1 thisdir = class/Mono.Options
2 SUBDIRS = 
3 include ../../build/rules.make
4
5 LIBRARY = Mono.Options.dll
6 LIBRARY_PACKAGE = none
7
8 NO_INSTALL = yes
9
10 LIB_MCS_FLAGS = /r:$(corlib) /r:System.dll
11 TEST_MCS_FLAGS = /r:Mono.Posix.dll /r:System.dll /r:System.Core.dll
12
13 mono_sourcelibs_DIR  = $(DESTDIR)$(mono_libdir)/mono-source-libs
14 mono_options_DATA = Mono.Options/Options.cs
15
16 include ../../build/library.make
17
18 install-local: install-source
19
20 uninstall-local: uninstall-source
21
22 install-source:
23         -$(MKINSTALLDIRS) $(mono_sourcelibs_DIR)
24         $(INSTALL) -m 644 $(mono_options_DATA) $(mono_sourcelibs_DIR)
25
26 uninstall-source:
27         -rm -f $(mono_options_DIR)/Options.cs
28
29 fixup-docs:
30         for f in `find Documentation/en -name \*.xml` ; do \
31                 sed -i 's/NDesk.Options/Mono.Options/g' $$f ; \
32         done
33
34 DOC_EXAMPLES_OUTPUT = \
35         Documentation/en/examples/bundling.txt \
36         Documentation/en/examples/context.txt \
37         Documentation/en/examples/greet.txt \
38         Documentation/en/examples/localization.txt \
39         Documentation/en/examples/subclass.txt
40
41 $(the_libdir)/.doc-stamp: $(DOC_EXAMPLES_OUTPUT) 
42
43 Documentation/en/examples/Mono.Options.dll: $(the_lib)
44         cp $^ $@
45         -cp $^.mdb $@.mdb
46
47 %.exe: %.cs Documentation/en/examples/Mono.Options.dll
48         $(CSCOMPILE) -debug+ -r:Mono.Posix.dll -r:System.Core.dll -lib:Documentation/en/examples -r:Mono.Options.dll -out:$@ $<
49
50 Documentation/en/examples/locale/es/LC_MESSAGES/localization.mo: Documentation/en/examples/localization-es.po
51         msgfmt $< -o $@
52
53 Documentation/en/examples/localization.exe: Documentation/en/examples/locale/es/LC_MESSAGES/localization.mo
54
55 %.txt: %.in %.exe
56         -rm $@
57         exec 3<$< ; \
58         while read line 0<&3 ; do \
59                 if test -n "$$line" ; then \
60                         echo "$$ $$line" | sed 's#Documentation/en/examples/##' >> $@ ; \
61                         sh -c "$$line" >> $@ 2>&1 ; \
62                 else \
63                         echo "" >> $@ ; \
64                 fi ; \
65         done ; \
66         exec 3>&-;
67
68 EXTRA_DISTFILES = \
69         $(wildcard Documentation/en/examples/*.cs) \
70         $(wildcard Documentation/en/examples/*.in) \
71         $(wildcard Documentation/en/examples/*.po) \
72         $(wildcard Documentation/en/examples/*.txt) \
73         Documentation/en/examples/locale/es/LC_MESSAGES/localization.mo
74
75 CLEAN_FILES = \
76         Documentation/en/examples/Mono.Options.dll* \
77         Documentation/en/examples/*.exe*