Bumping manifests a=b2g-bump
[gecko.git] / b2g / app / Makefile.in
blob46161c68c77e1ce1de686f266193b70e88b2c79e
1 # This Source Code Form is subject to the terms of the Mozilla Public
2 # License, v. 2.0. If a copy of the MPL was not distributed with this
3 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
5 USE_RCS_MK := 1
6 include $(topsrcdir)/config/makefiles/rcs.mk
8 PREF_JS_EXPORTS = $(srcdir)/b2g.js
10 UA_UPDATE_FILE = ua-update.json
12 $(UA_UPDATE_FILE): % : %.in
13 # strip out comment lines, which are not valid in JSON
14 sed -e '/^ *\/\//d' -e '/^ *$$/d' $^ > $@
16 UA_UPDATE_FILES = $(UA_UPDATE_FILE)
17 UA_UPDATE_DEST = $(FINAL_TARGET)
18 INSTALL_TARGETS += UA_UPDATE
20 # Make sure the standalone glue doesn't try to get libxpcom.so from b2g/app.
21 NSDISTMODE = copy
23 include $(topsrcdir)/config/rules.mk
25 APP_ICON = b2g
27 ifeq ($(OS_ARCH),WINNT)
28 REDIT_PATH = $(LIBXUL_DIST)/bin
29 endif
31 APP_BINARY = $(MOZ_APP_NAME)$(BIN_SUFFIX)
33 ifeq (cocoa,$(MOZ_WIDGET_TOOLKIT))
35 APP_NAME = $(MOZ_APP_DISPLAYNAME)
36 APP_VERSION = $(MOZ_APP_VERSION)
38 ifdef MOZ_DEBUG
39 APP_NAME := $(APP_NAME)Debug
40 endif
42 AB_CD = $(MOZ_UI_LOCALE)
44 AB := $(firstword $(subst -, ,$(AB_CD)))
46 clean clobber repackage::
47 rm -rf $(DIST)/$(APP_NAME).app
49 ifdef LIBXUL_SDK
50 APPFILES = Resources
51 else
52 APPFILES = MacOS
53 endif
55 libs-preqs = \
56 $(call mkdir_deps,$(DIST)/$(APP_NAME).app/Contents/MacOS) \
57 $(call mkdir_deps,$(DIST)/$(APP_NAME).app/Contents/Resources/$(AB).lproj) \
58 $(NULL)
60 .PHONY: repackage
61 tools repackage:: $(libs-preqs)
62 rsync -a --exclude '*.in' $(srcdir)/macbuild/Contents $(DIST)/$(APP_NAME).app --exclude English.lproj
63 rsync -a --exclude '*.in' $(srcdir)/macbuild/Contents/Resources/English.lproj/ $(DIST)/$(APP_NAME).app/Contents/Resources/$(AB).lproj
64 sed -e 's/%MOZ_APP_VERSION%/$(MOZ_APP_VERSION)/' -e 's/%MOZ_APP_NAME%/$(MOZ_APP_NAME)/' -e 's/%APP_VERSION%/$(APP_VERSION)/' -e 's/%APP_NAME%/$(APP_NAME)/' -e 's/%APP_BINARY%/$(APP_BINARY)/' $(srcdir)/macbuild/Contents/Info.plist.in > $(DIST)/$(APP_NAME).app/Contents/Info.plist
65 sed -e 's/%APP_VERSION%/$(APP_VERSION)/' -e 's/%APP_NAME%/$(APP_NAME)/' $(srcdir)/macbuild/Contents/Resources/English.lproj/InfoPlist.strings.in | iconv -f UTF-8 -t UTF-16 > $(DIST)/$(APP_NAME).app/Contents/Resources/$(AB).lproj/InfoPlist.strings
66 rsync -a $(DIST)/bin/ $(DIST)/$(APP_NAME).app/Contents/$(APPFILES)
67 mv $(DIST)/$(APP_NAME).app/Contents/$(APPFILES)/dependentlibs.list $(DIST)/$(APP_NAME).app/Contents/Resources
68 $(RM) $(DIST)/$(APP_NAME).app/Contents/$(APPFILES)/mangle $(DIST)/$(APP_NAME).app/Contents/$(APPFILES)/shlibsign
69 ifdef LIBXUL_SDK
70 cp $(LIBXUL_DIST)/bin/xulrunner$(BIN_SUFFIX) $(DIST)/$(APP_NAME).app/Contents/MacOS/$(APP_BINARY)
71 rsync -a --exclude nsinstall --copy-unsafe-links $(LIBXUL_DIST)/XUL.framework $(DIST)/$(APP_NAME).app/Contents/Frameworks
72 else
73 $(RM) $(DIST)/$(APP_NAME).app/Contents/MacOS/$(PROGRAM)
74 rsync -aL $(PROGRAM) $(DIST)/$(APP_NAME).app/Contents/MacOS
75 endif
76 cp -RL $(srcdir)/b2g.icns $(DIST)/$(APP_NAME).app/Contents/Resources/$(MOZ_APP_NAME).icns
77 printf APPLMOZB > $(DIST)/$(APP_NAME).app/Contents/PkgInfo
79 else # MOZ_WIDGET_TOOLKIT != cocoa
81 libs::
82 ifdef LIBXUL_SDK
83 cp $(LIBXUL_DIST)/bin/xulrunner-stub$(BIN_SUFFIX) $(DIST)/bin/$(APP_BINARY)
84 $(NSINSTALL) -D $(DIST)/bin/xulrunner
85 (cd $(LIBXUL_SDK)/bin && tar $(TAR_CREATE_FLAGS) - .) | (cd $(DIST)/bin/xulrunner && tar -xf -)
86 endif
87 $(NSINSTALL) -D $(DIST)/bin/chrome/icons/default
89 # Copy the app icon for b2g-desktop
90 ifeq ($(OS_ARCH),WINNT)
91 cp $(srcdir)/$(APP_ICON).ico $(DIST)/bin/chrome/icons/default/$(APP_ICON).ico
92 $(REDIT_PATH)/redit$(HOST_BIN_SUFFIX) $(DIST)/bin/$(APP_BINARY) $(srcdir)/$(APP_ICON).ico
93 cp $(srcdir)/$(APP_ICON).ico $(DIST)/bin/chrome/icons/default/default.ico
94 else ifneq (gonk,$(MOZ_WIDGET_TOOLKIT))
95 cp $(srcdir)/default.png $(DIST)/bin/chrome/icons/default/default.png
96 endif
98 endif