# # 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/. USE_RCS_MK := 1 include $(topsrcdir)/config/makefiles/makeutils.mk ifdef MOZ_APP_BASENAME ifdef LIBXUL_SDK APP_INI_DEPS = $(LIBXUL_DIST)/bin/platform.ini else APP_INI_DEPS = $(topsrcdir)/config/milestone.txt endif APP_BUILDID := $(shell cat $(DEPTH)/config/buildid) APP_INI_DEPS += $(DEPTH)/config/buildid DEFINES += -DAPP_BUILDID=$(APP_BUILDID) APP_INI_DEPS += $(DEPTH)/config/autoconf.mk MOZ_SOURCE_STAMP := $(firstword $(shell cd $(topsrcdir)/$(MOZ_BUILD_APP)/.. && hg parent --template='{node}\n' 2>/dev/null)) ifdef MOZ_SOURCE_STAMP DEFINES += -DMOZ_SOURCE_STAMP='$(MOZ_SOURCE_STAMP)' endif ifdef MOZ_INCLUDE_SOURCE_INFO source_repo ?= $(call getSourceRepo,$(topsrcdir)/$(MOZ_BUILD_APP)/..) ifneq (,$(source_repo)) DEFINES += -DMOZ_SOURCE_REPO='$(source_repo)' endif endif endif # NOTE: Keep .gdbinit in the topsrcdir for people who run gdb from the topsrcdir. # needs to be absolute to be distinct from $(topsrcdir)/.gdbinit GDBINIT_OBJDIR_FILES = $(topsrcdir)/.gdbinit GDBINIT_OBJDIR_DEST = $(abspath $(DEPTH)) INSTALL_TARGETS += GDBINIT_OBJDIR # Put a .lldbinit in the bin directory and the objdir, to be picked up # automatically by LLDB when we debug executables using either of those two # directories as the current working directory. The .lldbinit file will # load $(topsrcdir)/.lldbinit, which is where the actual debugging commands are. LLDBINIT_OBJDIR := .lldbinit.in LLDBINIT_OBJDIR_PATH = $(DEPTH) LLDBINIT_OBJDIR_FLAGS += -Dtopsrcdir=$(abspath $(topsrcdir)) PP_TARGETS += LLDBINIT_OBJDIR LLDBINIT_FINAL_TARGET_FILES := $(DEPTH)/.lldbinit LLDBINIT_FINAL_TARGET_DEST = $(FINAL_TARGET) INSTALL_TARGETS += LLDBINIT_FINAL_TARGET # Put the .ycm_extra_conf.py file at the root of the objdir. It is used by # the vim plugin YouCompleteMe. YCM_FILES := $(topsrcdir)/.ycm_extra_conf.py YCM_DEST := $(abspath $(DEPTH)) YCM_TARGET := export INSTALL_TARGETS += YCM ifdef MOZTTDIR # Install the Firefox OS fonts. include $(MOZTTDIR)/fonts.mk MOZTT_DEST = $(FINAL_TARGET)/fonts MOZTT_FILES = $(patsubst external/moztt/%,$(MOZTTDIR)/%,$(filter external/moztt/%,$(subst :, ,$(PRODUCT_COPY_FILES)))) INSTALL_TARGETS += MOZTT endif ifdef MOZ_VALGRIND _VALGRIND_DIR = $(DEPTH)/_valgrind GARBAGE_DIRS += $(_VALGRIND_DIR) _VALGRIND_FILES = \ $(topsrcdir)/build/valgrind/cross-architecture.sup \ $(topsrcdir)/build/valgrind/i386-redhat-linux-gnu.sup \ $(topsrcdir)/build/valgrind/x86_64-redhat-linux-gnu.sup \ $(NULL) _VALGRIND_DEST = $(_VALGRIND_DIR) INSTALL_TARGETS += _VALGRIND endif include $(topsrcdir)/config/rules.mk TARGET_DEPTH = .. include $(srcdir)/automation-build.mk ifdef MOZ_APP_BASENAME $(FINAL_TARGET)/application.ini: $(APP_INI_DEPS) ifdef MOZ_APP_STATIC_INI application.ini.h: appini_header.py $(FINAL_TARGET)/application.ini $(PYTHON) $^ > $@ export:: application.ini.h GARBAGE += application.ini.h endif endif libs:: automation.py