134 строки
4.3 KiB
Makefile
134 строки
4.3 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 mozilla.org code.
|
|
#
|
|
# The Initial Developer of the Original Code is
|
|
# Netscape Communications Corporation.
|
|
# Portions created by the Initial Developer are Copyright (C) 1998
|
|
# 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@
|
|
|
|
ifndef .PYMAKE
|
|
ifeq (,$(MAKE_VERSION))
|
|
$(error GNU Make is required)
|
|
endif
|
|
ifeq (,$(filter-out 3.78 3.79,$(MAKE_VERSION)))
|
|
$(error GNU Make 3.80 or higher is required)
|
|
endif
|
|
endif
|
|
|
|
include $(DEPTH)/config/autoconf.mk
|
|
|
|
default::
|
|
|
|
ifdef COMPILE_ENVIRONMENT
|
|
include $(topsrcdir)/$(MOZ_BUILD_APP)/build.mk
|
|
endif
|
|
|
|
include $(topsrcdir)/config/config.mk
|
|
|
|
default alldep all:: $(topsrcdir)/configure config.status
|
|
|
|
ifndef INCLUDED_BRIDGE_MK
|
|
include $(topsrcdir)/bridge/bridge.mk
|
|
endif
|
|
|
|
# workaround Bug 599809 by making these makefiles be generated here
|
|
SUBMAKEFILES += $(addsuffix /Makefile, $(APP_LIBXUL_DIRS) $(APP_LIBXUL_STATICDIRS))
|
|
|
|
$(topsrcdir)/configure: $(topsrcdir)/configure.in
|
|
@echo "STOP! configure.in has changed, and your configure is out of date."
|
|
@echo "Please rerun autoconf and configure."
|
|
@echo "To ignore this message, touch 'configure' in the source directory."
|
|
@exit 1
|
|
|
|
config.status: $(topsrcdir)/configure
|
|
@echo "STOP! configure has changed and needs to be run in this build directory."
|
|
@echo "Please rerun configure."
|
|
@echo "To ignore this message, touch 'config.status' in the build directory."
|
|
@exit 1
|
|
|
|
default export libs clean realclean distclean alldep \
|
|
maybe_clobber_profiledbuild uploadsymbols all:: $(SUBMAKEFILES)
|
|
$(MAKE) -C mozilla $@
|
|
|
|
ifdef ENABLE_TESTS
|
|
check mochitest reftest crashtest xpcshell-tests:: $(SUBMAKEFILES)
|
|
$(MAKE) -C mozilla $@
|
|
|
|
mochitest-% :: $(SUBMAKEFILES)
|
|
$(MAKE) -C mozilla $@
|
|
|
|
check::
|
|
@$(PYTHON) $(topsrcdir)/mozilla/js/src/config/check-sync-dirs.py \
|
|
$(topsrcdir)/build $(topsrcdir)/mozilla/build
|
|
|
|
ifndef MOZ_THUNDERBIRD
|
|
package-tests:: $(SUBMAKEFILES)
|
|
$(MAKE) -C mozilla $@
|
|
endif
|
|
endif
|
|
|
|
# http://bugzilla.mozilla.org/show_bug.cgi?id=450485
|
|
MAKE_SYM_STORE_PATH=dist/bin
|
|
ifeq ($(OS_ARCH),Darwin)
|
|
ifdef UNIVERSAL_BINARY
|
|
MAKE_SYM_STORE_PATH=dist/universal
|
|
endif
|
|
endif
|
|
|
|
include $(topsrcdir)/mozilla/toolkit/mozapps/installer/package-name.mk
|
|
|
|
ifeq ($(OS_ARCH),WINNT)
|
|
# PDB files don't get moved to dist, so we need to scan the whole objdir
|
|
MAKE_SYM_STORE_PATH=..
|
|
endif
|
|
|
|
buildsymbols :: $(SUBMAKEFILES)
|
|
$(MAKE) -C mozilla MAKE_SYM_STORE_PATH=$(MAKE_SYM_STORE_PATH) SYM_STORE_SOURCE_DIRS="$(topsrcdir)/mozilla/extensions/inspector $(topsrcdir)/ldap/sdks $(topsrcdir)/mozilla $(topsrcdir)" $@
|
|
|
|
include $(topsrcdir)/config/rules.mk
|
|
|
|
# defined in (mozilla/.../)package-name.mk
|
|
export MOZ_SOURCE_STAMP
|
|
|
|
DIST_GARBAGE = config.cache config.log config.status config-defs.h \
|
|
dependencies.beos config/autoconf.mk \
|
|
unallmakefiles comm-config.h \
|
|
$(topsrcdir)/.mozconfig.mk $(topsrcdir)/.mozconfig.out
|
|
|
|
distclean::
|
|
cat unallmakefiles | $(XARGS) rm -f
|
|
rm -f $(DIST_GARBAGE)
|