mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-02 07:05:24 +00:00
1d537257e2
The behavior is not entirely idempotent (most notably for buildconfig.html), but this can be improved later if necessary. It is idempotent where it matters. This allows to get rid of config/makefiles/rcs.mk and its uses.
83 lines
2.5 KiB
Makefile
83 lines
2.5 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/.
|
|
|
|
USE_RCS_MK := 1
|
|
include $(topsrcdir)/config/makefiles/makeutils.mk
|
|
|
|
ifdef MOZ_APP_BASENAME
|
|
APP_INI_DEPS = $(topsrcdir)/config/milestone.txt
|
|
|
|
APP_INI_DEPS += $(DEPTH)/config/autoconf.mk
|
|
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 = $(topobjdir)
|
|
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 := $(topobjdir)
|
|
YCM_TARGET := export
|
|
INSTALL_TARGETS += YCM
|
|
|
|
ifdef MOZTTDIR
|
|
# Install the Firefox OS fonts.
|
|
include $(MOZTTDIR)/fonts.mk
|
|
MOZTT_DEST = $(FINAL_TARGET)/fonts
|
|
ifdef MOZ_B2GDROID
|
|
MOZTT_DEST = $(FINAL_TARGET)/res/fonts
|
|
endif
|
|
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
|
|
|