gecko/build/package/Makefile.in
2012-05-21 12:12:37 +01:00

78 lines
3.3 KiB
Makefile

# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
DEPTH = ../..
topsrcdir = @top_srcdir@
srcdir = @srcdir@
VPATH = @srcdir@
include $(DEPTH)/config/autoconf.mk
# This makefile doesn't do anything by default. Use one of the special targets
# below to stage and build packages.
include $(topsrcdir)/config/rules.mk
ifdef MOZ_DEBUG
APP_NAME = MozillaDebug
else
APP_NAME = Mozilla
endif
# override these variables in special situations
STAGE_DIR = $(DEPTH)/stage$(if $*,/$*)
STAGE_MACAPP_DIR = $(DEPTH)/stage$(if $*,/$*)/$(APP_NAME).app
XPI_FILE = $(DIST)/xpi/$*.xpi
ZIP_FILE = $(DIST)/$*.zip
TGZ_FILE = $(DIST)/$*.tar.gz
BZ2_FILE = $(DIST)/$*.tar.bz2
DMG_FILE = $(DIST)/$*.dmg
PACKAGE_LIST = $(srcdir)/packages.list
PACKAGE_FLAGS =
HANDLERS = xptmerge touch optional preprocess exec
MAPPINGS = dist/bin=bin xpiroot/=
MACAPP_MAPPINGS = dist/bin=Contents/MacOS approot=Contents
dump-packages:
@$(PERL) $(srcdir)/dump-packages.pl -o $(DEPTH) -l $(PACKAGE_LIST) -u $(PACKAGE_FLAGS)
# This rule will stage any one package. If you need to stage multiple packages or
# do ^packages (subtraction packages) use the stage-packages rule and set PACKAGES
# on the command line
stage-%:
$(PERL) $(srcdir)/stage-packages.pl -o $(DEPTH) -l $(PACKAGE_LIST) -s $(STAGE_DIR) $(addprefix -m ,$(MAPPINGS)) $(addprefix -c ,$(HANDLERS)) -d $(PACKAGE_FLAGS) $*
stagemacapp-%:
$(PERL) $(srcdir)/stage-packages.pl -o $(DEPTH) -l $(PACKAGE_LIST) -s $(STAGE_MACAPP_DIR) $(addprefix -m ,$(MACAPP_MAPPINGS)) $(addprefix -c ,$(HANDLERS)) -d $(PACKAGE_FLAGS) $*
makexpi-%:
$(PERL) $(srcdir)/stage-packages.pl -o $(DEPTH) -l $(PACKAGE_LIST) -s $(STAGE_DIR) $(addprefix -m ,$(MAPPINGS)) $(addprefix -c ,$(HANDLERS)) --make-package xpi=$(XPI_FILE) -d $(PACKAGE_FLAGS) $*
makezip-%:
$(PERL) $(srcdir)/stage-packages.pl -o $(DEPTH) -l $(PACKAGE_LIST) -s $(STAGE_DIR) $(addprefix -m ,$(MAPPINGS)) $(addprefix -c ,$(HANDLERS)) --make-package zip=$(ZIP_FILE) -d $(PACKAGE_FLAGS) $*
maketgz-%:
$(PERL) $(srcdir)/stage-packages.pl -o $(DEPTH) -l $(PACKAGE_LIST) -s $(STAGE_DIR) $(addprefix -m ,$(MAPPINGS)) $(addprefix -c ,$(HANDLERS)) --make-package tgz=$(TGZ_FILE) -d $(PACKAGE_FLAGS) $*
makebz2-%:
$(PERL) $(srcdir)/stage-packages.pl -o $(DEPTH) -l $(PACKAGE_LIST) -s $(STAGE_DIR) $(addprefix -m ,$(MAPPINGS)) $(addprefix -c ,$(HANDLERS)) --make-package bz2=$(BZ2_FILE) -d $(PACKAGE_FLAGS) $*
makedmg-%:
$(PERL) $(srcdir)/stage-packages.pl -o $(DEPTH) -l $(PACKAGE_LIST) -s $(STAGE_DIR) $(addprefix -m ,$(MACAPP_MAPPINGS)) $(addprefix -c ,$(HANDLERS)) --make-package dmg=$(DMG_FILE) -d $(PACKAGE_FLAGS) $*
ifndef PACKAGES
stage-packages makexpi-packages:
@echo "Please set PACKAGES on the makefile command line or environment."
else #PACKAGES
stage-packages:
$(PERL) $(srcdir)/stage-packages.pl -o $(DEPTH) -l $(PACKAGE_LIST) -s $(STAGE_DIR) $(addprefix -m ,$(MAPPINGS)) $(apprefix -c ,$(HANDLERS)) $(PACKAGE_FLAGS) $(PACKAGES)
makexpi-packages:
$(PERL) $(srcdir)/stage-packages.pl -o $(DEPTH) -l $(PACKAGE_LIST) -s $(STAGE_DIR) $(addprefix -m ,$(MAPPINGS)) $(apprefix -c ,$(HANDLERS)) --make-package xpi=$(XPI_FILE) -d $(PACKAGE_FLAGS) $(PACKAGES)
endif