# ***** BEGIN LICENSE BLOCK ***** # Version: MPL 1.1/GPL 2.0/LGPL 2.1 # # The contents of this file are subject to the Mozilla Public License Version # 1.1 (the "License"); you may not use this file except in compliance with # the License. You may obtain a copy of the License at # http://www.mozilla.org/MPL/ # # Software distributed under the License is distributed on an "AS IS" basis, # WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License # for the specific language governing rights and limitations under the # License. # # The Original Code is Mozilla. # # The Initial Developer of the Original Code is # the Mozilla Foundation . # Portions created by the Initial Developer are Copyright (C) 2007 # the Initial Developer. All Rights Reserved. # # Contributor(s): # Mark Finkle # Ben Combee # # Alternatively, the contents of this file may be used under the terms of # either the GNU General Public License Version 2 or later (the "GPL"), or # the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), # in which case the provisions of the GPL or the LGPL are applicable instead # of those above. If you wish to allow use of your version of this file only # under the terms of either the GPL or the LGPL, and not to allow others to # use your version of this file under the terms of the MPL, indicate your # decision by deleting the provisions above and replace them with the notice # and other provisions required by the GPL or the LGPL. If you do not delete # the provisions above, a recipient may use your version of this file under # the terms of any one of the MPL, the GPL or the LGPL. # # ***** END LICENSE BLOCK ***** DEPTH = ../.. topsrcdir = @top_srcdir@ srcdir = @srcdir@ VPATH = @srcdir@ include $(DEPTH)/config/autoconf.mk GRE_MILESTONE = $(shell $(PYTHON) $(topsrcdir)/config/printconfigsetting.py $(LIBXUL_DIST)/bin/platform.ini Build Milestone) GRE_BUILDID = $(shell $(PYTHON) $(topsrcdir)/config/printconfigsetting.py $(LIBXUL_DIST)/bin/platform.ini Build BuildID) ABS_OBJDIR=`cd $(DEPTH); pwd` BASE64_ICON = dist/branding/fennec_maemo_icon26.txt DEFINES += \ -DGRE_MILESTONE=$(GRE_MILESTONE) \ -DGRE_BUILDID=$(GRE_BUILDID) \ -Dinstalldir=$(installdir) \ -DMOZ_APP_NAME=$(MOZ_APP_NAME) \ -DMOZ_APP_DISPLAYNAME=$(MOZ_APP_DISPLAYNAME) \ -DMOZ_APP_VERSION=$(MOZ_APP_VERSION) \ -DABS_OBJDIR=$(ABS_OBJDIR) \ -DBASE64_ICON=$(BASE64_ICON) \ $(NULL) NO_PKG_FILES = \ $(MOZ_APP_NAME)-config \ $(MOZ_APP_NAME)-bin.elf \ regchrome* \ regxpcom* \ xpcshell* \ xpidl* \ xpt_dump* \ xpt_link* \ bloaturls.txt \ run-mozilla.sh \ nsinstall \ $(NULL) ifndef SYSTEM_LIBXUL NO_PKG_FILES += xulrunner endif include $(topsrcdir)/config/rules.mk ifneq (,$(filter mac cocoa,$(MOZ_WIDGET_TOOLKIT))) _BINPATH = /$(_APPNAME)/Contents/Resources endif ifneq (,$(filter mac cocoa,$(MOZ_WIDGET_TOOLKIT))) PACKAGE_XULRUNNER = UNPACKAGE = else PACKAGE_XULRUNNER = package-xulrunner UNPACKAGE = $(LIBXUL_DIST)/xulrunner*$(PKG_SUFFIX) endif include $(topsrcdir)/toolkit/mozapps/installer/packager.mk DEBDESTDIR=debian/$(MOZ_APP_NAME) package-xulrunner: ifndef SYSTEM_LIBXUL @echo "Packaging xulrunner..." @rm -rf $(LIBXUL_DIST)/xulrunner* @$(MAKE) -C $(LIBXUL_DIST)/.. package || echo "Perhaps you're trying to package a prebuilt SDK. See 'https://wiki.mozilla.org/Mobile/Build/Fennec#Build' for more information." @cd $(DIST)/$(MOZ_PKG_DIR); $(UNMAKE_PACKAGE) else @echo "Using system xulrunner..." endif ifeq ($(OS_TARGET),Linux) debian/control: $(srcdir)/debian/control.in $(LIBXUL_DIST)/bin/platform.ini mkdir -p debian $(PYTHON) $(topsrcdir)/config/Preprocessor.py \ $(AUTOMATION_PPARGS) $(DEFINES) $(ACDEFINES) $< > $@ debian/$(MOZ_APP_NAME).desktop: $(srcdir)/debian/$(MOZ_APP_NAME).desktop.in mkdir -p debian $(PYTHON) $(topsrcdir)/config/Preprocessor.py \ $(AUTOMATION_PPARGS) $(DEFINES) $(ACDEFINES) $< > $@ debian/$(MOZ_APP_NAME).links: $(srcdir)/debian/$(MOZ_APP_NAME).links.in mkdir -p debian $(PYTHON) $(topsrcdir)/config/Preprocessor.py \ $(AUTOMATION_PPARGS) $(DEFINES) $(ACDEFINES) $< > $@ debian/$(MOZ_APP_NAME).service: $(srcdir)/debian/$(MOZ_APP_NAME).service.in mkdir -p debian $(PYTHON) $(topsrcdir)/config/Preprocessor.py \ $(AUTOMATION_PPARGS) $(DEFINES) $(ACDEFINES) $< > $@ deb: debian/control debian/$(MOZ_APP_NAME).service debian/$(MOZ_APP_NAME).links debian/$(MOZ_APP_NAME).desktop \ $(DIST)/branding/$(MOZ_APP_NAME)_scalable.png $(DIST)/branding/$(MOZ_APP_NAME)_26x26.png $(DIST)/branding/$(MOZ_APP_NAME)_40x40.png rm -rf $(DEBDESTDIR)/$(installdir)/* $(NSINSTALL) -D $(DEBDESTDIR)/$(installdir) cp -pRL $(DIST)/$(MOZ_APP_NAME)/* $(DEBDESTDIR)/$(installdir) rm -rf $(DEBDESTDIR)/$(installdir)/xulrunner $(NSINSTALL) debian/$(MOZ_APP_NAME).desktop $(DEBDESTDIR)/usr/share/applications/hildon/ $(NSINSTALL) -D $(DEBDESTDIR)/usr/share/dbus-1/services/ cp debian/$(MOZ_APP_NAME).service $(DEBDESTDIR)/usr/share/dbus-1/services/org.mozilla.$(MOZ_APP_NAME).service $(NSINSTALL) -D $(DEBDESTDIR)/usr/share/icons/hicolor/scalable/hildon/ cp $(DIST)/branding/$(MOZ_APP_NAME)_scalable.png $(DEBDESTDIR)/usr/share/icons/hicolor/scalable/hildon/$(MOZ_APP_NAME).png $(NSINSTALL) -D $(DEBDESTDIR)/usr/share/icons/hicolor/26x26/hildon/ cp $(DIST)/branding/$(MOZ_APP_NAME)_26x26.png $(DEBDESTDIR)/usr/share/icons/hicolor/26x26/hildon/$(MOZ_APP_NAME).png $(NSINSTALL) -D $(DEBDESTDIR)/usr/share/icons/hicolor/40x40/hildon/ cp $(DIST)/branding/$(MOZ_APP_NAME)_40x40.png $(DEBDESTDIR)/usr/share/icons/hicolor/40x40/hildon/$(MOZ_APP_NAME).png dh_link; fakeroot dh_fixperms; fakeroot dh_installdeb; dh_shlibdeps; fakeroot dh_gencontrol; fakeroot dh_md5sums; dh_builddeb installer: deb @echo Installer DEB created! endif ifdef MOZ_FASTSTART CABARGS += -faststart endif ifeq ($(OS_ARCH),WINCE) VSINSTALLDIR ?= $(error VSINSTALLDIR not set, must be set to the Visual Studio install directory) UNPACKAGE = $(LIBXUL_DIST)/xulrunner*$(PKG_SUFFIX) installer: stage-package package-xulrunner $(NSINSTALL) -D $(DIST)/$(PKG_PATH) $(NSINSTALL) $(srcdir)/../locales/$(AB_CD)/installer/setup.ini $(DIST) cd $(DIST) && mv $(MOZ_PKG_DIR)/xulrunner/uninstall.exe $(MOZ_PKG_DIR)/ && 7z a $(PKG_PATH)$(PKG_BASENAME).7z $(MOZ_PKG_DIR) setup.ini -x!$(MOZ_PKG_DIR)/xulrunner/xulrunner-stub-installer.sfx && cat $(MOZ_PKG_DIR)/xulrunner/xulrunner-stub-installer.sfx $(PKG_PATH)$(PKG_BASENAME).7z>$(PKG_PATH)$(PKG_BASENAME).exe && rm $(PKG_PATH)$(PKG_BASENAME).7z && rm setup.ini && $(ZIP) -r9D $(PACKAGE) $(MOZ_PKG_DIR) endif DEB_BUILD_ARCH = $(shell dpkg-architecture -qDEB_BUILD_ARCH) # package name comes from mobile/installer/debian/changelog.in DEB_PKG_NAME = $(MOZ_PKG_APPNAME)_$(MOZ_APP_VERSION)_$(DEB_BUILD_ARCH).deb # relative to $(DIST) UPLOAD_EXTRA_FILES += ../mobile/$(DEB_PKG_NAME)