mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-05 00:25:27 +00:00
158 lines
6.1 KiB
Makefile
158 lines
6.1 KiB
Makefile
# ***** 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 the Mozilla Browser code.
|
|
#
|
|
# The Initial Developer of the Original Code is
|
|
# Benjamin Smedberg <bsmedberg@covad.net>
|
|
# Portions created by the Initial Developer are Copyright (C) 2004
|
|
# the Initial Developer. All Rights Reserved.
|
|
#
|
|
# Contributor(s):
|
|
#
|
|
# 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@
|
|
relativesrcdir = browser/locales
|
|
|
|
include $(DEPTH)/config/autoconf.mk
|
|
|
|
# This makefile uses target-specific variable assignments to override
|
|
# the AB_CD variable when making non-default language JARs and XPIs
|
|
# below. If you don't understand what this means, talk to bsmedberg
|
|
# before altering this makefile.
|
|
|
|
AB_CD = $(MOZ_UI_LOCALE)
|
|
|
|
APP_VERSION := $(shell cat $(srcdir)/../config/version.txt)
|
|
|
|
DEFINES += -DAB_CD=$(AB_CD) -DAPP_VERSION=$(MOZ_APP_VERSION)
|
|
|
|
ifeq (,$(filter-out pref,$(MOZ_EXTENSIONS)))
|
|
DEFINES += -DEXTENSION_PREF
|
|
endif
|
|
|
|
PREF_JS_EXPORTS = $(LOCALE_SRCDIR)/firefox-l10n.js
|
|
|
|
include $(topsrcdir)/config/rules.mk
|
|
|
|
README_FILES = \
|
|
README.txt \
|
|
$(NULL)
|
|
|
|
PROFILE_FILES = \
|
|
bookmarks.html \
|
|
localstore.rdf \
|
|
search.rdf \
|
|
$(NULL)
|
|
|
|
ifeq ($(OS_ARCH),WINNT)
|
|
PROFILE_FILES += win/mimeTypes.rdf
|
|
else
|
|
ifneq (,$(filter mac cocoa,$(MOZ_WIDGET_TOOLKIT)))
|
|
PROFILE_FILES += mac/mimeTypes.rdf
|
|
else
|
|
PROFILE_FILES += unix/mimeTypes.rdf
|
|
endif
|
|
endif
|
|
|
|
PROFILE_CHROME = userChrome-example.css userContent-example.css
|
|
|
|
libs:: $(addprefix $(LOCALE_SRCDIR)/,$(README_FILES))
|
|
$(INSTALL) $^ $(DIST)/bin
|
|
|
|
libs realchrome:: $(addprefix $(LOCALE_SRCDIR)/profile/,$(PROFILE_FILES))
|
|
$(INSTALL) $^ $(DIST)/bin/defaults/profile
|
|
|
|
libs realchrome:: $(addprefix $(LOCALE_SRCDIR)/profile/chrome/,$(PROFILE_CHROME))
|
|
$(INSTALL) $^ $(DIST)/bin/defaults/profile/chrome
|
|
|
|
install:: $(addprefix $(LOCALE_SRCDIR)/profile/,$(PROFILE_FILES))
|
|
$(SYSINSTALL) $(IFLAGS1) $^ $(DESTDIR)$(mozappdir)/defaults/profile
|
|
|
|
install:: $(addprefix $(LOCALE_SRCDIR)/profile/chrome/,$(PROFILE_CHROME))
|
|
$(SYSINSTALL) $(IFLAGS1) $^ $(DESTDIR)$(mozappdir)/defaults/profile/chrome
|
|
|
|
SEARCH_PLUGINS = $(shell cat $(LOCALE_SRCDIR)/searchplugins/list.txt)
|
|
SEARCH_PLUGIN_PREFIX = $(addprefix $(LOCALE_SRCDIR)/searchplugins/,$(SEARCH_PLUGINS))
|
|
|
|
libs realchrome:: $(addsuffix .src,$(SEARCH_PLUGIN_PREFIX)) $(foreach base,$(SEARCH_PLUGIN_PREFIX),$(wildcard $(base).gif)$(wildcard $(base).png))
|
|
$(INSTALL) $^ $(DIST)/bin/searchplugins
|
|
|
|
install:: $(addsuffix .src,$(SEARCH_PLUGIN_PREFIX)) $(foreach base,$(SEARCH_PLUGIN_PREFIX),$(wildcard $(base).gif)$(wildcard $(base).png))
|
|
$(SYSINSTALL) $(IFLAGS1) $^ $(DESTDIR)$(mozappdir)/searchplugins
|
|
|
|
# Let's imagine we wanted to create a language JARfile without registering it
|
|
# the following targets only work with JARed chrome: flat chrome is not supported
|
|
|
|
jar-%: AB_CD = $*
|
|
xpi-%: AB_CD = $*
|
|
|
|
jar-%: %
|
|
@$(PERL) $(topsrcdir)/config/preprocessor.pl $(DEFINES) $(ACDEFINES) \
|
|
-I$(LOCALE_SRCDIR)/defines.inc $(srcdir)/jar.mn | \
|
|
$(PERL) -I$(topsrcdir)/config $(topsrcdir)/config/make-jars.pl \
|
|
$(if $(filter gtk gtk2 xlib,$(MOZ_WIDGET_TOOLKIT)),-x) \
|
|
$(if $(CROSS_COMPILE),-o $(OS_ARCH)) $(_NO_FLOCK) \
|
|
-f jar -d $(DIST)/bin/chrome -s $(srcdir) -t $(topsrcdir) -z $(ZIP) \
|
|
-c $(LOCALE_SRCDIR) \
|
|
-p $(topsrcdir)/config/preprocessor.pl -- \
|
|
"$(DEFINES) $(ACDEFINES)"
|
|
|
|
xpi-%: %
|
|
@$(MAKE) -C ../../toolkit/locales jar-$*
|
|
@$(MAKE) jar-$*
|
|
@$(RM) -rf $(DIST)/install/xpi-$*
|
|
@$(INSTALL) $(DIST)/bin/chrome/$*.jar $(DIST)/install/xpi-$*/chrome
|
|
@$(PERL) $(topsrcdir)/config/preprocessor.pl $(DEFINES) $(ACDEFINES) -I$(call EXPAND_LOCALE_SRCDIR,toolkit/locales)/defines.inc -I$(LOCALE_SRCDIR)/defines.inc $(srcdir)/generic/install.rdf > $(DIST)/install/xpi-$*/install.rdf
|
|
@cd $(DIST)/install/xpi-$*; $(ZIP) -r9D ../firefox-$(MOZ_APP_VERSION).$*.langpack.xpi install.rdf chrome
|
|
|
|
clean-l10n:
|
|
@$(RM) $(DIST)/bin/defaults/pref/firefox-l10n.js
|
|
@$(RM) -r $(DIST)/bin/searchplugins
|
|
@find $(DIST)/bin/chrome -name "??-??.jar" -o -name "???-??.jar" -o -name "??-???.jar" -o -name "??-??" -o -name "???-??" -o -name "??-???" | xargs $(RM) -r dummy
|
|
@$(PERL) -pi -e '$$_ = "" if m~^locale,install,url,jar:resource:/chrome/[a-z]{2,3}-[A-Z]{2,3}\.jar~' $(DIST)/bin/chrome/installed-chrome.txt
|
|
|
|
installers-%: % clean-l10n
|
|
@$(MAKE) -C ../../toolkit/locales AB_CD=$*
|
|
@$(MAKE) AB_CD=$* # build/register the chrome
|
|
ifdef MOZ_USE_OFFICIAL_BRANDING
|
|
@$(MAKE) -C ../../other-licenses/branding/firefox/content locale AB_CD=$*
|
|
else
|
|
@$(MAKE) -C ../base locale AB_CD=$*
|
|
endif
|
|
@$(MAKE) xpi-$* # build the langpack
|
|
|
|
ifneq (,$(filter mac cocoa,$(MOZ_WIDGET_TOOLKIT)))
|
|
@$(MAKE) -C ../app repackage AB_CD=$*
|
|
endif
|
|
@$(MAKE) -C ../installer AB_CD=$* # build the tarball/ZIP
|
|
@$(MAKE) -C ../installer installer AB_CD=$* # build the installer
|
|
|
|
.PHONY: clean-l10n
|