DXR is a code search and navigation tool aimed at making sense of large projects. It supports full-text and regex searches as well as structural queries.

Mercurial (b6057e17f856)

VCS Links

Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117
# This file is normally included by autoconf.mk, but it is also used
# directly in python/mozbuild/mozbuild/base.py for gmake validation.
# We thus use INCLUDED_AUTOCONF_MK to enable/disable some parts depending
# whether a normal build is happening or whether the check is running.
includedir := $(includedir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
idldir = $(datadir)/idl/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
installdir = $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel-$(MOZ_APP_VERSION)
ifndef TOP_DIST
TOP_DIST = dist
endif
ifneq (,$(filter /%,$(TOP_DIST)))
DIST = $(TOP_DIST)
else
ifeq (.,$(DEPTH))
DIST = $(TOP_DIST)
else
DIST = $(DEPTH)/$(TOP_DIST)
endif
endif

# We do magic with OBJ_SUFFIX in config.mk, the following ensures we don't
# manually use it before config.mk inclusion
_OBJ_SUFFIX := $(OBJ_SUFFIX)
OBJ_SUFFIX = $(error config/config.mk needs to be included before using OBJ_SUFFIX)

ifeq ($(HOST_OS_ARCH),WINNT)
# We only support building with pymake or a non-msys gnu make version
# strictly above 4.0.
ifndef .PYMAKE
ifeq (a,$(firstword a$(subst /, ,$(abspath .))))
$(error MSYS make is not supported)
endif
# 4.0- happens to be greater than 4.0, lower than the mozmake version,
# and lower than 4.0.1 or 4.1, whatever next version of gnu make will
# be released.
ifneq (4.0-,$(firstword $(sort 4.0- $(MAKE_VERSION))))
$(error Make version too old. Only versions strictly greater than 4.0 are supported.)
endif
endif
ifdef INCLUDED_AUTOCONF_MK
ifeq (a,$(firstword a$(subst /, ,$(srcdir))))
$(error MSYS-style srcdir are not supported for Windows builds.)
endif
endif
endif # WINNT

ifdef .PYMAKE
include_deps = $(eval $(if $(2),,-)includedeps $(1))
else
include_deps = $(eval $(if $(2),,-)include $(1))
endif

ifndef INCLUDED_AUTOCONF_MK
default::
else

# Integrate with mozbuild-generated make files. We first verify that no
# variables provided by the automatically generated .mk files are
# present. If they are, this is a violation of the separation of
# responsibility between Makefile.in and mozbuild files.
_MOZBUILD_EXTERNAL_VARIABLES := \
  ANDROID_GENERATED_RESFILES \
  ANDROID_RES_DIRS \
  CMSRCS \
  CMMSRCS \
  CPP_UNIT_TESTS \
  DIRS \
  EXTRA_PP_COMPONENTS \
  EXTRA_PP_JS_MODULES \
  FORCE_SHARED_LIB \
  FORCE_STATIC_LIB \
  FINAL_LIBRARY \
  HOST_CSRCS \
  HOST_CMMSRCS \
  HOST_LIBRARY_NAME \
  HOST_PROGRAM \
  HOST_SIMPLE_PROGRAMS \
  IS_COMPONENT \
  JAR_MANIFEST \
  JAVA_JAR_TARGETS \
  JS_MODULES_PATH \
  LIBRARY_NAME \
  MODULE \
  MSVC_ENABLE_PGO \
  NO_DIST_INSTALL \
  PARALLEL_DIRS \
  PROGRAM \
  RESOURCE_FILES \
  SDK_HEADERS \
  SIMPLE_PROGRAMS \
  TEST_DIRS \
  TIERS \
  TOOL_DIRS \
  XPCSHELL_TESTS \
  XPIDL_MODULE \
  $(NULL)

_DEPRECATED_VARIABLES := \
  ANDROID_RESFILES \
  LIBXUL_LIBRARY \
  MOCHITEST_A11Y_FILES \
  MOCHITEST_BROWSER_FILES \
  MOCHITEST_BROWSER_FILES_PARTS \
  MOCHITEST_CHROME_FILES \
  MOCHITEST_FILES \
  MOCHITEST_FILES_PARTS \
  MOCHITEST_METRO_FILES \
  MOCHITEST_ROBOCOP_FILES \
  SHORT_LIBNAME \
  $(NULL)

# Freeze the values specified by moz.build to catch them if they fail.

$(foreach var,$(_MOZBUILD_EXTERNAL_VARIABLES) $(_DEPRECATED_VARIABLES),$(eval $(var)_FROZEN := '$($(var))'))

endif