1
BUNDLE_VERSION=$(VERSION)
2
1
MAC_APP_DIR=MonoDevelop.app
3
3
MACOS=$(MAC_APP_DIR)/Contents/MacOS
4
4
MAC_APP_LIB_DIR=$(MACOS)/lib/monodevelop
5
5
ADDINS=$(MACOS)/lib/monodevelop/AddIns
6
6
EXTRAS=$(top_srcdir)/../extras
7
7
ARTIFACTS=$(top_srcdir)/../../artifacts
9
# In which commit did the MonoDevelop version change? 00000000 if uncommitted
10
commit_of_last_version_change := $(shell LANG=C git blame $(top_srcdir)/configure.in | grep AC_INIT | sed 's/ .*//')
12
# How many commits have passed since $(-commit-of-last-version-change)?
13
# "0" when commit hash is invalid (e.g. 00000000)
14
num_commits_since_version_change := $(shell LANG=C git rev-list --count $(commit_of_last_version_change)..HEAD)
16
PACKAGE_VERSION_MAJOR=0$(word 1, $(subst ., ,$(VERSION)))
17
PACKAGE_VERSION_MINOR=$(word 2, $(subst ., ,$(VERSION)))
18
PACKAGE_VERSION_REV=0$(word 3, $(subst ., ,$(VERSION)))
19
PACKAGE_VERSION_BUILD=$(num_commits_since_version_change)
20
PACKAGE_UPDATE_ID=$(shell echo $(PACKAGE_VERSION_MAJOR) $(PACKAGE_VERSION_MINOR) $(PACKAGE_VERSION_REV) $(PACKAGE_VERSION_BUILD) | awk '{printf "%d%02d%02d%04d",$$1,$$2,$$3,$$4}')
21
BUNDLE_VERSION=$(shell echo $(PACKAGE_VERSION_MAJOR) $(PACKAGE_VERSION_MINOR) $(PACKAGE_VERSION_REV) $(PACKAGE_VERSION_BUILD) | awk '{printf "%d.%d.%d.%d",$$1,$$2,$$3,$$4}')
9
23
CLEANFILES = render.exe
11
25
EXTRA_DIST = dmg-bg.png DS_Store Info.plist.in make-dmg-bundle.sh render.exe
53
67
mkdir -p $(MAC_APP_DIR)/Contents/MacOS/share/monodevelop
54
68
cp ../../COPYING $(MAC_APP_DIR)/Contents/MacOS/share/monodevelop/COPYING.LGPL2.1
56
sed -e "s/@BUNDLE_VERSION@/$(BUNDLE_VERSION)/" -e "s/@ASSEMBLY_VERSION@/$(ASSEMBLY_VERSION)/" Info.plist.in > $(MAC_APP_DIR)/Contents/Info.plist
70
sed -e "s/@BUNDLE_VERSION@/$(BUNDLE_VERSION)/" -e "s/@ASSEMBLY_VERSION@/$(ASSEMBLY_VERSION)/" -e "s/@APP_NAME@/$(APP_NAME)/" -e "s|@RELEASE_ID@|$(PACKAGE_UPDATE_ID)|" Info.plist.in > $(MAC_APP_DIR)/Contents/Info.plist
57
71
cp ../../theme-icons/Mac/*.icns $(MAC_APP_DIR)/Contents/Resources/
59
73
# copy monodevelop.pc and monodevelop-core-addins.pc to Contents/MacOS/lib/pkgconfig
71
85
@echo "Copying launch scripts into app bundle"
73
cp monostub $(MACOS)/monodevelop
87
cp monostub $(MACOS)/MonoDevelop
74
88
cp monostub $(MACOS)/mdtool
76
90
# Remove addins that don't work on OSX
126
140
pushd ../..; make buildinfo; popd
128
echo "a3140c14-ef90-4019-ae6c-9d93804d6611 $$(cat release-info)" > "$(MACOS)/updateinfo"
142
echo "a3140c14-ef90-4019-ae6c-9d93804d6611 $(PACKAGE_UPDATE_ID)" > "$(MACOS)/updateinfo"
130
echo "Release ID: $$(cat release-info)" > "$(MACOS)/lib/monodevelop/bin/buildinfo"
144
echo "Release ID: $(PACKAGE_UPDATE_ID)" > "$(MACOS)/lib/monodevelop/bin/buildinfo"
131
145
@cat ../bin/buildinfo >> "$(MACOS)/lib/monodevelop/bin/buildinfo"
133
147
# touch the directory so that update dependencies work
134
148
touch MonoDevelop.app
137
@echo "MONODEVELOP RELEASE: $$(cat release-info)"
151
@echo "MONODEVELOP RELEASE: $(PACKAGE_UPDATE_ID)"
138
152
@echo "$$(cat ../../vcrevision)"
139
153
@if test -f missing-stuff; then echo ""; echo "Missing stuff:"; cat missing-stuff; fi