summaryrefslogtreecommitdiff
path: root/Makefile
blob: 2a56f0debf90ca34a1f2d2f76c7da95d70c1649e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
UNAME_S:=$(shell sh -c 'uname -s 2>/dev/null || echo not')
ifeq ($(UNAME_S),Darwin)
	MONOHOME=/Library/Frameworks/Mono.framework/Libraries/mono
endif
ifeq ($(UNAME_S),Linux)
	MONOHOME=/usr/lib/mono
endif

DOTNETPCL=$(MONOHOME)/xbuild-frameworks/.NETPortable/v4.5/Profile/Profile259/
CORE=Xamarin.Forms.Core
COREASSEMBLY=$(CORE)/bin/Release/$(CORE).dll
XAML=Xamarin.Forms.Xaml
XAMLASSEMBLY=$(XAML)/bin/Release/$(XAML).dll
MAPS=Xamarin.Forms.Maps
MAPSASSEMBLY=$(MAPS)/bin/Release/$(MAPS).dll
PAGES=Xamarin.Forms.Pages
PAGESASSEMBLY=$(PAGES)/bin/Release/$(PAGES).dll
MDOC=mono tools/mdoc/mdoc.exe

docs: $(CORE).docs $(MAPS).docs $(XAML).docs $(PAGES).docs

$(CORE).docs: $(COREASSEMBLY)
	$(MDOC) update --delete -o docs/$(CORE) $(COREASSEMBLY) -L $(DOTNETPCL)

$(XAML).docs: $(XAMLASSEMBLY)
	$(MDOC) update --delete -o docs/$(XAML) $(XAMLASSEMBLY) -L $(DOTNETPCL)

$(MAPS).docs: $(MAPSASSEMBLY)
	$(MDOC) update --delete -o docs/$(MAPS) $(MAPSASSEMBLY) -L $(DOTNETPCL)

$(PAGES).docs: $(PAGESASSEMBLY)
	$(MDOC) update --delete -o docs/$(PAGES) $(PAGESASSEMBLY) -L $(DOTNETPCL)

$(COREASSEMBLY): .FORCE
	xbuild /property:Configuration=Release Xamarin.Forms.Core/Xamarin.Forms.Core.csproj

$(XAMLASSEMBLY): .FORCE
	xbuild /property:Configuration=Release Xamarin.Forms.Xaml/Xamarin.Forms.Xaml.csproj

$(MAPSASSEMBLY): .FORCE
	xbuild /property:Configuration=Release Xamarin.Forms.Maps/Xamarin.Forms.Maps.csproj

$(PAGESASSEMBLY): .FORCE
	xbuild /property:Configuration=Release Xamarin.Forms.Pages/Xamarin.Forms.Pages.csproj

htmldocs: docs
	$(MDOC) export-html -o htmldocs docs/*


xmldocs: docs 
	$(MDOC) export-msxdoc -o docs/$(CORE).xml docs/$(CORE)
	$(MDOC) export-msxdoc -o docs/$(XAML).xml docs/$(XAML)
	$(MDOC) export-msxdoc -o docs/$(MAPS).xml docs/$(MAPS)
	$(MDOC) export-msxdoc -o docs/$(PAGES).xml docs/$(PAGES)
.FORCE:

.PHONY: .FORCE $(CORE).docs $(MAPS).docs $(XAML).docs $(PAGES).docs htmldocs xmldocs