-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile
50 lines (39 loc) · 1.42 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
// encoding=utf-8
PRODUCT_NAME=BSLinkConductor
PRODUCT_EXTENSION=plugin
BUILD_PATH=./build
DEPLOYMENT=Release
APP_BUNDLE=$(PRODUCT_NAME).$(PRODUCT_EXTENSION)
APP=$(BUILD_PATH)/$(DEPLOYMENT)/$(APP_BUNDLE)
APP_NAME=$(BUILD_PATH)/$(DEPLOYMENT)/$(PRODUCT_NAME)
INFO_PLIST=Info.plist
VER_CMD=grep -A1 'CFBundleShortVersionString' $(INFO_PLIST) | tail -1 | tr -d "'\t</string>"
VERSION=$(shell $(VER_CMD))
all:
@echo do nothig.
@echo use target tagging
tagging:
@echo "Tagging the $(VERSION) (x) release of BSLinkConductor project."
@echo ""
echo svn copy $(HEAD) $(TAGS_DIR)/release-$(VERSION)
Localizable:
genstrings -o English.lproj $^
(cd English.lproj; ${MAKE} $@;)
genstrings -o Japanese.lproj $^
(cd Japanese.lproj; ${MAKE} $@;)
checkLocalizable:
(cd English.lproj; ${MAKE} $@;)
(cd Japanese.lproj; ${MAKE} $@;)
release: updateRevision
xcodebuild -configuration $(DEPLOYMENT)
$(MAKE) restorInfoPlist
package: release
REV=`git show | head -1 | awk '{printf("%.7s\n", $$2)}'`; \
ditto -ck -rsrc --keepParent $(APP) $(APP_NAME)-$(VERSION)-$${REV}.zip
updateRevision:
if [ ! -f $(INFO_PLIST).bak ] ; then cp $(INFO_PLIST) $(INFO_PLIST).bak ; fi ; \
REV=`git show | head -1 | awk '{printf("%.7s\n", $$2)}'` ; \
sed -e "s/%%%%REVISION%%%%/$${REV}/" $(INFO_PLIST) > $(INFO_PLIST).r ; \
mv -f $(INFO_PLIST).r $(INFO_PLIST) ; \
restorInfoPlist:
if [ -f $(INFO_PLIST).bak ] ; then mv -f $(INFO_PLIST).bak $(INFO_PLIST) ; fi