config/makefiles/functions.mk
author Eric Rahm <erahm@mozilla.com>
Tue, 07 Apr 2020 19:09:47 +0000
changeset 522748 de63e64b9090789daea9ad11d3cd11b4f284afe5
parent 504141 3d4f93bf6b56f12802efafa5255874bb35729859
permissions -rw-r--r--
Bug 1627390 - Add missing includes and namespaces to xpcom/io. r=xpcom-reviewers,sg Differential Revision: https://phabricator.services.mozilla.com/D69656

#
# 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/.

#
# functions.mk
#
# Defines functions that are needed by various Makefiles throughout the build
# system, which are needed before config.mk can be included.
#

# Define an include-at-most-once flag
ifdef INCLUDED_FUNCTIONS_MK
$(error Do not include functions.mk twice!)
endif
INCLUDED_FUNCTIONS_MK = 1

core_abspath = $(error core_abspath is unsupported, use $$(abspath) instead)
core_realpath = $(error core_realpath is unsupported)

core_winabspath = $(error core_winabspath is unsupported)

# Run a named Python build action. The first argument is the name of the build
# action. The second argument are the arguments to pass to the action (space
# delimited arguments). e.g.
#
#   libs::
#       $(call py_action,purge_manifests,_build_manifests/purge/foo.manifest)
py_action = $(PYTHON) -m mozbuild.action.$(1) $(2)

# Same as above, but targeting Python 3. Wherever possible py3_action should be
# used rather than py_action.
py3_action = $(PYTHON3) -m mozbuild.action.$(1) $(2)