aboutsummaryrefslogtreecommitdiffstats
path: root/tools/node_modules/expresso/deps/jscoverage/js/Makefile.ref
diff options
context:
space:
mode:
Diffstat (limited to 'tools/node_modules/expresso/deps/jscoverage/js/Makefile.ref')
-rw-r--r--tools/node_modules/expresso/deps/jscoverage/js/Makefile.ref483
1 files changed, 483 insertions, 0 deletions
diff --git a/tools/node_modules/expresso/deps/jscoverage/js/Makefile.ref b/tools/node_modules/expresso/deps/jscoverage/js/Makefile.ref
new file mode 100644
index 0000000..97803e9
--- /dev/null
+++ b/tools/node_modules/expresso/deps/jscoverage/js/Makefile.ref
@@ -0,0 +1,483 @@
+# -*- Mode: makefile -*-
+# vim: ft=make
+#
+# ***** BEGIN LICENSE BLOCK *****
+# Version: MPL 1.1/GPL 2.0/LGPL 2.1
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+# http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# The Original Code is Mozilla Communicator client code, released
+# March 31, 1998.
+#
+# The Initial Developer of the Original Code is
+# Netscape Communications Corporation.
+# Portions created by the Initial Developer are Copyright (C) 1998
+# the Initial Developer. All Rights Reserved.
+#
+# Contributor(s):
+# Michael Ang <mang@subcarrier.org>
+# Kevin Buhr <buhr@stat.wisc.edu>
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either of the GNU General Public License Version 2 or later (the "GPL"),
+# or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+# in which case the provisions of the GPL or the LGPL are applicable instead
+# of those above. If you wish to allow use of your version of this file only
+# under the terms of either the GPL or the LGPL, and not to allow others to
+# use your version of this file under the terms of the MPL, indicate your
+# decision by deleting the provisions above and replace them with the notice
+# and other provisions required by the GPL or the LGPL. If you do not delete
+# the provisions above, a recipient may use your version of this file under
+# the terms of any one of the MPL, the GPL or the LGPL.
+#
+# ***** END LICENSE BLOCK *****
+
+#
+# JSRef GNUmake makefile.
+#
+# Note: dependency rules are missing for some files (some
+# .h, all .msg, etc.) Re-make clean if in doubt.
+#
+
+
+DEPTH = .
+
+include config.mk
+
+#NS_USE_NATIVE = 1
+
+ifndef NANOJIT_ARCH
+$(warning NANOJIT_ARCH not defined in config/$(OS_CONFIG).mk, JIT disabled)
+else
+ifdef DISABLE_JIT
+$(warning disabling JIT per build specification)
+else
+ENABLE_JIT=1
+endif
+endif
+
+ifdef ENABLE_JIT
+DEFINES += -DJS_TRACER
+DEFINES += -DFEATURE_NANOJIT
+INCLUDES += -Inanojit
+endif
+
+#ifndef BUILD_OPT
+#DEFINES += -Ivprof
+#endif
+
+ifdef NARCISSUS
+DEFINES += -DNARCISSUS
+endif
+
+# Look in OBJDIR to find jsautocfg.h, jsautokw.h, and js-config.h
+INCLUDES += -I. -I$(OBJDIR)
+
+ifdef JS_THREADSAFE
+DEFINES += -DJS_THREADSAFE
+INCLUDES += -I$(DIST)/include/nspr
+ifdef USE_MSVC
+OTHER_LIBS += $(DIST)/lib/libnspr$(NSPR_LIBSUFFIX).lib
+else
+OTHER_LIBS += -L$(DIST)/lib -lnspr$(NSPR_LIBSUFFIX)
+endif
+endif
+
+ifdef JS_NO_THIN_LOCKS
+DEFINES += -DJS_USE_ONLY_NSPR_LOCKS
+endif
+
+ifdef JS_HAS_FILE_OBJECT
+DEFINES += -DJS_HAS_FILE_OBJECT
+endif
+
+ifdef JS_GC_ZEAL
+DEFINES += -DJS_GC_ZEAL
+endif
+
+#
+# XCFLAGS may be set in the environment or on the gmake command line
+#
+#CFLAGS += -DDEBUG -DDEBUG_brendan -DJS_ARENAMETER -DJS_HASHMETER -DJS_DUMP_PROPTREE_STATS -DJS_DUMP_SCOPE_METERS -DJS_SCOPE_DEPTH_METER -DJS_BASIC_STATS
+CFLAGS += $(OS_CFLAGS) $(DEFINES) $(INCLUDES) $(XCFLAGS)
+
+LDFLAGS = $(XLDFLAGS)
+LDFLAGS += $(OS_LDFLAGS)
+
+ifdef MOZ_SHARK
+DEFINES += -DMOZ_SHARK
+CFLAGS += -F/System/Library/PrivateFrameworks
+LDFLAGS += -F/System/Library/PrivateFrameworks -framework CHUD
+endif
+ifdef MOZ_CALLGRIND
+DEFINES += -DMOZ_CALLGRIND
+endif
+ifdef MOZ_VTUNE
+DEFINES += -DMOZ_VTUNE
+CXXFLAGS += -IC:/Program\ Files/Intel/VTune/Analyzer/Include
+OTHER_LIBS += C:/Program\ Files/Intel/VTune/Analyzer/Lib/VtuneApi.lib
+endif
+
+ifndef NO_LIBM
+LDFLAGS += -lm
+endif
+
+# Prevent floating point errors caused by VC++ optimizations
+ifeq ($(OS_ARCH),WINNT)
+_MSC_VER = $(shell $(CXX) 2>&1 | sed -n 's/.*Compiler Version \([0-9]*\)\.\([0-9]*\).*/\1\2/p')
+ifeq (,$(filter-out 1200 1300 1310,$(_MSC_VER)))
+CFLAGS += -Op
+else
+CFLAGS += -fp:precise
+endif
+endif # WINNT
+
+#
+# Server-related changes :
+#
+ifdef NES40
+DEFINES += -DNES40
+endif
+
+#
+# Line editing support.
+# Define JS_READLINE or JS_EDITLINE to enable line editing in the
+# js command-line interpreter.
+#
+ifdef JS_READLINE
+# For those platforms with the readline library installed.
+DEFINES += -DEDITLINE
+PROG_LIBS += -lreadline -ltermcap
+else
+ifdef JS_EDITLINE
+# Use the editline library, built locally.
+PREDIRS += editline
+DEFINES += -DEDITLINE
+PROG_LIBS += $(OBJDIR)/editline/libedit.a
+endif
+endif
+
+# For purify
+PURE_CFLAGS = -DXP_UNIX $(OPTIMIZER) $(PURE_OS_CFLAGS) $(DEFINES) \
+ $(INCLUDES) $(XCFLAGS)
+
+#
+# JS file lists
+#
+JS_HFILES = \
+ jsarray.h \
+ jsatom.h \
+ jsbool.h \
+ jscntxt.h \
+ jsdate.h \
+ jsemit.h \
+ jsexn.h \
+ jsfun.h \
+ jsgc.h \
+ jsinterp.h \
+ jsiter.h \
+ jslibmath.h \
+ jslock.h \
+ jsmath.h \
+ jsnum.h \
+ jsobj.h \
+ json.h \
+ jsopcode.h \
+ jsparse.h \
+ jsarena.h \
+ jsclist.h \
+ jsdhash.h \
+ jsdtoa.h \
+ jshash.h \
+ jslong.h \
+ jstypes.h \
+ jsprvtd.h \
+ jspubtd.h \
+ jsregexp.h \
+ jsscan.h \
+ jsscope.h \
+ jsscript.h \
+ jsstr.h \
+ jsversion.h \
+ jsxdrapi.h \
+ jsxml.h \
+ $(NULL)
+
+ifdef ENABLE_JIT
+JS_HFILES += \
+ jstracer.h \
+ nanojit/Assembler.h \
+ nanojit/LIR.h \
+ nanojit/Native$(NANOJIT_ARCH).h \
+ nanojit/avmplus.h \
+ nanojit/vm_fops.h \
+ nanojit/Fragmento.h \
+ nanojit/Native.h \
+ nanojit/RegAlloc.h \
+ nanojit/nanojit.h \
+ nanojit/TraceTreeDrawer.h \
+ $(NULL)
+endif
+
+ifndef BUILD_OPT
+#JS_HFILES += \
+# vprof/vprof.h \
+# $(NULL)
+endif
+
+API_HFILES = \
+ jsapi.h \
+ jsdbgapi.h \
+ $(NULL)
+
+OTHER_HFILES = \
+ jsbit.h \
+ jscompat.h \
+ jscpucfg.h \
+ jsotypes.h \
+ jsstddef.h \
+ prmjtime.h \
+ resource.h \
+ jsopcode.tbl \
+ jsproto.tbl \
+ js.msg \
+ jsshell.msg \
+ jskeyword.tbl \
+ $(NULL)
+
+ifdef ENABLE_JIT
+OTHER_HFILES += builtins.tbl
+endif
+
+ifndef PREBUILT_CPUCFG
+OTHER_HFILES += $(OBJDIR)/jsautocfg.h
+endif
+OTHER_HFILES += $(OBJDIR)/jsautokw.h $(OBJDIR)/js-config.h
+
+HFILES = $(JS_HFILES) $(API_HFILES) $(OTHER_HFILES)
+
+JS_CPPFILES = \
+ jsapi.cpp \
+ jsarena.cpp \
+ jsarray.cpp \
+ jsatom.cpp \
+ jsbool.cpp \
+ jscntxt.cpp \
+ jsdate.cpp \
+ jsdbgapi.cpp \
+ jsdhash.cpp \
+ jsdtoa.cpp \
+ jsemit.cpp \
+ jsexn.cpp \
+ jsfun.cpp \
+ jsgc.cpp \
+ jshash.cpp \
+ jsinterp.cpp \
+ jsinvoke.cpp \
+ jsiter.cpp \
+ jslock.cpp \
+ jslog2.cpp \
+ jslong.cpp \
+ jsmath.cpp \
+ jsnum.cpp \
+ jsobj.cpp \
+ json.cpp \
+ jsopcode.cpp \
+ jsparse.cpp \
+ jsprf.cpp \
+ jsregexp.cpp \
+ jsscan.cpp \
+ jsscope.cpp \
+ jsscript.cpp \
+ jsstr.cpp \
+ jsutil.cpp \
+ jsxdrapi.cpp \
+ jsxml.cpp \
+ prmjtime.cpp \
+ $(NULL)
+
+ifdef ENABLE_JIT
+JS_CPPFILES += \
+ jsbuiltins.cpp \
+ jstracer.cpp \
+ nanojit/Assembler.cpp \
+ nanojit/Fragmento.cpp \
+ nanojit/LIR.cpp \
+ nanojit/Native$(NANOJIT_ARCH).cpp \
+ nanojit/RegAlloc.cpp \
+ nanojit/avmplus.cpp \
+ $(NULL)
+
+ifdef DEBUG
+JS_CPPFILES += nanojit/TraceTreeDrawer.cpp
+endif
+endif
+
+ifndef BUILD_OPT
+#JS_CPPFILES += \
+# vprof/vprof.cpp \
+# $(NULL)
+endif
+
+ifdef JS_LIVECONNECT
+DIRS += liveconnect
+endif
+
+ifdef JS_HAS_FILE_OBJECT
+JS_CPPFILES += jsfile.cpp
+JS_HFILES += jsfile.h
+endif
+
+LIB_CPPFILES = $(JS_CPPFILES)
+LIB_ASFILES := $(wildcard *_$(OS_ARCH).s)
+PROG_CPPFILES = js.cpp
+
+ifdef USE_MSVC
+LIBRARY = $(OBJDIR)/js32.lib
+SHARED_LIBRARY = $(OBJDIR)/js32.dll
+PROGRAM = $(OBJDIR)/js.exe
+else
+LIBRARY = $(OBJDIR)/libjs.a
+SHARED_LIBRARY = $(OBJDIR)/libjs.$(SO_SUFFIX)
+PROGRAM = $(OBJDIR)/js
+endif
+
+include rules.mk
+
+MOZ_DEPTH = ../..
+include jsconfig.mk
+
+nsinstall-target:
+ cd ../../config; $(MAKE) OBJDIR=$(OBJDIR) OBJDIR_NAME=$(OBJDIR)
+
+#
+# Automatic header generation
+#
+
+AUTO_HEADERS = \
+ $(OBJDIR)/jsautokw.h \
+ $(OBJDIR)/jsautooplen.h \
+ $(NULL)
+
+$(OBJDIR)/jsautokw.h: jskeyword.tbl
+
+$(OBJDIR)/jsautooplen.h: jsopcode.tbl
+
+GARBAGE += $(AUTO_HEADERS)
+GARBAGE += $(AUTO_HEADERS:$(OBJDIR)/jsauto%.h=$(OBJDIR)/js%gen$(HOST_BIN_SUFFIX))
+
+ifdef USE_MSVC
+
+GARBAGE += $(AUTO_HEADERS:$(OBJDIR)/jsauto%.h=$(OBJDIR)/js%gen.obj)
+
+$(AUTO_HEADERS): $(OBJDIR)/jsauto%.h: js%gen.cpp
+ @$(MAKE_OBJDIR)
+ $(CXX) -Fo$(OBJDIR)/ -c $(CFLAGS) $(OPTIMIZER) $<
+ link.exe -out:"$(OBJDIR)/js$*gen$(HOST_BIN_SUFFIX)" $(EXE_LINK_FLAGS) $(OBJDIR)/js$*gen.obj
+ $(OBJDIR)/js$*gen$(HOST_BIN_SUFFIX) $@
+else
+
+GARBAGE += $(AUTO_HEADERS:$(OBJDIR)/jsauto%.h=$(OBJDIR)/js%gen.d)
+$(AUTO_HEADERS): $(OBJDIR)/jsauto%.h: js%gen.cpp
+ @$(MAKE_OBJDIR)
+ $(CXX) -o $(OBJDIR)/js$*gen$(HOST_BIN_SUFFIX) $(CFLAGS) $(OPTIMIZER) $(LDFLAGS) $<
+ $(OBJDIR)/js$*gen$(HOST_BIN_SUFFIX) $@
+
+endif
+
+# force creation of autoheaders before compiling any source that may use them
+$(LIB_OBJS) : $(AUTO_HEADERS)
+
+#
+# An installed header file describing configuration options that affect
+# the API.
+#
+
+# Avoid rebuilding unless js-config.h's contents actually change. The
+# timestamp on js-config.h.stamp corresponds to the last time we
+# checked that js-config.h was up to date. If the stamp changes but
+# js-config.h does not, then make concludes that targets depending on
+# js-config.h don't need to be rebuilt. The dummy '@true' rule here
+# keeps make from concluding that js-config.h never changes.
+$(OBJDIR)/js-config.h: $(OBJDIR)/js-config.h.stamp
+ @true
+
+js-config-switch=$(if $(value $($1)),-e 's/\#undef $1/\#define $1/')
+$(OBJDIR)/js-config.h.stamp: js-config.h.in Makefile.ref
+ sed < $< > $(@:.stamp=.tmp) \
+ $(call js-config-switch,JS_THREADSAFE) \
+ $(call js-config-switch,JS_GC_ZEAL) \
+ -e :dummy
+ if ! [ -f $(@:.stamp=) ] || ! cmp $(@:.stamp=.tmp) $(@:.stamp=); then \
+ mv $(@:.stamp=.tmp) $(@:.stamp=); \
+ fi
+ touch $@
+
+GARBAGE += $(OBJDIR)/js-config.h $(OBJDIR)/js-config.h.stamp
+
+# Force creation of js-config.h before compiling any source that may use it.
+$(LIB_OBJS) : $(OBJDIR)/js-config.h
+
+#
+# JS shell executable
+#
+
+ifdef USE_MSVC
+$(PROGRAM): $(PROG_OBJS) $(LIBRARY)
+ link.exe -out:"$@" $(EXE_LINK_FLAGS) $^
+else
+$(PROGRAM): $(PROG_OBJS) $(LIBRARY)
+ $(CXX) -o $@ $(CFLAGS) $(PROG_OBJS) $(LIBRARY) $(LDFLAGS) $(OTHER_LIBS) \
+ $(PROG_LIBS)
+endif
+
+$(PROGRAM).pure: $(PROG_OBJS) $(LIBRARY)
+ purify $(PUREFLAGS) \
+ $(CXX) -o $@ $(PURE_OS_CFLAGS) $(PROG_OBJS) $(LIBRARY) $(LDFLAGS) \
+ $(OTHER_LIBS) $(PROG_LIBS)
+
+ifndef PREBUILT_CPUCFG
+$(filter-out jscpucfg.h $(OBJDIR)/jsautocfg.h, $(HFILES)) $(CPPFILES): $(OBJDIR)/jsautocfg.h
+
+$(OBJDIR)/jsautocfg.h: $(OBJDIR)/jscpucfg
+ rm -f $@
+ $(OBJDIR)/jscpucfg > $@
+
+$(OBJDIR)/jscpucfg: $(OBJDIR)/jscpucfg.o
+ $(CXX) $(OS_LDFLAGS) -o $@ $(OBJDIR)/jscpucfg.o
+
+GARBAGE += $(OBJDIR)/jsautocfg.h $(OBJDIR)/jscpucfg \
+ $(OBJDIR)/jscpucfg.o $(OBJDIR)/jscpucfg.d
+endif
+
+# Automatic make dependencies files
+DEPENDENCIES = $(CPPFILES:%.cpp=$(OBJDIR)/%.d)
+
+#
+# Hardwire dependencies for some files
+#
+ifdef USE_MSVC
+OBJ=obj
+else
+OBJ=o
+endif
+
+$(OBJDIR)/jsinvoke.$(OBJ): jsinterp.h jsinterp.cpp
+$(OBJDIR)/jsinvoke.obj : jsinterp.h jsinterp.cpp
+
+-include $(DEPENDENCIES)
+
+TARNAME = jsref.tar
+TARFILES = files `cat files`
+
+SUFFIXES: .i
+%.i: %.cpp
+ $(CXX) -C -E $(CFLAGS) $< > $*.i