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 (4a108e94d3e2)

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
# vim: set shiftwidth=8 tabstop=8 autoindent noexpandtab copyindent:
# 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/.

DIST_FILES = install.rdf

ifeq ($(MOZ_BUILD_APP),mobile/android)
DIST_FILES += bootstrap.js
endif

# Used in install.rdf
USE_EXTENSION_MANIFEST=1

_DEST_DIR = $(DEPTH)/_tests/reftest

_HARNESS_FILES = \
  $(srcdir)/runreftest.py \
  $(srcdir)/remotereftest.py \
  $(srcdir)/runreftestb2g.py \
  $(srcdir)/b2g_desktop.py \
  $(srcdir)/gaia_lock_screen.js \
  automation.py \
  $(topsrcdir)/testing/mozbase/mozdevice/mozdevice/devicemanager.py \
  $(topsrcdir)/testing/mozbase/mozdevice/mozdevice/devicemanagerADB.py \
  $(topsrcdir)/testing/mozbase/mozdevice/mozdevice/devicemanagerSUT.py \
  $(topsrcdir)/testing/mozbase/mozdevice/mozdevice/droid.py \
  $(topsrcdir)/testing/mozbase/mozdevice/mozdevice/Zeroconf.py \
  $(topsrcdir)/testing/mozbase/moznetwork/moznetwork/moznetwork.py \
  $(topsrcdir)/build/mobile/b2gautomation.py \
  $(topsrcdir)/build/automationutils.py \
  $(topsrcdir)/build/mobile/remoteautomation.py \
  $(topsrcdir)/testing/mochitest/server.js \
  $(topsrcdir)/build/pgo/server-locations.txt \
  $(NULL)

_HARNESS_PP_FILES = \
  b2g_start_script.js \
  $(NULL)
_HARNESS_PP_FILES_PATH = $(_DEST_DIR)
PP_TARGETS += _HARNESS_PP_FILES

include $(topsrcdir)/config/rules.mk

# We're installing to _tests/reftest
TARGET_DEPTH = ../..
include $(topsrcdir)/build/automation-build.mk

$(_DEST_DIR):
	$(NSINSTALL) -D $@

$(_HARNESS_FILES): $(_DEST_DIR)

# copy harness and the reftest extension bits to $(_DEST_DIR)
# This needs to happen after jar.mn handling from rules.mk included above.
# The order of the :: rules ensures that.
libs:: $(_HARNESS_FILES) $(addprefix $(_DEST_DIR)/,$(_HARNESS_PP_FILES))
	$(INSTALL) $(_HARNESS_FILES) $(_DEST_DIR)
	(cd $(DIST)/xpi-stage && tar $(TAR_CREATE_FLAGS) - reftest) | (cd $(_DEST_DIR) && tar -xf -)

PKG_STAGE = $(DIST)/test-stage

# stage harness and tests for packaging
stage-package:
	$(NSINSTALL) -D $(PKG_STAGE)/reftest && $(NSINSTALL) -D $(PKG_STAGE)/reftest/tests
	(cd $(DEPTH)/_tests/reftest/ && tar $(TAR_CREATE_FLAGS) - *) | (cd $(PKG_STAGE)/reftest && tar -xf -)
	@cp $(DEPTH)/mozinfo.json $(PKG_STAGE)/reftest
	$(PYTHON) $(topsrcdir)/layout/tools/reftest/print-manifest-dirs.py \
          $(topsrcdir) \
          $(topsrcdir)/layout/reftests/reftest.list \
          $(topsrcdir)/testing/crashtest/crashtests.list \
          | (cd $(topsrcdir) && xargs tar $(TAR_CREATE_FLAGS) -) \
          | (cd $(PKG_STAGE)/reftest/tests && tar -xf -)