This repository has been archived by the owner on Jan 3, 2019. It is now read-only.
/
Makefile
51 lines (36 loc) · 1.59 KB
/
Makefile
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
# Makefile for compiling, installing and packing F# MonoDevelop plugin on Mono
#
# run 'make' to compile the plugin against the installed version of MonoDevelop detected by ./configure.sh
# run 'make install' to compile and install the plugin against the installed version of MonoDevelop detected by ./configure.sh
# run 'make pack-all' to create a deployment binary packages for the known set of supported MonoDevelop versions
VERSION=6.0.0
MDTOOL = mono '../../build/bin/mdtool.exe'
# (MDVERSION4) can be set to something like (3.0.4, 3.0.4.7) to compile
# against the dependencies/... binaries for a specific version of MonoDevelop. This allows
# us to prepare new editions of the binding for several different versions of MonoDevelop.
MDVERSION4=6.0
MDROOT=../../build
# The default configuration is Release since Roslyn
ifeq ($(config),)
config=Release
endif
.PHONY: all
all: build
build: MonoDevelop.FSharpBinding/MonoDevelop.FSharp.fsproj MonoDevelop.FSharpBinding/FSharpBinding.addin.xml
(xbuild MonoDevelop.FSharp.sln /p:Configuration=$(config))
pack: build
-rm -fr pack/$(config)
@-mkdir -p pack/$(config)
$(MDTOOL) setup pack bin/FSharpBinding.dll -d:pack/$(config)
install: pack
$(MDTOOL) setup install -y pack/$(config)/MonoDevelop.FSharpBinding_$(MDVERSION4).mpack
uninstall:
$(MDTOOL) setup uninstall MonoDevelop.FSharpBinding
release:
$(MAKE) config=Release pack
clean:
-rm -fr bin
-rm -fr pack
-rm -fr MonoDevelop.FSharpBinding/MonoDevelop.FSharp.*.fsproj
-rm -fr MonoDevelop.FSharpBinding/obj
(cd MonoDevelop.FSharp.Gui && xbuild MonoDevelop.FSharp.Gui.csproj /target:Clean)