Welcome to mirror list, hosted at ThFree Co, Russian Federation.

Makefile - github.com/mono/monodevelop.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: e648cb3f012799801e35d7d29163079523112bc4 (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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
include main/monodevelop_version

EXTRA_DIST = configure
SPACE := 
SPACE +=  
AOT_DIRECTORIES:=$(subst $(SPACE),:,$(shell find main/build/* -type d))
MONO_AOT:=MONO_PATH=$(AOT_DIRECTORIES):$(MONO_PATH) mono --aot --debug

all: update_submodules all-recursive

update_submodules:
	if test -d ".git"; then \
		git submodule update --init --recursive || exit 1; \
	fi

top_srcdir=.
include $(top_srcdir)/config.make

CONFIG_MAKE=$(top_srcdir)/config.make

%-recursive: $(CONFIG_MAKE)
	@export PKG_CONFIG_PATH="`pwd`/$(top_srcdir)/local-config:$(prefix)/lib/pkgconfig:$(prefix)/share/pkgconfig:$$PKG_CONFIG_PATH"; \
	export MONO_GAC_PREFIX="$(prefix):$$MONO_GAC_PREFIX"; \
	set . $$MAKEFLAGS; final_exit=:; \
	case $$2 in --unix) shift ;; esac; \
	case $$2 in *=*) dk="exit 1" ;; *k*) dk=: ;; *) dk="exit 1" ;; esac; \
	for dir in $(SUBDIRS); do \
		case $$dir in \
		.) $(MAKE) $*-local || { final_exit="exit 1"; $$dk; };;\
		*) (cd $$dir && $(MAKE) $*) || { final_exit="exit 1"; $$dk; };;\
		esac \
	done
	$$final_exit

$(CONFIG_MAKE): $(top_srcdir)/configure
	@if test -e "$(CONFIG_MAKE)"; then exec $(top_srcdir)/configure --prefix=$(prefix); \
	else \
		echo "You must run configure first"; \
		exit 1; \
	fi

clean: clean-recursive
install: install-recursive
uninstall: uninstall-recursive
distcheck: distcheck-recursive

distclean: distclean-recursive
	rm -rf config.make local-config

remove-stale-tarballs:
	rm -rf tarballs

dist: update_submodules remove-stale-tarballs dist-recursive
	mkdir -p tarballs
	for t in $(SUBDIRS); do \
		if test -e $$t/*.tar.gz; then \
			mv -f $$t/*.tar.gz tarballs ;\
		fi \
	done
	for t in `ls tarballs/*.tar.gz`; do \
		gunzip $$t ;\
	done
	for t in `ls tarballs/*.tar`; do \
		bzip2 $$t ;\
	done
	rm -rf specs
	mkdir -p specs
	for t in $(SUBDIRS); do \
		if test -a $$t/*.spec; then \
			cp -f $$t/*.spec specs ;\
		fi \
	done
	@cd tarballs && for tb in `ls external`; do \
		echo Decompressing $$tb; \
		tar xvjf external/$$tb; \
	done
	@rm -rf tarballs/external	
	@echo Decompressing monodevelop-$(PACKAGE_VERSION).tar.bz2
	@cd tarballs && tar xvjf monodevelop-$(PACKAGE_VERSION).tar.bz2
	@cp version.config tarballs/monodevelop-$(PACKAGE_VERSION)
	@rm -f main/build/bin/buildinfo
	@cd main && make buildinfo
	@cp main/build/bin/buildinfo tarballs/monodevelop-$(PACKAGE_VERSION)/
	@echo Generating merged tarball
	@find tarballs/monodevelop-$(PACKAGE_VERSION)/ -type f -a \
		\( -name \*.exe -o \
		-name \*.dll -o \
		-name \*.mdb \) \
		-delete
	@cd tarballs && tar -cjf monodevelop-$(PACKAGE_VERSION).tar.bz2 monodevelop-$(PACKAGE_VERSION)
	@cd tarballs && rm -rf monodevelop-$(PACKAGE_VERSION)

aot:
	@for i in main/build/bin/*.dll; do ($(MONO_AOT) $$i &> /dev/null && echo AOT successful: $$i) || (echo AOT failed: $$i); done
	@for i in main/build/AddIns/*.dll; do ($(MONO_AOT) $$i &> /dev/null && echo AOT successful: $$i) || (echo AOT failed: $$i); done
	@for i in main/build/AddIns/*/*.dll; do ($(MONO_AOT) $$i &> /dev/null && echo AOT successful: $$i) || (echo AOT failed: $$i); done
	@for i in main/build/AddIns/*/*/*.dll; do ($(MONO_AOT) $$i &> /dev/null && echo AOT successful: $$i) || (echo AOT failed: $$i); done

run:
	cd main && $(MAKE) run

run-boehm:
	cd main && $(MAKE) run-boehm

run-sgen:
	cd main && $(MAKE) run-sgen

run-gdb:
	cd main && $(MAKE) run-gdb

test:
	cd main && $(MAKE) test assembly=$(assembly)

check-addins:
	cd main && $(MAKE) check-addins

app-dir:
	cd main && $(MAKE) app-dir

reset-versions: reset-all
check-versions: check-all

reset-%:
	@./version-checks --reset $*

check-%:
	@./version-checks --check $*