2012-03-31 08:42:20 +04:00
|
|
|
# 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/.
|
|
|
|
|
2012-08-04 22:26:44 +04:00
|
|
|
DEPTH = @DEPTH@
|
2012-03-31 08:42:20 +04:00
|
|
|
topsrcdir = @top_srcdir@
|
|
|
|
srcdir = @srcdir@
|
|
|
|
VPATH = @srcdir@
|
2012-08-04 22:26:44 +04:00
|
|
|
relativesrcdir = @relativesrcdir@
|
2012-03-31 08:42:20 +04:00
|
|
|
|
2012-05-23 20:44:48 +04:00
|
|
|
LIBRARY_NAME = dombindings_test_s
|
|
|
|
LIBXUL_LIBRARY = 1
|
|
|
|
FORCE_STATIC_LIB = 1
|
|
|
|
# Do NOT export this library. We don't actually want our test code
|
|
|
|
# being added to libxul or anything.
|
|
|
|
|
2013-04-10 02:39:44 +04:00
|
|
|
# pymake can't handle descending into dom/bindings several times simultaneously
|
|
|
|
ifdef .PYMAKE
|
|
|
|
.NOTPARALLEL:
|
|
|
|
endif
|
|
|
|
|
2012-03-31 08:42:20 +04:00
|
|
|
include $(DEPTH)/config/autoconf.mk
|
2012-05-23 20:44:48 +04:00
|
|
|
|
|
|
|
# Need this to find all our DOM source files.
|
|
|
|
include $(topsrcdir)/dom/dom-config.mk
|
|
|
|
|
|
|
|
# And need this for $(test_webidl_files)
|
|
|
|
include $(topsrcdir)/dom/webidl/WebIDL.mk
|
|
|
|
|
|
|
|
# But the webidl actually lives in our parent dir
|
|
|
|
test_webidl_files := $(addprefix ../,$(test_webidl_files))
|
|
|
|
|
|
|
|
LOCAL_INCLUDES += \
|
|
|
|
-I$(topsrcdir)/js/xpconnect/src \
|
|
|
|
-I$(topsrcdir)/js/xpconnect/wrappers \
|
2012-06-12 00:04:34 +04:00
|
|
|
-I$(topsrcdir)/dom/bindings \
|
2012-05-23 20:44:48 +04:00
|
|
|
$(NULL)
|
|
|
|
|
2012-03-31 08:42:20 +04:00
|
|
|
|
2012-05-23 20:44:48 +04:00
|
|
|
# If you change bindinggen_dependencies here, change it in
|
|
|
|
# dom/bindings/Makefile.in too. But note that we include ../Makefile
|
|
|
|
# here manually, since $(GLOBAL_DEPS) won't cover it.
|
|
|
|
bindinggen_dependencies := \
|
|
|
|
../BindingGen.py \
|
|
|
|
../Bindings.conf \
|
|
|
|
../Configuration.py \
|
|
|
|
../Codegen.py \
|
2013-05-09 21:05:33 +04:00
|
|
|
../ParserResults.pkl \
|
2012-06-12 02:21:35 +04:00
|
|
|
../parser/WebIDL.py \
|
2012-05-23 20:44:48 +04:00
|
|
|
../Makefile \
|
|
|
|
$(GLOBAL_DEPS) \
|
|
|
|
$(NULL)
|
|
|
|
|
2012-08-04 11:43:57 +04:00
|
|
|
MOCHITEST_FILES := \
|
|
|
|
test_bug773326.html \
|
2012-06-21 11:11:07 +04:00
|
|
|
test_enums.html \
|
2012-06-26 07:37:47 +04:00
|
|
|
test_integers.html \
|
2012-05-02 17:28:17 +04:00
|
|
|
test_interfaceToString.html \
|
2012-03-31 08:42:20 +04:00
|
|
|
test_lookupGetter.html \
|
2012-05-03 08:35:38 +04:00
|
|
|
test_InstanceOf.html \
|
2013-02-22 13:25:24 +04:00
|
|
|
file_InstanceOf.html \
|
2012-05-02 16:49:43 +04:00
|
|
|
test_traceProtos.html \
|
2012-07-04 01:34:56 +04:00
|
|
|
test_forOf.html \
|
|
|
|
forOf_iframe.html \
|
2012-07-27 08:09:09 +04:00
|
|
|
test_sequence_wrapping.html \
|
2012-08-23 05:16:14 +04:00
|
|
|
file_bug775543.html \
|
2012-09-07 19:07:12 +04:00
|
|
|
test_bug788369.html \
|
2012-10-16 22:06:10 +04:00
|
|
|
test_bug742191.html \
|
2012-11-09 11:48:42 +04:00
|
|
|
test_namedNoIndexed.html \
|
2012-12-14 11:32:13 +04:00
|
|
|
test_bug759621.html \
|
2013-01-14 14:29:49 +04:00
|
|
|
test_queryInterface.html \
|
2013-03-05 22:41:24 +04:00
|
|
|
test_exceptionThrowing.html \
|
2013-03-20 20:22:25 +04:00
|
|
|
test_bug852846.html \
|
2013-04-16 21:02:57 +04:00
|
|
|
test_bug862092.html \
|
2013-05-02 22:38:20 +04:00
|
|
|
test_bug560072.html \
|
2013-05-06 06:36:38 +04:00
|
|
|
test_lenientThis.html \
|
2013-06-13 09:20:10 +04:00
|
|
|
test_ByteString.html \
|
2012-08-23 05:16:14 +04:00
|
|
|
$(NULL)
|
|
|
|
|
|
|
|
MOCHITEST_CHROME_FILES = \
|
|
|
|
test_bug775543.html \
|
2012-03-31 08:42:20 +04:00
|
|
|
$(NULL)
|
|
|
|
|
2013-03-10 11:58:21 +04:00
|
|
|
ifdef GNU_CC
|
|
|
|
CXXFLAGS += -Wno-uninitialized
|
|
|
|
endif
|
|
|
|
|
2012-07-26 20:38:03 +04:00
|
|
|
# Include rules.mk before any of our targets so our first target is coming from
|
|
|
|
# rules.mk and running make with no target in this dir does the right thing.
|
|
|
|
include $(topsrcdir)/config/rules.mk
|
|
|
|
|
2013-05-09 21:05:33 +04:00
|
|
|
$(CPPSRCS): .BindingGen
|
2012-05-23 20:44:48 +04:00
|
|
|
|
2013-05-09 21:05:33 +04:00
|
|
|
.BindingGen: $(bindinggen_dependencies) \
|
|
|
|
$(test_webidl_files) \
|
|
|
|
$(NULL)
|
|
|
|
# The export phase in dom/bindings is what actually looks at
|
|
|
|
# dependencies and regenerates things as needed, so just go ahead and
|
|
|
|
# make that phase here. Also make our example interface files. If the
|
|
|
|
# target used here ever changes, change the conditional around
|
|
|
|
# $(CPPSRCS) in dom/bindings/Makefile.in.
|
|
|
|
$(MAKE) -C .. export TestExampleInterface-example TestExampleProxyInterface-example
|
|
|
|
@$(TOUCH) $@
|
2012-11-09 20:24:32 +04:00
|
|
|
|
2012-06-11 03:44:50 +04:00
|
|
|
check::
|
2012-07-03 00:32:42 +04:00
|
|
|
PYTHONDONTWRITEBYTECODE=1 $(PYTHON) $(topsrcdir)/config/pythonpath.py \
|
|
|
|
$(PLY_INCLUDE) $(srcdir)/../parser/runtests.py
|
2012-06-23 00:18:50 +04:00
|
|
|
|
|
|
|
check-interactive:
|
2012-07-03 00:32:42 +04:00
|
|
|
PYTHONDONTWRITEBYTECODE=1 $(PYTHON) $(topsrcdir)/config/pythonpath.py \
|
|
|
|
$(PLY_INCLUDE) $(srcdir)/../parser/runtests.py -q
|
2013-05-09 21:05:33 +04:00
|
|
|
|
|
|
|
# Since we define MOCHITEST_FILES, config/makefiles/mochitest.mk goes ahead and
|
|
|
|
# sets up a rule with libs:: in itm which makes our .DEFAULT_TARGET be "libs".
|
|
|
|
# Then ruls.mk does |.DEFAULT_TARGET ?= default| which leaves it as "libs". So
|
|
|
|
# if we make without an explicit target in this directory, we try to make
|
|
|
|
# "libs", but with a $(MAKECMDGOALS) of empty string. And then rules.mk
|
|
|
|
# helpfully does not include our *.o.pp files, since it includes them only if
|
|
|
|
# filtering some stuff out from $(MAKECMDGOALS) leaves it nonempty. The upshot
|
|
|
|
# is that if some headers change and we run make in this dir without an explicit
|
|
|
|
# target things don't get rebuilt.
|
|
|
|
#
|
|
|
|
# On the other hand, if we set .DEFAULT_TARGET to "default" explicitly here,
|
|
|
|
# then rules.mk will reinvoke make with "export" and "libs" but this time hey
|
|
|
|
# will be passed as explicit targets, show up in $(MAKECMDGOALS), and things
|
|
|
|
# will work. Do this at the end of our Makefile so the rest of the build system
|
|
|
|
# does not get a chance to muck with it after we set it.
|
|
|
|
.DEFAULT_GOAL := default
|
|
|
|
|
|
|
|
# Make sure to add .BindingGen to GARBAGE so we'll rebuild our example
|
|
|
|
# files if someone goes through and deletes GARBAGE all over, which
|
|
|
|
# will delete example files from our parent dir.
|
|
|
|
GARBAGE += \
|
|
|
|
.BindingGen \
|
|
|
|
$(NULL)
|