johnson 1.2.0 → 2.0.0.pre0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/CHANGELOG.rdoc +8 -0
- data/Manifest.txt +762 -48
- data/README.rdoc +2 -1
- data/Rakefile +90 -18
- data/ext/spidermonkey/conversions.c +9 -2
- data/ext/spidermonkey/ruby_land_proxy.c +1 -1
- data/ext/spidermonkey/runtime.h +1 -1
- data/ext/tracemonkey/context.cc +125 -0
- data/ext/tracemonkey/context.h +19 -0
- data/ext/tracemonkey/conversions.cc +365 -0
- data/ext/tracemonkey/conversions.h +32 -0
- data/ext/tracemonkey/debugger.cc +234 -0
- data/ext/tracemonkey/debugger.h +10 -0
- data/ext/tracemonkey/extconf.rb +37 -0
- data/ext/tracemonkey/extensions.cc +37 -0
- data/ext/tracemonkey/extensions.h +12 -0
- data/ext/tracemonkey/global.cc +40 -0
- data/ext/tracemonkey/global.h +11 -0
- data/ext/tracemonkey/idhash.cc +16 -0
- data/ext/tracemonkey/idhash.h +8 -0
- data/ext/tracemonkey/immutable_node.cc +1199 -0
- data/ext/tracemonkey/immutable_node.cc.erb +559 -0
- data/ext/tracemonkey/immutable_node.h +22 -0
- data/ext/tracemonkey/jroot.h +215 -0
- data/ext/tracemonkey/js_land_proxy.cc +620 -0
- data/ext/tracemonkey/js_land_proxy.h +20 -0
- data/ext/tracemonkey/ruby_land_proxy.cc +618 -0
- data/ext/tracemonkey/ruby_land_proxy.h +38 -0
- data/ext/tracemonkey/runtime.cc +454 -0
- data/ext/tracemonkey/runtime.h +27 -0
- data/ext/tracemonkey/split_global.cc +392 -0
- data/ext/tracemonkey/split_global.h +11 -0
- data/ext/tracemonkey/tracemonkey.cc +23 -0
- data/ext/tracemonkey/tracemonkey.h +32 -0
- data/lib/johnson.rb +12 -4
- data/lib/johnson/error.rb +5 -0
- data/lib/johnson/js/prelude.js +16 -1
- data/lib/johnson/parser.rb +2 -1
- data/lib/johnson/runtime.rb +87 -26
- data/lib/johnson/spidermonkey/runtime.rb +7 -16
- data/lib/johnson/tracemonkey.rb +13 -0
- data/lib/johnson/tracemonkey/context.rb +10 -0
- data/lib/johnson/tracemonkey/debugger.rb +67 -0
- data/lib/johnson/tracemonkey/immutable_node.rb +282 -0
- data/lib/johnson/tracemonkey/js_land_proxy.rb +64 -0
- data/lib/johnson/tracemonkey/mutable_tree_visitor.rb +242 -0
- data/lib/johnson/tracemonkey/ruby_land_proxy.rb +17 -0
- data/lib/johnson/tracemonkey/runtime.rb +80 -0
- data/test/{johnson_test.rb → generic/johnson_test.rb} +1 -1
- data/test/{parser_test.rb → generic/parser_test.rb} +1 -1
- data/test/helper.rb +23 -4
- data/test/johnson/{browser_test.rb → generic/browser_test.rb} +1 -1
- data/test/johnson/{conversions → generic/conversions}/array_test.rb +1 -1
- data/test/johnson/{conversions → generic/conversions}/boolean_test.rb +1 -1
- data/test/johnson/{conversions → generic/conversions}/callable_test.rb +1 -1
- data/test/johnson/{conversions → generic/conversions}/file_test.rb +1 -1
- data/test/johnson/generic/conversions/helper.rb +1 -0
- data/test/johnson/{conversions → generic/conversions}/nil_test.rb +1 -1
- data/test/johnson/{conversions → generic/conversions}/number_test.rb +1 -1
- data/test/johnson/{conversions → generic/conversions}/regexp_test.rb +1 -1
- data/test/johnson/{conversions → generic/conversions}/string_test.rb +1 -1
- data/test/johnson/{conversions → generic/conversions}/struct_test.rb +1 -1
- data/test/johnson/{conversions → generic/conversions}/symbol_test.rb +1 -1
- data/test/johnson/{conversions → generic/conversions}/thread_test.rb +1 -1
- data/test/johnson/{custom_conversions_test.rb → generic/custom_conversions_test.rb} +1 -1
- data/test/johnson/generic/default_test.rb +12 -0
- data/test/johnson/{error_test.rb → generic/error_test.rb} +1 -1
- data/test/johnson/{extensions_test.rb → generic/extensions_test.rb} +1 -1
- data/test/johnson/generic/helper.rb +1 -0
- data/test/johnson/{nodes → generic/nodes}/array_literal_test.rb +1 -1
- data/test/johnson/{nodes → generic/nodes}/array_node_test.rb +1 -1
- data/test/johnson/{nodes → generic/nodes}/binary_node_test.rb +1 -1
- data/test/johnson/{nodes → generic/nodes}/bracket_access_test.rb +1 -1
- data/test/johnson/{nodes → generic/nodes}/delete_test.rb +1 -1
- data/test/johnson/{nodes → generic/nodes}/do_while_test.rb +1 -1
- data/test/johnson/{nodes → generic/nodes}/dot_accessor_test.rb +1 -1
- data/test/johnson/generic/nodes/export_test.rb +11 -0
- data/test/johnson/{nodes → generic/nodes}/for_test.rb +1 -1
- data/test/johnson/{nodes → generic/nodes}/function_test.rb +1 -1
- data/test/johnson/generic/nodes/helper.rb +1 -0
- data/test/johnson/{nodes → generic/nodes}/if_test.rb +16 -6
- data/test/johnson/generic/nodes/import_test.rb +15 -0
- data/test/johnson/{nodes → generic/nodes}/label_test.rb +1 -1
- data/test/johnson/{nodes → generic/nodes}/let_test.rb +1 -1
- data/test/johnson/{nodes → generic/nodes}/object_literal_test.rb +1 -1
- data/test/johnson/{nodes → generic/nodes}/return_test.rb +1 -1
- data/test/johnson/{nodes → generic/nodes}/semi_test.rb +1 -1
- data/test/johnson/{nodes → generic/nodes}/switch_test.rb +1 -1
- data/test/johnson/{nodes → generic/nodes}/ternary_test.rb +1 -1
- data/test/johnson/{nodes → generic/nodes}/throw_test.rb +1 -1
- data/test/johnson/{nodes → generic/nodes}/try_node_test.rb +36 -6
- data/test/johnson/{nodes → generic/nodes}/typeof_test.rb +1 -1
- data/test/johnson/{nodes → generic/nodes}/unary_node_test.rb +1 -1
- data/test/johnson/{nodes → generic/nodes}/void_test.rb +1 -1
- data/test/johnson/{nodes → generic/nodes}/while_test.rb +1 -1
- data/test/johnson/{nodes → generic/nodes}/with_test.rb +1 -1
- data/test/johnson/{prelude_test.rb → generic/prelude_test.rb} +1 -1
- data/test/johnson/{runtime_test.rb → generic/runtime_test.rb} +3 -6
- data/test/johnson/generic/version_test.rb +13 -0
- data/test/johnson/{visitors → generic/visitors}/dot_visitor_test.rb +1 -1
- data/test/johnson/{visitors → generic/visitors}/enumerating_visitor_test.rb +1 -1
- data/test/johnson/generic/visitors/helper.rb +1 -0
- data/test/johnson/spidermonkey/js_land_proxy_test.rb +1 -5
- data/test/johnson/spidermonkey/ruby_land_proxy_test.rb +11 -7
- data/test/johnson/tracemonkey/context_test.rb +21 -0
- data/test/johnson/tracemonkey/immutable_node_test.rb +34 -0
- data/test/johnson/tracemonkey/js_land_proxy_test.rb +273 -0
- data/test/johnson/tracemonkey/ruby_land_proxy_test.rb +274 -0
- data/test/johnson/tracemonkey/runtime_test.rb +41 -0
- data/test/johnson/tracemonkey/split_global_test.rb +32 -0
- data/vendor/spidermonkey/js.pkg +2 -0
- data/vendor/tracemonkey/Makefile.in +668 -0
- data/vendor/tracemonkey/Makefile.ref +483 -0
- data/vendor/tracemonkey/README.html +54 -0
- data/vendor/tracemonkey/SpiderMonkey.rsp +11 -0
- data/vendor/tracemonkey/Y.js +19 -0
- data/vendor/tracemonkey/aclocal.m4 +9 -0
- data/vendor/tracemonkey/bench.sh +5 -0
- data/vendor/tracemonkey/build/autoconf/acoutput-fast.pl +202 -0
- data/vendor/tracemonkey/build/autoconf/altoptions.m4 +154 -0
- data/vendor/tracemonkey/build/autoconf/config.guess +1537 -0
- data/vendor/tracemonkey/build/autoconf/config.sub +1595 -0
- data/vendor/tracemonkey/build/autoconf/install-sh +119 -0
- data/vendor/tracemonkey/build/autoconf/make-makefile +315 -0
- data/vendor/tracemonkey/build/autoconf/match-dir.sh +101 -0
- data/vendor/tracemonkey/build/autoconf/moznbytetype.m4 +136 -0
- data/vendor/tracemonkey/build/autoconf/nspr.m4 +82 -0
- data/vendor/tracemonkey/build/autoconf/pkg.m4 +59 -0
- data/vendor/tracemonkey/build/autoconf/update-makefile.sh +118 -0
- data/vendor/tracemonkey/build/cygwin-wrapper +75 -0
- data/vendor/tracemonkey/build/hcc +111 -0
- data/vendor/tracemonkey/build/hcpp +155 -0
- data/vendor/tracemonkey/build/unix/mddepend.pl +165 -0
- data/vendor/tracemonkey/build/unix/uniq.pl +63 -0
- data/vendor/tracemonkey/build/win32/pgomerge.py +40 -0
- data/vendor/tracemonkey/builtins.tbl +91 -0
- data/vendor/tracemonkey/call.js +13 -0
- data/vendor/tracemonkey/config.mk +206 -0
- data/vendor/tracemonkey/config/Makefile.in +106 -0
- data/vendor/tracemonkey/config/Moz/Milestone.pm +232 -0
- data/vendor/tracemonkey/config/autoconf.mk.in +362 -0
- data/vendor/tracemonkey/config/check-sync-dirs.py +103 -0
- data/vendor/tracemonkey/config/check-sync-exceptions +7 -0
- data/vendor/tracemonkey/config/config.mk +881 -0
- data/vendor/tracemonkey/config/fastcwd.pl +66 -0
- data/vendor/tracemonkey/config/gcc_hidden.h +2 -0
- data/vendor/tracemonkey/config/insure.mk +53 -0
- data/vendor/tracemonkey/config/make-system-wrappers.pl +59 -0
- data/vendor/tracemonkey/config/milestone.pl +112 -0
- data/vendor/tracemonkey/config/milestone.txt +13 -0
- data/vendor/tracemonkey/config/mkdepend/Makefile.in +84 -0
- data/vendor/tracemonkey/config/mkdepend/cppsetup.c +233 -0
- data/vendor/tracemonkey/config/mkdepend/def.h +184 -0
- data/vendor/tracemonkey/config/mkdepend/ifparser.c +551 -0
- data/vendor/tracemonkey/config/mkdepend/ifparser.h +83 -0
- data/vendor/tracemonkey/config/mkdepend/imakemdep.h +733 -0
- data/vendor/tracemonkey/config/mkdepend/include.c +337 -0
- data/vendor/tracemonkey/config/mkdepend/main.c +860 -0
- data/vendor/tracemonkey/config/mkdepend/mkdepend.man +382 -0
- data/vendor/tracemonkey/config/mkdepend/parse.c +686 -0
- data/vendor/tracemonkey/config/mkdepend/pr.c +124 -0
- data/vendor/tracemonkey/config/nfspwd.pl +50 -0
- data/vendor/tracemonkey/config/nsinstall.c +481 -0
- data/vendor/tracemonkey/config/nsinstall.py +155 -0
- data/vendor/tracemonkey/config/pathsub.c +247 -0
- data/vendor/tracemonkey/config/pathsub.h +74 -0
- data/vendor/tracemonkey/config/preprocessor.pl +671 -0
- data/vendor/tracemonkey/config/revdepth-nt.pl +48 -0
- data/vendor/tracemonkey/config/revdepth.pl +51 -0
- data/vendor/tracemonkey/config/rules.mk +2310 -0
- data/vendor/tracemonkey/config/static-checking-config.mk +21 -0
- data/vendor/tracemonkey/config/static-checking.js +92 -0
- data/vendor/tracemonkey/config/string-format.js +61 -0
- data/vendor/tracemonkey/config/system-headers +1035 -0
- data/vendor/tracemonkey/config/version.mk +85 -0
- data/vendor/tracemonkey/config/version_win.pl +442 -0
- data/vendor/tracemonkey/configure +14183 -0
- data/vendor/tracemonkey/configure.in +5363 -0
- data/vendor/tracemonkey/correct.sh +23 -0
- data/vendor/tracemonkey/correct/check-3d-morph.js +55 -0
- data/vendor/tracemonkey/correct/check-3d-raytrace.js +445 -0
- data/vendor/tracemonkey/correct/check-access-binary-trees.js +52 -0
- data/vendor/tracemonkey/correct/check-access-fannkuch.js +66 -0
- data/vendor/tracemonkey/correct/check-access-nbody.js +171 -0
- data/vendor/tracemonkey/correct/check-access-nsieve.js +40 -0
- data/vendor/tracemonkey/correct/check-bitops-3bit-bits-in-byte.js +35 -0
- data/vendor/tracemonkey/correct/check-bitops-bits-in-byte.js +24 -0
- data/vendor/tracemonkey/correct/check-bitops-bitwise-and.js +29 -0
- data/vendor/tracemonkey/correct/check-bitops-nsieve-bits.js +40 -0
- data/vendor/tracemonkey/correct/check-controlflow-recursive.js +27 -0
- data/vendor/tracemonkey/correct/check-date-format-tofte.js +302 -0
- data/vendor/tracemonkey/correct/check-date-format-xparb.js +421 -0
- data/vendor/tracemonkey/correct/check-mont.js +119 -0
- data/vendor/tracemonkey/dtoa.c +3335 -0
- data/vendor/tracemonkey/editline/Makefile.in +55 -0
- data/vendor/tracemonkey/editline/Makefile.ref +143 -0
- data/vendor/tracemonkey/editline/README +83 -0
- data/vendor/tracemonkey/editline/editline.3 +175 -0
- data/vendor/tracemonkey/editline/editline.c +1371 -0
- data/vendor/tracemonkey/editline/editline.h +135 -0
- data/vendor/tracemonkey/editline/sysunix.c +182 -0
- data/vendor/tracemonkey/editline/unix.h +82 -0
- data/vendor/tracemonkey/if.js +13 -0
- data/vendor/tracemonkey/imacro_asm.js.in +396 -0
- data/vendor/tracemonkey/imacros.c.out +1034 -0
- data/vendor/tracemonkey/imacros.jsasm +770 -0
- data/vendor/tracemonkey/javascript-trace.d +73 -0
- data/vendor/tracemonkey/jitstats.tbl +55 -0
- data/vendor/tracemonkey/js-config.h.in +82 -0
- data/vendor/tracemonkey/js-config.in +111 -0
- data/vendor/tracemonkey/js.mdp +0 -0
- data/vendor/tracemonkey/js.msg +312 -0
- data/vendor/tracemonkey/js3240.rc +79 -0
- data/vendor/tracemonkey/jsOS240.def +654 -0
- data/vendor/tracemonkey/jsapi.cpp +6005 -0
- data/vendor/tracemonkey/jsapi.h +2727 -0
- data/vendor/tracemonkey/jsarena.cpp +450 -0
- data/vendor/tracemonkey/jsarena.h +318 -0
- data/vendor/tracemonkey/jsarray.cpp +3664 -0
- data/vendor/tracemonkey/jsarray.h +238 -0
- data/vendor/tracemonkey/jsatom.cpp +1244 -0
- data/vendor/tracemonkey/jsatom.h +493 -0
- data/vendor/tracemonkey/jsbit.h +249 -0
- data/vendor/tracemonkey/jsbool.cpp +184 -0
- data/vendor/tracemonkey/jsbool.h +88 -0
- data/vendor/tracemonkey/jsbuiltins.cpp +415 -0
- data/vendor/tracemonkey/jsbuiltins.h +456 -0
- data/vendor/tracemonkey/jsclist.h +139 -0
- data/vendor/tracemonkey/jscntxt.cpp +1816 -0
- data/vendor/tracemonkey/jscntxt.h +1541 -0
- data/vendor/tracemonkey/jscompat.h +57 -0
- data/vendor/tracemonkey/jsconfig.mk +181 -0
- data/vendor/tracemonkey/jscpucfg.cpp +194 -0
- data/vendor/tracemonkey/jscpucfg.h +91 -0
- data/vendor/tracemonkey/jsdate.cpp +2465 -0
- data/vendor/tracemonkey/jsdate.h +129 -0
- data/vendor/tracemonkey/jsdbgapi.cpp +2017 -0
- data/vendor/tracemonkey/jsdbgapi.h +500 -0
- data/vendor/tracemonkey/jsdhash.cpp +876 -0
- data/vendor/tracemonkey/jsdhash.h +588 -0
- data/vendor/tracemonkey/jsdtoa.cpp +572 -0
- data/vendor/tracemonkey/jsdtoa.h +131 -0
- data/vendor/tracemonkey/jsdtracef.c +318 -0
- data/vendor/tracemonkey/jsdtracef.h +81 -0
- data/vendor/tracemonkey/jsemit.cpp +7292 -0
- data/vendor/tracemonkey/jsemit.h +802 -0
- data/vendor/tracemonkey/jsexn.cpp +1337 -0
- data/vendor/tracemonkey/jsexn.h +96 -0
- data/vendor/tracemonkey/jsfile.cpp +2747 -0
- data/vendor/tracemonkey/jsfile.h +56 -0
- data/vendor/tracemonkey/jsfile.msg +90 -0
- data/vendor/tracemonkey/jsfun.cpp +3089 -0
- data/vendor/tracemonkey/jsfun.h +366 -0
- data/vendor/tracemonkey/jsgc.cpp +3816 -0
- data/vendor/tracemonkey/jsgc.h +429 -0
- data/vendor/tracemonkey/jshash.cpp +477 -0
- data/vendor/tracemonkey/jshash.h +151 -0
- data/vendor/tracemonkey/jsify.pl +483 -0
- data/vendor/tracemonkey/jsinterp.cpp +7441 -0
- data/vendor/tracemonkey/jsinterp.h +666 -0
- data/vendor/tracemonkey/jsinvoke.cpp +42 -0
- data/vendor/tracemonkey/jsiter.cpp +1040 -0
- data/vendor/tracemonkey/jsiter.h +140 -0
- data/vendor/tracemonkey/jskeyword.tbl +124 -0
- data/vendor/tracemonkey/jskwgen.cpp +460 -0
- data/vendor/tracemonkey/jslibmath.h +69 -0
- data/vendor/tracemonkey/jslock.cpp +1512 -0
- data/vendor/tracemonkey/jslock.h +325 -0
- data/vendor/tracemonkey/jslocko.asm +60 -0
- data/vendor/tracemonkey/jslog2.cpp +111 -0
- data/vendor/tracemonkey/jslong.h +167 -0
- data/vendor/tracemonkey/jsmath.cpp +806 -0
- data/vendor/tracemonkey/jsmath.h +63 -0
- data/vendor/tracemonkey/jsnum.cpp +1374 -0
- data/vendor/tracemonkey/jsnum.h +280 -0
- data/vendor/tracemonkey/jsobj.cpp +6165 -0
- data/vendor/tracemonkey/jsobj.h +870 -0
- data/vendor/tracemonkey/json.cpp +1338 -0
- data/vendor/tracemonkey/json.h +108 -0
- data/vendor/tracemonkey/jsopcode.cpp +5484 -0
- data/vendor/tracemonkey/jsopcode.h +434 -0
- data/vendor/tracemonkey/jsopcode.tbl +591 -0
- data/vendor/tracemonkey/jsoplengen.cpp +121 -0
- data/vendor/tracemonkey/jsotypes.h +202 -0
- data/vendor/tracemonkey/jsparse.cpp +9257 -0
- data/vendor/tracemonkey/jsparse.h +900 -0
- data/vendor/tracemonkey/jsprf.cpp +1262 -0
- data/vendor/tracemonkey/jsprf.h +150 -0
- data/vendor/tracemonkey/jsproto.tbl +117 -0
- data/vendor/tracemonkey/jsprvtd.h +366 -0
- data/vendor/tracemonkey/jspubtd.h +585 -0
- data/vendor/tracemonkey/jsregexp.cpp +5051 -0
- data/vendor/tracemonkey/jsregexp.h +199 -0
- data/vendor/tracemonkey/jsreops.tbl +145 -0
- data/vendor/tracemonkey/jsscan.cpp +2040 -0
- data/vendor/tracemonkey/jsscan.h +467 -0
- data/vendor/tracemonkey/jsscope.cpp +1966 -0
- data/vendor/tracemonkey/jsscope.h +487 -0
- data/vendor/tracemonkey/jsscript.cpp +1932 -0
- data/vendor/tracemonkey/jsscript.h +345 -0
- data/vendor/tracemonkey/jsshell.msg +54 -0
- data/vendor/tracemonkey/jsstack.js +167 -0
- data/vendor/tracemonkey/jsstaticcheck.h +69 -0
- data/vendor/tracemonkey/jsstddef.h +87 -0
- data/vendor/tracemonkey/jsstdint.h +96 -0
- data/vendor/tracemonkey/jsstr.cpp +5277 -0
- data/vendor/tracemonkey/jsstr.h +702 -0
- data/vendor/tracemonkey/jstracer.cpp +10991 -0
- data/vendor/tracemonkey/jstracer.h +794 -0
- data/vendor/tracemonkey/jstypes.h +481 -0
- data/vendor/tracemonkey/jsutil.cpp +361 -0
- data/vendor/tracemonkey/jsutil.h +178 -0
- data/vendor/tracemonkey/jsversion.h +243 -0
- data/vendor/tracemonkey/jswince.asm +44 -0
- data/vendor/tracemonkey/jsxdrapi.cpp +800 -0
- data/vendor/tracemonkey/jsxdrapi.h +220 -0
- data/vendor/tracemonkey/jsxml.cpp +8327 -0
- data/vendor/tracemonkey/jsxml.h +305 -0
- data/vendor/tracemonkey/liveconnect/LiveConnect.dsp +157 -0
- data/vendor/tracemonkey/liveconnect/LiveConnectShell.dsp +120 -0
- data/vendor/tracemonkey/liveconnect/LiveConnectShell.dsw +44 -0
- data/vendor/tracemonkey/liveconnect/Makefile.in +105 -0
- data/vendor/tracemonkey/liveconnect/Makefile.ref +169 -0
- data/vendor/tracemonkey/liveconnect/README.html +712 -0
- data/vendor/tracemonkey/liveconnect/_jni/netscape_javascript_JSException.h +14 -0
- data/vendor/tracemonkey/liveconnect/_jni/netscape_javascript_JSObject.h +155 -0
- data/vendor/tracemonkey/liveconnect/classes/Makefile.in +89 -0
- data/vendor/tracemonkey/liveconnect/classes/Makefile.ref +57 -0
- data/vendor/tracemonkey/liveconnect/classes/netscape/Makefile.ref +47 -0
- data/vendor/tracemonkey/liveconnect/classes/netscape/javascript/JSException.java +140 -0
- data/vendor/tracemonkey/liveconnect/classes/netscape/javascript/JSObject.java +183 -0
- data/vendor/tracemonkey/liveconnect/classes/netscape/javascript/JSProxy.java +58 -0
- data/vendor/tracemonkey/liveconnect/classes/netscape/javascript/JSRunnable.java +70 -0
- data/vendor/tracemonkey/liveconnect/classes/netscape/javascript/JSUtil.java +59 -0
- data/vendor/tracemonkey/liveconnect/classes/netscape/javascript/Makefile.ref +53 -0
- data/vendor/tracemonkey/liveconnect/config/AIX4.1.mk +45 -0
- data/vendor/tracemonkey/liveconnect/config/AIX4.2.mk +45 -0
- data/vendor/tracemonkey/liveconnect/config/AIX4.3.mk +50 -0
- data/vendor/tracemonkey/liveconnect/config/HP-UXB.10.10.mk +43 -0
- data/vendor/tracemonkey/liveconnect/config/HP-UXB.10.20.mk +43 -0
- data/vendor/tracemonkey/liveconnect/config/HP-UXB.11.00.mk +43 -0
- data/vendor/tracemonkey/liveconnect/config/IRIX6.2.mk +43 -0
- data/vendor/tracemonkey/liveconnect/config/IRIX6.3.mk +43 -0
- data/vendor/tracemonkey/liveconnect/config/IRIX6.5.mk +43 -0
- data/vendor/tracemonkey/liveconnect/config/Linux_All.mk +73 -0
- data/vendor/tracemonkey/liveconnect/config/OSF1V4.0.mk +65 -0
- data/vendor/tracemonkey/liveconnect/config/OSF1V5.0.mk +62 -0
- data/vendor/tracemonkey/liveconnect/config/SunOS5.5.1.mk +55 -0
- data/vendor/tracemonkey/liveconnect/config/SunOS5.6.mk +39 -0
- data/vendor/tracemonkey/liveconnect/config/SunOS5.7.mk +39 -0
- data/vendor/tracemonkey/liveconnect/config/SunOS5.8.mk +39 -0
- data/vendor/tracemonkey/liveconnect/config/WINNT4.0.mk +53 -0
- data/vendor/tracemonkey/liveconnect/jsj.c +886 -0
- data/vendor/tracemonkey/liveconnect/jsj.msg +98 -0
- data/vendor/tracemonkey/liveconnect/jsj_JSObject.c +1377 -0
- data/vendor/tracemonkey/liveconnect/jsj_JavaArray.c +474 -0
- data/vendor/tracemonkey/liveconnect/jsj_JavaClass.c +737 -0
- data/vendor/tracemonkey/liveconnect/jsj_JavaMember.c +191 -0
- data/vendor/tracemonkey/liveconnect/jsj_JavaObject.c +1079 -0
- data/vendor/tracemonkey/liveconnect/jsj_JavaPackage.c +569 -0
- data/vendor/tracemonkey/liveconnect/jsj_array.c +207 -0
- data/vendor/tracemonkey/liveconnect/jsj_class.c +770 -0
- data/vendor/tracemonkey/liveconnect/jsj_convert.c +902 -0
- data/vendor/tracemonkey/liveconnect/jsj_field.c +421 -0
- data/vendor/tracemonkey/liveconnect/jsj_hash.c +488 -0
- data/vendor/tracemonkey/liveconnect/jsj_hash.h +161 -0
- data/vendor/tracemonkey/liveconnect/jsj_method.c +1825 -0
- data/vendor/tracemonkey/liveconnect/jsj_nodl.c +1 -0
- data/vendor/tracemonkey/liveconnect/jsj_private.h +677 -0
- data/vendor/tracemonkey/liveconnect/jsj_simpleapi.c +219 -0
- data/vendor/tracemonkey/liveconnect/jsj_utils.c +513 -0
- data/vendor/tracemonkey/liveconnect/jsjava.h +316 -0
- data/vendor/tracemonkey/liveconnect/netscape_javascript_JSObject.h +155 -0
- data/vendor/tracemonkey/liveconnect/nsCLiveconnect.cpp +785 -0
- data/vendor/tracemonkey/liveconnect/nsCLiveconnect.h +197 -0
- data/vendor/tracemonkey/liveconnect/nsCLiveconnectFactory.cpp +118 -0
- data/vendor/tracemonkey/liveconnect/nsCLiveconnectFactory.h +76 -0
- data/vendor/tracemonkey/liveconnect/nsILiveconnect.h +197 -0
- data/vendor/tracemonkey/liveconnect/nsISecureLiveconnect.h +94 -0
- data/vendor/tracemonkey/liveconnect/nsISecurityContext.h +136 -0
- data/vendor/tracemonkey/lock_SunOS.s +119 -0
- data/vendor/tracemonkey/mandelbrot-results.js +3 -0
- data/vendor/tracemonkey/math-partial-sums.js +32 -0
- data/vendor/tracemonkey/math-trace-tests.js +507 -0
- data/vendor/tracemonkey/md5.js +289 -0
- data/vendor/tracemonkey/nanojit/Assembler.cpp +1984 -0
- data/vendor/tracemonkey/nanojit/Assembler.h +375 -0
- data/vendor/tracemonkey/nanojit/Fragmento.cpp +651 -0
- data/vendor/tracemonkey/nanojit/Fragmento.h +237 -0
- data/vendor/tracemonkey/nanojit/LIR.cpp +2314 -0
- data/vendor/tracemonkey/nanojit/LIR.h +879 -0
- data/vendor/tracemonkey/nanojit/LIRopcode.tbl +252 -0
- data/vendor/tracemonkey/nanojit/Native.h +127 -0
- data/vendor/tracemonkey/nanojit/NativeARM.cpp +1742 -0
- data/vendor/tracemonkey/nanojit/NativeARM.h +844 -0
- data/vendor/tracemonkey/nanojit/NativeSparc.cpp +1130 -0
- data/vendor/tracemonkey/nanojit/NativeSparc.h +948 -0
- data/vendor/tracemonkey/nanojit/NativeThumb.cpp +1322 -0
- data/vendor/tracemonkey/nanojit/NativeThumb.h +525 -0
- data/vendor/tracemonkey/nanojit/Nativei386.cpp +1748 -0
- data/vendor/tracemonkey/nanojit/Nativei386.h +857 -0
- data/vendor/tracemonkey/nanojit/RegAlloc.cpp +183 -0
- data/vendor/tracemonkey/nanojit/RegAlloc.h +95 -0
- data/vendor/tracemonkey/nanojit/TraceTreeDrawer.cpp +306 -0
- data/vendor/tracemonkey/nanojit/TraceTreeDrawer.h +88 -0
- data/vendor/tracemonkey/nanojit/avmplus.cpp +56 -0
- data/vendor/tracemonkey/nanojit/avmplus.h +1016 -0
- data/vendor/tracemonkey/nanojit/nanojit.h +253 -0
- data/vendor/tracemonkey/perfect.js +39 -0
- data/vendor/tracemonkey/plify_jsdhash.sed +35 -0
- data/vendor/tracemonkey/prmjtime.cpp +869 -0
- data/vendor/tracemonkey/prmjtime.h +103 -0
- data/vendor/tracemonkey/ref-config/AIX4.1.mk +65 -0
- data/vendor/tracemonkey/ref-config/AIX4.2.mk +64 -0
- data/vendor/tracemonkey/ref-config/AIX4.3.mk +65 -0
- data/vendor/tracemonkey/ref-config/Darwin.mk +85 -0
- data/vendor/tracemonkey/ref-config/Darwin1.3.mk +81 -0
- data/vendor/tracemonkey/ref-config/Darwin1.4.mk +41 -0
- data/vendor/tracemonkey/ref-config/Darwin5.2.mk +81 -0
- data/vendor/tracemonkey/ref-config/Darwin5.3.mk +81 -0
- data/vendor/tracemonkey/ref-config/Darwin64.mk +72 -0
- data/vendor/tracemonkey/ref-config/HP-UXB.10.10.mk +77 -0
- data/vendor/tracemonkey/ref-config/HP-UXB.10.20.mk +77 -0
- data/vendor/tracemonkey/ref-config/HP-UXB.11.00.mk +80 -0
- data/vendor/tracemonkey/ref-config/IRIX.mk +87 -0
- data/vendor/tracemonkey/ref-config/IRIX5.3.mk +44 -0
- data/vendor/tracemonkey/ref-config/IRIX6.1.mk +44 -0
- data/vendor/tracemonkey/ref-config/IRIX6.2.mk +44 -0
- data/vendor/tracemonkey/ref-config/IRIX6.3.mk +44 -0
- data/vendor/tracemonkey/ref-config/IRIX6.5.mk +44 -0
- data/vendor/tracemonkey/ref-config/Linux_All.mk +105 -0
- data/vendor/tracemonkey/ref-config/Mac_OS10.0.mk +82 -0
- data/vendor/tracemonkey/ref-config/OSF1V4.0.mk +72 -0
- data/vendor/tracemonkey/ref-config/OSF1V5.0.mk +69 -0
- data/vendor/tracemonkey/ref-config/SunOS4.1.4.mk +101 -0
- data/vendor/tracemonkey/ref-config/SunOS5.10.mk +50 -0
- data/vendor/tracemonkey/ref-config/SunOS5.3.mk +91 -0
- data/vendor/tracemonkey/ref-config/SunOS5.4.mk +92 -0
- data/vendor/tracemonkey/ref-config/SunOS5.5.1.mk +44 -0
- data/vendor/tracemonkey/ref-config/SunOS5.5.mk +87 -0
- data/vendor/tracemonkey/ref-config/SunOS5.6.mk +89 -0
- data/vendor/tracemonkey/ref-config/SunOS5.7.mk +44 -0
- data/vendor/tracemonkey/ref-config/SunOS5.8.mk +44 -0
- data/vendor/tracemonkey/ref-config/SunOS5.9.mk +44 -0
- data/vendor/tracemonkey/ref-config/WINNT4.0.mk +118 -0
- data/vendor/tracemonkey/ref-config/WINNT5.0.mk +118 -0
- data/vendor/tracemonkey/ref-config/WINNT5.1.mk +118 -0
- data/vendor/tracemonkey/ref-config/WINNT5.2.mk +118 -0
- data/vendor/tracemonkey/ref-config/WINNT6.0.mk +118 -0
- data/vendor/tracemonkey/ref-config/dgux.mk +64 -0
- data/vendor/tracemonkey/resource.h +15 -0
- data/vendor/tracemonkey/rules.mk +206 -0
- data/vendor/tracemonkey/shell/Makefile.in +72 -0
- data/vendor/tracemonkey/shell/js.cpp +4719 -0
- data/vendor/tracemonkey/t/3d-cube.js +337 -0
- data/vendor/tracemonkey/t/3d-morph.js +54 -0
- data/vendor/tracemonkey/t/3d-raytrace.js +441 -0
- data/vendor/tracemonkey/t/access-binary-trees.js +50 -0
- data/vendor/tracemonkey/t/access-fannkuch.js +66 -0
- data/vendor/tracemonkey/t/access-nbody.js +169 -0
- data/vendor/tracemonkey/t/access-nsieve.js +38 -0
- data/vendor/tracemonkey/t/bitops-3bit-bits-in-byte.js +32 -0
- data/vendor/tracemonkey/t/bitops-bits-in-byte.js +21 -0
- data/vendor/tracemonkey/t/bitops-bitwise-and.js +28 -0
- data/vendor/tracemonkey/t/bitops-nsieve-bits.js +32 -0
- data/vendor/tracemonkey/t/controlflow-recursive.js +25 -0
- data/vendor/tracemonkey/t/crypto-aes.js +422 -0
- data/vendor/tracemonkey/t/crypto-md5.js +286 -0
- data/vendor/tracemonkey/t/crypto-sha1.js +224 -0
- data/vendor/tracemonkey/t/date-format-tofte.js +299 -0
- data/vendor/tracemonkey/t/date-format-xparb.js +417 -0
- data/vendor/tracemonkey/t/math-cordic.js +95 -0
- data/vendor/tracemonkey/t/math-partial-sums.js +33 -0
- data/vendor/tracemonkey/t/math-spectral-norm.js +51 -0
- data/vendor/tracemonkey/t/regexp-dna.js +1712 -0
- data/vendor/tracemonkey/t/string-base64.js +135 -0
- data/vendor/tracemonkey/t/string-fasta.js +85 -0
- data/vendor/tracemonkey/t/string-tagcloud.js +265 -0
- data/vendor/tracemonkey/t/string-unpack-code.js +68 -0
- data/vendor/tracemonkey/t/string-validate-input.js +89 -0
- data/vendor/tracemonkey/time.sh +13 -0
- data/vendor/tracemonkey/trace-test.js +5564 -0
- data/vendor/tracemonkey/v8/base.js +187 -0
- data/vendor/tracemonkey/v8/crypto.js +1689 -0
- data/vendor/tracemonkey/v8/deltablue.js +880 -0
- data/vendor/tracemonkey/v8/earley-boyer.js +4682 -0
- data/vendor/tracemonkey/v8/raytrace.js +3418 -0
- data/vendor/tracemonkey/v8/richards.js +539 -0
- data/vendor/tracemonkey/v8/run-crypto.js +44 -0
- data/vendor/tracemonkey/v8/run-deltablue.js +44 -0
- data/vendor/tracemonkey/v8/run-earley-boyer.js +44 -0
- data/vendor/tracemonkey/v8/run-raytrace.js +44 -0
- data/vendor/tracemonkey/v8/run-richards.js +44 -0
- data/vendor/tracemonkey/v8/run.js +49 -0
- data/vendor/tracemonkey/vprof/readme.txt +93 -0
- data/vendor/tracemonkey/vprof/vprof.cpp +360 -0
- data/vendor/tracemonkey/vprof/vprof.h +245 -0
- data/vendor/tracemonkey/xpconnect/Makefile.in +67 -0
- data/vendor/tracemonkey/xpconnect/crashtests/117307-1.html +20 -0
- data/vendor/tracemonkey/xpconnect/crashtests/193710.html +11 -0
- data/vendor/tracemonkey/xpconnect/crashtests/290162-1.html +5 -0
- data/vendor/tracemonkey/xpconnect/crashtests/326615-1.html +16 -0
- data/vendor/tracemonkey/xpconnect/crashtests/328553-1.html +13 -0
- data/vendor/tracemonkey/xpconnect/crashtests/346258-1.html +12 -0
- data/vendor/tracemonkey/xpconnect/crashtests/346512-1-frame1.xhtml +16 -0
- data/vendor/tracemonkey/xpconnect/crashtests/346512-1-frame2.xhtml +15 -0
- data/vendor/tracemonkey/xpconnect/crashtests/346512-1.xhtml +30 -0
- data/vendor/tracemonkey/xpconnect/crashtests/382133-1.html +3 -0
- data/vendor/tracemonkey/xpconnect/crashtests/386680-1.html +22 -0
- data/vendor/tracemonkey/xpconnect/crashtests/394810-1.html +4 -0
- data/vendor/tracemonkey/xpconnect/crashtests/400349-1.html +20 -0
- data/vendor/tracemonkey/xpconnect/crashtests/403356-1.html +13 -0
- data/vendor/tracemonkey/xpconnect/crashtests/418139-1.svg +22 -0
- data/vendor/tracemonkey/xpconnect/crashtests/420513-1.html +11 -0
- data/vendor/tracemonkey/xpconnect/crashtests/453935-1.html +37 -0
- data/vendor/tracemonkey/xpconnect/crashtests/462926.html +12 -0
- data/vendor/tracemonkey/xpconnect/crashtests/468552-1.html +18 -0
- data/vendor/tracemonkey/xpconnect/crashtests/471366-1.html +12 -0
- data/vendor/tracemonkey/xpconnect/crashtests/475185-1.html +13 -0
- data/vendor/tracemonkey/xpconnect/crashtests/475291-1.html +14 -0
- data/vendor/tracemonkey/xpconnect/crashtests/503286-1.html +23 -0
- data/vendor/tracemonkey/xpconnect/crashtests/crashtests.list +21 -0
- data/vendor/tracemonkey/xpconnect/idl/Makefile.in +78 -0
- data/vendor/tracemonkey/xpconnect/idl/XPCIDispatch.idl +51 -0
- data/vendor/tracemonkey/xpconnect/idl/mozIJSSubScriptLoader.idl +64 -0
- data/vendor/tracemonkey/xpconnect/idl/nsIActiveXSecurityPolicy.idl +67 -0
- data/vendor/tracemonkey/xpconnect/idl/nsIDispatchSupport.idl +119 -0
- data/vendor/tracemonkey/xpconnect/idl/nsIJSContextStack.idl +85 -0
- data/vendor/tracemonkey/xpconnect/idl/nsIJSRuntimeService.idl +51 -0
- data/vendor/tracemonkey/xpconnect/idl/nsIScriptError.idl +102 -0
- data/vendor/tracemonkey/xpconnect/idl/nsIScriptableInterfaces.idl +67 -0
- data/vendor/tracemonkey/xpconnect/idl/nsIXPCScriptNotify.idl +66 -0
- data/vendor/tracemonkey/xpconnect/idl/nsIXPCScriptable.idl +183 -0
- data/vendor/tracemonkey/xpconnect/idl/nsIXPCSecurityManager.idl +114 -0
- data/vendor/tracemonkey/xpconnect/idl/nsIXPConnect.idl +819 -0
- data/vendor/tracemonkey/xpconnect/idl/xpcIJSModuleLoader.idl +95 -0
- data/vendor/tracemonkey/xpconnect/idl/xpcIJSWeakReference.idl +49 -0
- data/vendor/tracemonkey/xpconnect/idl/xpccomponents.idl +254 -0
- data/vendor/tracemonkey/xpconnect/idl/xpcexception.idl +66 -0
- data/vendor/tracemonkey/xpconnect/idl/xpcjsid.idl +83 -0
- data/vendor/tracemonkey/xpconnect/loader/ISO8601DateUtils.jsm +176 -0
- data/vendor/tracemonkey/xpconnect/loader/Makefile.in +63 -0
- data/vendor/tracemonkey/xpconnect/loader/XPCOMUtils.jsm +267 -0
- data/vendor/tracemonkey/xpconnect/loader/mozJSComponentLoader.cpp +1717 -0
- data/vendor/tracemonkey/xpconnect/loader/mozJSComponentLoader.h +172 -0
- data/vendor/tracemonkey/xpconnect/loader/mozJSLoaderConstructors.h +101 -0
- data/vendor/tracemonkey/xpconnect/loader/mozJSSubScriptLoader.cpp +360 -0
- data/vendor/tracemonkey/xpconnect/loader/mozJSSubScriptLoader.h +66 -0
- data/vendor/tracemonkey/xpconnect/public/Makefile.in +54 -0
- data/vendor/tracemonkey/xpconnect/public/nsAXPCNativeCallContext.h +89 -0
- data/vendor/tracemonkey/xpconnect/public/nsAutoJSValHolder.h +168 -0
- data/vendor/tracemonkey/xpconnect/public/xpc_map_end.h +327 -0
- data/vendor/tracemonkey/xpconnect/sample/Makefile.in +71 -0
- data/vendor/tracemonkey/xpconnect/sample/README +39 -0
- data/vendor/tracemonkey/xpconnect/sample/xpcsample1.cpp +337 -0
- data/vendor/tracemonkey/xpconnect/sample/xpcsample1.idl +82 -0
- data/vendor/tracemonkey/xpconnect/sample/xpcsample1.js +21 -0
- data/vendor/tracemonkey/xpconnect/shell/Makefile.in +106 -0
- data/vendor/tracemonkey/xpconnect/shell/jsshell.msg +50 -0
- data/vendor/tracemonkey/xpconnect/shell/xpcshell.cpp +1817 -0
- data/vendor/tracemonkey/xpconnect/shell/xpcshellMacUtils.h +43 -0
- data/vendor/tracemonkey/xpconnect/shell/xpcshellMacUtils.mm +54 -0
- data/vendor/tracemonkey/xpconnect/src/Makefile.in +228 -0
- data/vendor/tracemonkey/xpconnect/src/README +3 -0
- data/vendor/tracemonkey/xpconnect/src/XPCCrossOriginWrapper.cpp +1186 -0
- data/vendor/tracemonkey/xpconnect/src/XPCDispConvert.cpp +593 -0
- data/vendor/tracemonkey/xpconnect/src/XPCDispInlines.h +667 -0
- data/vendor/tracemonkey/xpconnect/src/XPCDispInterface.cpp +383 -0
- data/vendor/tracemonkey/xpconnect/src/XPCDispObject.cpp +516 -0
- data/vendor/tracemonkey/xpconnect/src/XPCDispParamPropJSClass.cpp +223 -0
- data/vendor/tracemonkey/xpconnect/src/XPCDispParams.cpp +103 -0
- data/vendor/tracemonkey/xpconnect/src/XPCDispPrivate.h +1401 -0
- data/vendor/tracemonkey/xpconnect/src/XPCDispTearOff.cpp +547 -0
- data/vendor/tracemonkey/xpconnect/src/XPCDispTypeInfo.cpp +471 -0
- data/vendor/tracemonkey/xpconnect/src/XPCIDispatchClassInfo.cpp +139 -0
- data/vendor/tracemonkey/xpconnect/src/XPCIDispatchExtension.cpp +362 -0
- data/vendor/tracemonkey/xpconnect/src/XPCNativeWrapper.cpp +1350 -0
- data/vendor/tracemonkey/xpconnect/src/XPCNativeWrapper.h +88 -0
- data/vendor/tracemonkey/xpconnect/src/XPCSafeJSObjectWrapper.cpp +1148 -0
- data/vendor/tracemonkey/xpconnect/src/XPCSystemOnlyWrapper.cpp +718 -0
- data/vendor/tracemonkey/xpconnect/src/XPCWrapper.cpp +850 -0
- data/vendor/tracemonkey/xpconnect/src/XPCWrapper.h +394 -0
- data/vendor/tracemonkey/xpconnect/src/dom_quickstubs.qsconf +568 -0
- data/vendor/tracemonkey/xpconnect/src/nsDispatchSupport.cpp +348 -0
- data/vendor/tracemonkey/xpconnect/src/nsScriptError.cpp +201 -0
- data/vendor/tracemonkey/xpconnect/src/nsXPConnect.cpp +2609 -0
- data/vendor/tracemonkey/xpconnect/src/qsgen.py +1487 -0
- data/vendor/tracemonkey/xpconnect/src/xpc.msg +217 -0
- data/vendor/tracemonkey/xpconnect/src/xpcJSWeakReference.cpp +148 -0
- data/vendor/tracemonkey/xpconnect/src/xpcJSWeakReference.h +56 -0
- data/vendor/tracemonkey/xpconnect/src/xpccallcontext.cpp +579 -0
- data/vendor/tracemonkey/xpconnect/src/xpccomponents.cpp +4144 -0
- data/vendor/tracemonkey/xpconnect/src/xpccontext.cpp +115 -0
- data/vendor/tracemonkey/xpconnect/src/xpcconvert.cpp +2298 -0
- data/vendor/tracemonkey/xpconnect/src/xpcdebug.cpp +481 -0
- data/vendor/tracemonkey/xpconnect/src/xpcexception.cpp +502 -0
- data/vendor/tracemonkey/xpconnect/src/xpcforwards.h +114 -0
- data/vendor/tracemonkey/xpconnect/src/xpcinlines.h +772 -0
- data/vendor/tracemonkey/xpconnect/src/xpcjsid.cpp +1025 -0
- data/vendor/tracemonkey/xpconnect/src/xpcjsruntime.cpp +1342 -0
- data/vendor/tracemonkey/xpconnect/src/xpclog.cpp +128 -0
- data/vendor/tracemonkey/xpconnect/src/xpclog.h +101 -0
- data/vendor/tracemonkey/xpconnect/src/xpcmaps.cpp +761 -0
- data/vendor/tracemonkey/xpconnect/src/xpcmaps.h +713 -0
- data/vendor/tracemonkey/xpconnect/src/xpcmodule.cpp +136 -0
- data/vendor/tracemonkey/xpconnect/src/xpcprivate.h +4138 -0
- data/vendor/tracemonkey/xpconnect/src/xpcquickstubs.cpp +1128 -0
- data/vendor/tracemonkey/xpconnect/src/xpcquickstubs.h +480 -0
- data/vendor/tracemonkey/xpconnect/src/xpcruntimesvc.cpp +179 -0
- data/vendor/tracemonkey/xpconnect/src/xpcstack.cpp +342 -0
- data/vendor/tracemonkey/xpconnect/src/xpcstring.cpp +139 -0
- data/vendor/tracemonkey/xpconnect/src/xpcthreadcontext.cpp +599 -0
- data/vendor/tracemonkey/xpconnect/src/xpcthrower.cpp +399 -0
- data/vendor/tracemonkey/xpconnect/src/xpcvariant.cpp +850 -0
- data/vendor/tracemonkey/xpconnect/src/xpcwrappedjs.cpp +670 -0
- data/vendor/tracemonkey/xpconnect/src/xpcwrappedjsclass.cpp +2015 -0
- data/vendor/tracemonkey/xpconnect/src/xpcwrappednative.cpp +3482 -0
- data/vendor/tracemonkey/xpconnect/src/xpcwrappednativeinfo.cpp +945 -0
- data/vendor/tracemonkey/xpconnect/src/xpcwrappednativejsops.cpp +2003 -0
- data/vendor/tracemonkey/xpconnect/src/xpcwrappednativeproto.cpp +302 -0
- data/vendor/tracemonkey/xpconnect/src/xpcwrappednativescope.cpp +991 -0
- data/vendor/tracemonkey/xpconnect/tests/Makefile.in +75 -0
- data/vendor/tracemonkey/xpconnect/tests/TestXPC.cpp +785 -0
- data/vendor/tracemonkey/xpconnect/tests/chrome/Makefile.in +51 -0
- data/vendor/tracemonkey/xpconnect/tests/chrome/test_bug500931.xul +43 -0
- data/vendor/tracemonkey/xpconnect/tests/components/Makefile.in +85 -0
- data/vendor/tracemonkey/xpconnect/tests/components/xpctest_array.cpp +388 -0
- data/vendor/tracemonkey/xpconnect/tests/components/xpctest_attributes.cpp +305 -0
- data/vendor/tracemonkey/xpconnect/tests/components/xpctest_calljs.cpp +135 -0
- data/vendor/tracemonkey/xpconnect/tests/components/xpctest_child.cpp +225 -0
- data/vendor/tracemonkey/xpconnect/tests/components/xpctest_const.cpp +76 -0
- data/vendor/tracemonkey/xpconnect/tests/components/xpctest_domstring.cpp +118 -0
- data/vendor/tracemonkey/xpconnect/tests/components/xpctest_echo.cpp +616 -0
- data/vendor/tracemonkey/xpconnect/tests/components/xpctest_in.cpp +204 -0
- data/vendor/tracemonkey/xpconnect/tests/components/xpctest_inout.cpp +171 -0
- data/vendor/tracemonkey/xpconnect/tests/components/xpctest_module.cpp +77 -0
- data/vendor/tracemonkey/xpconnect/tests/components/xpctest_multiple.cpp +554 -0
- data/vendor/tracemonkey/xpconnect/tests/components/xpctest_noisy.cpp +154 -0
- data/vendor/tracemonkey/xpconnect/tests/components/xpctest_out.cpp +335 -0
- data/vendor/tracemonkey/xpconnect/tests/components/xpctest_overloaded.cpp +250 -0
- data/vendor/tracemonkey/xpconnect/tests/components/xpctest_private.h +192 -0
- data/vendor/tracemonkey/xpconnect/tests/components/xpctest_string.cpp +185 -0
- data/vendor/tracemonkey/xpconnect/tests/components/xpctest_variant.cpp +355 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/COM/StdAfx.cpp +12 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/COM/StdAfx.h +28 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/COM/XPCDispUtilities.h +28 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/COM/XPCIDispatchTest.cpp +86 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/COM/XPCIDispatchTest.def +9 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/COM/XPCIDispatchTest.dsp +318 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/COM/XPCIDispatchTest.dsw +29 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/COM/XPCIDispatchTest.idl +454 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/COM/XPCIDispatchTest.rc +145 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/COM/nsXPCDispSimple.cpp +44 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/COM/nsXPCDispSimple.h +56 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/COM/nsXPCDispSimple.rgs +23 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/COM/nsXPCDispTestArrays.cpp +221 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/COM/nsXPCDispTestArrays.h +53 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/COM/nsXPCDispTestArrays.rgs +23 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/COM/nsXPCDispTestMethods.cpp +699 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/COM/nsXPCDispTestMethods.h +138 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/COM/nsXPCDispTestMethods.rgs +23 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/COM/nsXPCDispTestNoIDispatch.cpp +23 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/COM/nsXPCDispTestNoIDispatch.h +41 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/COM/nsXPCDispTestNoIDispatch.rgs +23 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/COM/nsXPCDispTestProperties.cpp +256 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/COM/nsXPCDispTestProperties.h +88 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/COM/nsXPCDispTestProperties.rgs +23 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/COM/nsXPCDispTestScriptOff.cpp +23 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/COM/nsXPCDispTestScriptOff.h +43 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/COM/nsXPCDispTestScriptOff.rgs +23 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/COM/nsXPCDispTestScriptOn.cpp +29 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/COM/nsXPCDispTestScriptOn.h +45 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/COM/nsXPCDispTestScriptOn.rgs +23 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/COM/nsXPCDispTestWrappedJS.cpp +177 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/COM/nsXPCDispTestWrappedJS.h +50 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/COM/nsXPCDispTestWrappedJS.rgs +23 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/COM/resource.h +36 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/Tests/WrappedCOM/Arrays/XPCIDispatchArrayTests.js +54 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/Tests/WrappedCOM/Attributes/XPCIDispatchAttributeTests.js +150 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/Tests/WrappedCOM/General/XPCIDispatchInstantiations.js +122 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/Tests/WrappedCOM/General/XPCStress.js +58 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/Tests/WrappedCOM/Methods/XPCIDispatchMethodTests.js +376 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/Tests/WrappedCOM/shell.js +377 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/Tests/WrappedJS/General/XPCIDispatchTestWrappedJS.js +76 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/Tests/WrappedJS/shell.js +377 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/Tests/exectests.cmd +1 -0
- data/vendor/tracemonkey/xpconnect/tests/idispatch/Tests/jsDriver.pl +1288 -0
- data/vendor/tracemonkey/xpconnect/tests/idl/Makefile.in +61 -0
- data/vendor/tracemonkey/xpconnect/tests/idl/xpctest.idl +312 -0
- data/vendor/tracemonkey/xpconnect/tests/idl/xpctest2.idl +51 -0
- data/vendor/tracemonkey/xpconnect/tests/idl/xpctest_attributes.idl +67 -0
- data/vendor/tracemonkey/xpconnect/tests/idl/xpctest_calljs.idl +59 -0
- data/vendor/tracemonkey/xpconnect/tests/idl/xpctest_const.idl +61 -0
- data/vendor/tracemonkey/xpconnect/tests/idl/xpctest_domstring.idl +59 -0
- data/vendor/tracemonkey/xpconnect/tests/idl/xpctest_in.idl +88 -0
- data/vendor/tracemonkey/xpconnect/tests/idl/xpctest_inout.idl +86 -0
- data/vendor/tracemonkey/xpconnect/tests/idl/xpctest_multiple.idl +77 -0
- data/vendor/tracemonkey/xpconnect/tests/idl/xpctest_out.idl +142 -0
- data/vendor/tracemonkey/xpconnect/tests/js/checkid.js +82 -0
- data/vendor/tracemonkey/xpconnect/tests/js/evaluate.js +311 -0
- data/vendor/tracemonkey/xpconnect/tests/js/exceptions-2.js +153 -0
- data/vendor/tracemonkey/xpconnect/tests/js/exceptions-3.js +194 -0
- data/vendor/tracemonkey/xpconnect/tests/js/exceptions-4.js +297 -0
- data/vendor/tracemonkey/xpconnect/tests/js/exceptions-5.js +343 -0
- data/vendor/tracemonkey/xpconnect/tests/js/exceptions.js +230 -0
- data/vendor/tracemonkey/xpconnect/tests/js/javascript.js +96 -0
- data/vendor/tracemonkey/xpconnect/tests/js/multiple-2.js +151 -0
- data/vendor/tracemonkey/xpconnect/tests/js/multiple-3.js +148 -0
- data/vendor/tracemonkey/xpconnect/tests/js/multiple-4.js +152 -0
- data/vendor/tracemonkey/xpconnect/tests/js/multiple.js +137 -0
- data/vendor/tracemonkey/xpconnect/tests/js/notscriptable.js +104 -0
- data/vendor/tracemonkey/xpconnect/tests/js/old/simpletest.js +36 -0
- data/vendor/tracemonkey/xpconnect/tests/js/old/speed.js +60 -0
- data/vendor/tracemonkey/xpconnect/tests/js/old/testxpc.js +464 -0
- data/vendor/tracemonkey/xpconnect/tests/js/old/threads.js +74 -0
- data/vendor/tracemonkey/xpconnect/tests/js/old/try.js +27 -0
- data/vendor/tracemonkey/xpconnect/tests/js/old/xpctest_array.js +308 -0
- data/vendor/tracemonkey/xpconnect/tests/js/old/xpctest_callcontext.js +68 -0
- data/vendor/tracemonkey/xpconnect/tests/js/old/xpctest_echo.js +636 -0
- data/vendor/tracemonkey/xpconnect/tests/js/old/xpctest_enum_and_sort.js +28 -0
- data/vendor/tracemonkey/xpconnect/tests/js/old/xpctest_enum_constants.js +15 -0
- data/vendor/tracemonkey/xpconnect/tests/js/old/xpctest_enum_create.js +200 -0
- data/vendor/tracemonkey/xpconnect/tests/js/old/xpctest_exceptions.js +167 -0
- data/vendor/tracemonkey/xpconnect/tests/js/old/xpctest_ids.js +135 -0
- data/vendor/tracemonkey/xpconnect/tests/js/old/xpctest_observer.js +36 -0
- data/vendor/tracemonkey/xpconnect/tests/js/old/xpctest_overloaded.js +14 -0
- data/vendor/tracemonkey/xpconnect/tests/js/old/xpctest_primitives.js +141 -0
- data/vendor/tracemonkey/xpconnect/tests/js/old/xpctest_propertybag.js +36 -0
- data/vendor/tracemonkey/xpconnect/tests/js/old/xpctest_variant.js +339 -0
- data/vendor/tracemonkey/xpconnect/tests/js/old/xpctest_variant_array.js +30 -0
- data/vendor/tracemonkey/xpconnect/tests/js/readonlyattributes.js +74 -0
- data/vendor/tracemonkey/xpconnect/tests/js/readwriteattributes.js +101 -0
- data/vendor/tracemonkey/xpconnect/tests/js/scriptable.js +120 -0
- data/vendor/tracemonkey/xpconnect/tests/js/testin.js +203 -0
- data/vendor/tracemonkey/xpconnect/tests/js/xpcfun.js +234 -0
- data/vendor/tracemonkey/xpconnect/tests/js/xpctest_primitives.js +200 -0
- data/vendor/tracemonkey/xpconnect/tests/mochitest/Makefile.in +66 -0
- data/vendor/tracemonkey/xpconnect/tests/mochitest/bug500931_helper.html +7 -0
- data/vendor/tracemonkey/xpconnect/tests/mochitest/inner.html +7 -0
- data/vendor/tracemonkey/xpconnect/tests/mochitest/test_bug361111.xul +29 -0
- data/vendor/tracemonkey/xpconnect/tests/mochitest/test_bug384632.html +32 -0
- data/vendor/tracemonkey/xpconnect/tests/mochitest/test_bug390488.html +65 -0
- data/vendor/tracemonkey/xpconnect/tests/mochitest/test_bug393269.html +46 -0
- data/vendor/tracemonkey/xpconnect/tests/mochitest/test_bug396851.html +43 -0
- data/vendor/tracemonkey/xpconnect/tests/mochitest/test_bug428021.html +41 -0
- data/vendor/tracemonkey/xpconnect/tests/mochitest/test_bug446584.html +49 -0
- data/vendor/tracemonkey/xpconnect/tests/mochitest/test_bug448587.html +31 -0
- data/vendor/tracemonkey/xpconnect/tests/mochitest/test_bug462428.html +42 -0
- data/vendor/tracemonkey/xpconnect/tests/mochitest/test_bug478438.html +66 -0
- data/vendor/tracemonkey/xpconnect/tests/mochitest/test_bug484107.html +100 -0
- data/vendor/tracemonkey/xpconnect/tests/mochitest/test_bug484459.html +36 -0
- data/vendor/tracemonkey/xpconnect/tests/mochitest/test_bug500691.html +28 -0
- data/vendor/tracemonkey/xpconnect/tests/mochitest/test_wrappers.html +116 -0
- data/vendor/tracemonkey/xpconnect/tests/unit/bogus_element_type.jsm +1 -0
- data/vendor/tracemonkey/xpconnect/tests/unit/bogus_exports_type.jsm +1 -0
- data/vendor/tracemonkey/xpconnect/tests/unit/bug451678_subscript.js +2 -0
- data/vendor/tracemonkey/xpconnect/tests/unit/component_import.js +144 -0
- data/vendor/tracemonkey/xpconnect/tests/unit/recursive_importA.jsm +44 -0
- data/vendor/tracemonkey/xpconnect/tests/unit/recursive_importB.jsm +45 -0
- data/vendor/tracemonkey/xpconnect/tests/unit/syntax_error.jsm +1 -0
- data/vendor/tracemonkey/xpconnect/tests/unit/test_bogus_files.js +88 -0
- data/vendor/tracemonkey/xpconnect/tests/unit/test_bug408412.js +51 -0
- data/vendor/tracemonkey/xpconnect/tests/unit/test_bug451678.js +52 -0
- data/vendor/tracemonkey/xpconnect/tests/unit/test_bug_442086.js +68 -0
- data/vendor/tracemonkey/xpconnect/tests/unit/test_import.js +127 -0
- data/vendor/tracemonkey/xpconnect/tests/unit/test_js_weak_references.js +63 -0
- data/vendor/tracemonkey/xpconnect/tests/unit/test_recursive_import.js +62 -0
- data/vendor/tracemonkey/xpconnect/tools/Makefile.in +49 -0
- data/vendor/tracemonkey/xpconnect/tools/idl/Makefile.in +53 -0
- data/vendor/tracemonkey/xpconnect/tools/idl/nsIXPCToolsCompiler.idl +60 -0
- data/vendor/tracemonkey/xpconnect/tools/idl/nsIXPCToolsProfiler.idl +57 -0
- data/vendor/tracemonkey/xpconnect/tools/js/CompileJSFiles.js +28 -0
- data/vendor/tracemonkey/xpconnect/tools/js/ListJSFiles.js +18 -0
- data/vendor/tracemonkey/xpconnect/tools/src/Makefile.in +76 -0
- data/vendor/tracemonkey/xpconnect/tools/src/nsXPCToolsCompiler.cpp +161 -0
- data/vendor/tracemonkey/xpconnect/tools/src/nsXPCToolsModule.cpp +65 -0
- data/vendor/tracemonkey/xpconnect/tools/src/nsXPCToolsProfiler.cpp +370 -0
- data/vendor/tracemonkey/xpconnect/tools/src/xpctools_private.h +236 -0
- metadata +782 -107
- data/test/johnson/nodes/export_test.rb +0 -9
- data/test/johnson/nodes/import_test.rb +0 -13
- data/test/johnson/version_test.rb +0 -13
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
# check-sync-dirs.py --- check that one directory is an exact subset of another
|
|
2
|
+
#
|
|
3
|
+
# Usage: python check-sync-dirs.py COPY ORIGINAL
|
|
4
|
+
#
|
|
5
|
+
# Check that the files present in the directory tree COPY are exact
|
|
6
|
+
# copies of their counterparts in the directory tree ORIGINAL. COPY
|
|
7
|
+
# need not have all the files in ORIGINAL, but COPY may not have files
|
|
8
|
+
# absent from ORIGINAL.
|
|
9
|
+
#
|
|
10
|
+
# Each directory in COPY may have a file named
|
|
11
|
+
# 'check-sync-exceptions', which lists files in COPY that need not be
|
|
12
|
+
# the same as the corresponding file in ORIGINAL, or exist at all in
|
|
13
|
+
# ORIGINAL. (The 'check-sync-exceptions' file itself is always
|
|
14
|
+
# treated as exceptional.) Blank lines and '#' comments in the file
|
|
15
|
+
# are ignored.
|
|
16
|
+
|
|
17
|
+
import sys
|
|
18
|
+
import os
|
|
19
|
+
from os.path import join
|
|
20
|
+
import filecmp
|
|
21
|
+
import textwrap
|
|
22
|
+
import fnmatch
|
|
23
|
+
|
|
24
|
+
if len(sys.argv) != 3:
|
|
25
|
+
print >> sys.stderr, 'TEST-UNEXPECTED-FAIL | check-sync-dirs.py | Usage: %s COPY ORIGINAL' % sys.argv[0]
|
|
26
|
+
sys.exit(1)
|
|
27
|
+
|
|
28
|
+
copy = os.path.abspath(sys.argv[1])
|
|
29
|
+
original = os.path.abspath(sys.argv[2])
|
|
30
|
+
|
|
31
|
+
# Ignore detritus left lying around by editing tools.
|
|
32
|
+
ignored_patterns = ['*~', '.#*', '#*#', '*.orig', '*.rej']
|
|
33
|
+
|
|
34
|
+
# Return the contents of FILENAME, a 'check-sync-exceptions' file, as
|
|
35
|
+
# a dictionary whose keys are exactly the list of filenames, along
|
|
36
|
+
# with the basename of FILENAME itself. If FILENAME does not exist,
|
|
37
|
+
# return the empty dictionary.
|
|
38
|
+
def read_exceptions(filename):
|
|
39
|
+
if (os.path.exists(filename)):
|
|
40
|
+
f = file(filename)
|
|
41
|
+
exceptions = {}
|
|
42
|
+
for line in f:
|
|
43
|
+
line = line.strip()
|
|
44
|
+
if line != '' and line[0] != '#':
|
|
45
|
+
exceptions[line] = None
|
|
46
|
+
exceptions[os.path.basename (filename)] = None
|
|
47
|
+
f.close()
|
|
48
|
+
return exceptions
|
|
49
|
+
else:
|
|
50
|
+
return {}
|
|
51
|
+
|
|
52
|
+
# Return true if FILENAME matches any pattern in the list of filename
|
|
53
|
+
# patterns PATTERNS.
|
|
54
|
+
def fnmatch_any(filename, patterns):
|
|
55
|
+
for pattern in patterns:
|
|
56
|
+
if fnmatch.fnmatch(filename, pattern):
|
|
57
|
+
return True
|
|
58
|
+
return False
|
|
59
|
+
|
|
60
|
+
# Check the contents of the directory tree COPY against ORIGINAL. For each
|
|
61
|
+
# file that differs, apply REPORT to COPY, ORIGINAL, and the file's
|
|
62
|
+
# relative path. COPY and ORIGINAL should be absolute. Ignore files
|
|
63
|
+
# that match patterns given in the list IGNORE.
|
|
64
|
+
def check(copy, original, ignore):
|
|
65
|
+
os.chdir(copy)
|
|
66
|
+
for (dirpath, dirnames, filenames) in os.walk('.'):
|
|
67
|
+
exceptions = read_exceptions(join(dirpath, 'check-sync-exceptions'))
|
|
68
|
+
for filename in filenames:
|
|
69
|
+
if (filename in exceptions) or fnmatch_any(filename, ignore):
|
|
70
|
+
continue
|
|
71
|
+
relative_name = join(dirpath, filename)
|
|
72
|
+
original_name = join(original, relative_name)
|
|
73
|
+
if (os.path.exists(original_name)
|
|
74
|
+
and filecmp.cmp(relative_name, original_name)):
|
|
75
|
+
continue
|
|
76
|
+
report(copy, original, relative_name)
|
|
77
|
+
|
|
78
|
+
differences_found = False
|
|
79
|
+
|
|
80
|
+
# Print an error message for DIFFERING, which was found to differ
|
|
81
|
+
# between COPY and ORIGINAL. Set the global variable differences_found.
|
|
82
|
+
def report(copy, original, differing):
|
|
83
|
+
global differences_found
|
|
84
|
+
if not differences_found:
|
|
85
|
+
print >> sys.stderr, 'TEST-UNEXPECTED-FAIL | check-sync-dirs.py | build file copies are not in sync\n' \
|
|
86
|
+
'TEST-INFO | check-sync-dirs.py | file(s) found in: %s\n' \
|
|
87
|
+
'TEST-INFO | check-sync-dirs.py | differ from their originals in: %s' \
|
|
88
|
+
% (copy, original)
|
|
89
|
+
print >> sys.stderr, 'TEST-INFO | check-sync-dirs.py | differing file: %s' % differing
|
|
90
|
+
differences_found = True
|
|
91
|
+
|
|
92
|
+
check(copy, original, ignored_patterns)
|
|
93
|
+
|
|
94
|
+
if differences_found:
|
|
95
|
+
msg = '''In general, the files in '%s' should always be exact copies of
|
|
96
|
+
originals in '%s'. A change made to one should also be made to the
|
|
97
|
+
other. See 'check-sync-dirs.py' for more details.''' \
|
|
98
|
+
% (copy, original)
|
|
99
|
+
print >> sys.stderr, textwrap.fill(msg, 75)
|
|
100
|
+
sys.exit(1)
|
|
101
|
+
|
|
102
|
+
print >> sys.stderr, 'TEST-PASS | check-sync-dirs.py | %s <= %s' % (copy, original)
|
|
103
|
+
sys.exit(0)
|
|
@@ -0,0 +1,881 @@
|
|
|
1
|
+
#
|
|
2
|
+
# ***** BEGIN LICENSE BLOCK *****
|
|
3
|
+
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
|
|
4
|
+
#
|
|
5
|
+
# The contents of this file are subject to the Mozilla Public License Version
|
|
6
|
+
# 1.1 (the "License"); you may not use this file except in compliance with
|
|
7
|
+
# the License. You may obtain a copy of the License at
|
|
8
|
+
# http://www.mozilla.org/MPL/
|
|
9
|
+
#
|
|
10
|
+
# Software distributed under the License is distributed on an "AS IS" basis,
|
|
11
|
+
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
|
12
|
+
# for the specific language governing rights and limitations under the
|
|
13
|
+
# License.
|
|
14
|
+
#
|
|
15
|
+
# The Original Code is mozilla.org code.
|
|
16
|
+
#
|
|
17
|
+
# The Initial Developer of the Original Code is
|
|
18
|
+
# Netscape Communications Corporation.
|
|
19
|
+
# Portions created by the Initial Developer are Copyright (C) 1998
|
|
20
|
+
# the Initial Developer. All Rights Reserved.
|
|
21
|
+
#
|
|
22
|
+
# Contributor(s):
|
|
23
|
+
# Benjamin Smedberg <benjamin@smedbergs.us>
|
|
24
|
+
#
|
|
25
|
+
# Alternatively, the contents of this file may be used under the terms of
|
|
26
|
+
# either of the GNU General Public License Version 2 or later (the "GPL"),
|
|
27
|
+
# or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
|
|
28
|
+
# in which case the provisions of the GPL or the LGPL are applicable instead
|
|
29
|
+
# of those above. If you wish to allow use of your version of this file only
|
|
30
|
+
# under the terms of either the GPL or the LGPL, and not to allow others to
|
|
31
|
+
# use your version of this file under the terms of the MPL, indicate your
|
|
32
|
+
# decision by deleting the provisions above and replace them with the notice
|
|
33
|
+
# and other provisions required by the GPL or the LGPL. If you do not delete
|
|
34
|
+
# the provisions above, a recipient may use your version of this file under
|
|
35
|
+
# the terms of any one of the MPL, the GPL or the LGPL.
|
|
36
|
+
#
|
|
37
|
+
# ***** END LICENSE BLOCK *****
|
|
38
|
+
|
|
39
|
+
#
|
|
40
|
+
# config.mk
|
|
41
|
+
#
|
|
42
|
+
# Determines the platform and builds the macros needed to load the
|
|
43
|
+
# appropriate platform-specific .mk file, then defines all (most?)
|
|
44
|
+
# of the generic macros.
|
|
45
|
+
#
|
|
46
|
+
|
|
47
|
+
# Define an include-at-most-once flag
|
|
48
|
+
INCLUDED_CONFIG_MK = 1
|
|
49
|
+
|
|
50
|
+
EXIT_ON_ERROR = set -e; # Shell loops continue past errors without this.
|
|
51
|
+
|
|
52
|
+
ifndef topsrcdir
|
|
53
|
+
topsrcdir = $(DEPTH)
|
|
54
|
+
endif
|
|
55
|
+
|
|
56
|
+
ifndef INCLUDED_AUTOCONF_MK
|
|
57
|
+
include $(DEPTH)/config/autoconf.mk
|
|
58
|
+
endif
|
|
59
|
+
ifndef INCLUDED_INSURE_MK
|
|
60
|
+
ifdef MOZ_INSURIFYING
|
|
61
|
+
include $(topsrcdir)/config/insure.mk
|
|
62
|
+
endif
|
|
63
|
+
endif
|
|
64
|
+
|
|
65
|
+
COMMA = ,
|
|
66
|
+
|
|
67
|
+
# Sanity check some variables
|
|
68
|
+
CHECK_VARS := \
|
|
69
|
+
XPI_NAME \
|
|
70
|
+
LIBRARY_NAME \
|
|
71
|
+
MODULE \
|
|
72
|
+
DEPTH \
|
|
73
|
+
SHORT_LIBNAME \
|
|
74
|
+
XPI_PKGNAME \
|
|
75
|
+
INSTALL_EXTENSION_ID \
|
|
76
|
+
SHARED_LIBRARY_NAME \
|
|
77
|
+
STATIC_LIBRARY_NAME \
|
|
78
|
+
$(NULL)
|
|
79
|
+
|
|
80
|
+
# checks for internal spaces or trailing spaces in the variable
|
|
81
|
+
# named by $x
|
|
82
|
+
check-variable = $(if $(filter-out 0 1,$(words $($(x))z)),$(error Spaces are not allowed in $(x)))
|
|
83
|
+
|
|
84
|
+
$(foreach x,$(CHECK_VARS),$(check-variable))
|
|
85
|
+
|
|
86
|
+
# FINAL_TARGET specifies the location into which we copy end-user-shipped
|
|
87
|
+
# build products (typelibs, components, chrome).
|
|
88
|
+
#
|
|
89
|
+
# It will usually be the well-loved $(DIST)/bin, today, but can also be an
|
|
90
|
+
# XPI-contents staging directory for ambitious and right-thinking extensions.
|
|
91
|
+
FINAL_TARGET = $(if $(XPI_NAME),$(DIST)/xpi-stage/$(XPI_NAME),$(DIST)/bin)
|
|
92
|
+
|
|
93
|
+
# MAKE_JARS_TARGET is a staging area for make-jars.pl. When packaging in
|
|
94
|
+
# the jar format, make-jars leaves behind a directory structure that's not
|
|
95
|
+
# needed in $(FINAL_TARGET). For both, flat, and symlink, the directory
|
|
96
|
+
# structure contains the chrome, so leave it in $(FINAL_TARGET).
|
|
97
|
+
ifeq (jar,$(MOZ_CHROME_FILE_FORMAT))
|
|
98
|
+
MAKE_JARS_TARGET = $(if $(XPI_NAME),$(FINAL_TARGET).stage,$(DIST)/chrome-stage)
|
|
99
|
+
else
|
|
100
|
+
MAKE_JARS_TARGET = $(FINAL_TARGET)
|
|
101
|
+
endif
|
|
102
|
+
|
|
103
|
+
#
|
|
104
|
+
# The VERSION_NUMBER is suffixed onto the end of the DLLs we ship.
|
|
105
|
+
# Since the longest of these is 5 characters without the suffix,
|
|
106
|
+
# be sure to not set VERSION_NUMBER to anything longer than 3
|
|
107
|
+
# characters for Win16's sake.
|
|
108
|
+
#
|
|
109
|
+
VERSION_NUMBER = 50
|
|
110
|
+
|
|
111
|
+
ifeq ($(HOST_OS_ARCH),WINNT)
|
|
112
|
+
win_srcdir := $(subst $(topsrcdir),$(WIN_TOP_SRC),$(srcdir))
|
|
113
|
+
BUILD_TOOLS = $(WIN_TOP_SRC)/build/unix
|
|
114
|
+
else
|
|
115
|
+
win_srcdir := $(srcdir)
|
|
116
|
+
BUILD_TOOLS = $(topsrcdir)/build/unix
|
|
117
|
+
endif
|
|
118
|
+
|
|
119
|
+
CONFIG_TOOLS = $(MOZ_BUILD_ROOT)/config
|
|
120
|
+
AUTOCONF_TOOLS = $(topsrcdir)/build/autoconf
|
|
121
|
+
|
|
122
|
+
ifeq ($(OS_ARCH),QNX)
|
|
123
|
+
ifeq ($(OS_TARGET),NTO)
|
|
124
|
+
LD := qcc -Vgcc_ntox86 -nostdlib
|
|
125
|
+
else
|
|
126
|
+
LD := $(CC)
|
|
127
|
+
endif
|
|
128
|
+
endif
|
|
129
|
+
ifeq ($(OS_ARCH),BeOS)
|
|
130
|
+
BEOS_ADDON_WORKAROUND = 1
|
|
131
|
+
endif
|
|
132
|
+
|
|
133
|
+
#
|
|
134
|
+
# Strip off the excessively long version numbers on these platforms,
|
|
135
|
+
# but save the version to allow multiple versions of the same base
|
|
136
|
+
# platform to be built in the same tree.
|
|
137
|
+
#
|
|
138
|
+
ifneq (,$(filter FreeBSD HP-UX IRIX Linux NetBSD OpenBSD OSF1 SunOS,$(OS_ARCH)))
|
|
139
|
+
OS_RELEASE := $(basename $(OS_RELEASE))
|
|
140
|
+
|
|
141
|
+
# Allow the user to ignore the OS_VERSION, which is usually irrelevant.
|
|
142
|
+
ifdef WANT_MOZILLA_CONFIG_OS_VERSION
|
|
143
|
+
OS_VERS := $(suffix $(OS_RELEASE))
|
|
144
|
+
OS_VERSION := $(shell echo $(OS_VERS) | sed 's/-.*//')
|
|
145
|
+
endif
|
|
146
|
+
|
|
147
|
+
endif
|
|
148
|
+
|
|
149
|
+
OS_CONFIG := $(OS_ARCH)$(OS_RELEASE)
|
|
150
|
+
|
|
151
|
+
FINAL_LINK_LIBS = $(DEPTH)/config/final-link-libs
|
|
152
|
+
FINAL_LINK_COMPS = $(DEPTH)/config/final-link-comps
|
|
153
|
+
FINAL_LINK_COMP_NAMES = $(DEPTH)/config/final-link-comp-names
|
|
154
|
+
|
|
155
|
+
MOZ_UNICHARUTIL_LIBS = $(LIBXUL_DIST)/lib/$(LIB_PREFIX)unicharutil_s.$(LIB_SUFFIX)
|
|
156
|
+
MOZ_WIDGET_SUPPORT_LIBS = $(DIST)/lib/$(LIB_PREFIX)widgetsupport_s.$(LIB_SUFFIX)
|
|
157
|
+
|
|
158
|
+
ifdef MOZ_MEMORY
|
|
159
|
+
ifneq ($(OS_ARCH),WINNT)
|
|
160
|
+
JEMALLOC_LIBS = $(MKSHLIB_FORCE_ALL) $(call EXPAND_LIBNAME_PATH,jemalloc,$(DIST)/lib) $(MKSHLIB_UNFORCE_ALL)
|
|
161
|
+
endif
|
|
162
|
+
endif
|
|
163
|
+
|
|
164
|
+
# determine debug-related options
|
|
165
|
+
_DEBUG_CFLAGS :=
|
|
166
|
+
_DEBUG_LDFLAGS :=
|
|
167
|
+
|
|
168
|
+
ifndef MOZ_DEBUG
|
|
169
|
+
# global debugging is disabled
|
|
170
|
+
# check if it was explicitly enabled for this module
|
|
171
|
+
ifneq (, $(findstring $(MODULE), $(MOZ_DEBUG_MODULES)))
|
|
172
|
+
MOZ_DEBUG:=1
|
|
173
|
+
endif
|
|
174
|
+
else
|
|
175
|
+
# global debugging is enabled
|
|
176
|
+
# check if it was explicitly disabled for this module
|
|
177
|
+
ifneq (, $(findstring ^$(MODULE), $(MOZ_DEBUG_MODULES)))
|
|
178
|
+
MOZ_DEBUG:=
|
|
179
|
+
endif
|
|
180
|
+
endif
|
|
181
|
+
|
|
182
|
+
ifdef MOZ_DEBUG
|
|
183
|
+
_DEBUG_CFLAGS += $(MOZ_DEBUG_ENABLE_DEFS)
|
|
184
|
+
XULPPFLAGS += $(MOZ_DEBUG_ENABLE_DEFS)
|
|
185
|
+
else
|
|
186
|
+
_DEBUG_CFLAGS += $(MOZ_DEBUG_DISABLE_DEFS)
|
|
187
|
+
XULPPFLAGS += $(MOZ_DEBUG_DISABLE_DEFS)
|
|
188
|
+
endif
|
|
189
|
+
|
|
190
|
+
# determine if -g should be passed to the compiler, based on
|
|
191
|
+
# the current module, and the value of MOZ_DBGRINFO_MODULES
|
|
192
|
+
|
|
193
|
+
ifdef MOZ_DEBUG
|
|
194
|
+
MOZ_DBGRINFO_MODULES += ALL_MODULES
|
|
195
|
+
pattern := ALL_MODULES ^ALL_MODULES
|
|
196
|
+
else
|
|
197
|
+
MOZ_DBGRINFO_MODULES += ^ALL_MODULES
|
|
198
|
+
pattern := ALL_MODULES ^ALL_MODULES
|
|
199
|
+
endif
|
|
200
|
+
|
|
201
|
+
ifdef MODULE
|
|
202
|
+
# our current Makefile specifies a module name - add it to our pattern
|
|
203
|
+
pattern += $(MODULE) ^$(MODULE)
|
|
204
|
+
endif
|
|
205
|
+
|
|
206
|
+
# start by finding the first relevant module name
|
|
207
|
+
# (remember that the order of the module names in MOZ_DBGRINFO_MODULES
|
|
208
|
+
# is reversed from the order the user specified to configure -
|
|
209
|
+
# this allows the user to put general names at the beginning
|
|
210
|
+
# of the list, and to override them with explicit module names later
|
|
211
|
+
# in the list)
|
|
212
|
+
|
|
213
|
+
first_match:=$(firstword $(filter $(pattern), $(MOZ_DBGRINFO_MODULES)))
|
|
214
|
+
|
|
215
|
+
ifeq ($(first_match), $(MODULE))
|
|
216
|
+
# the user specified explicitly that
|
|
217
|
+
# this module should be compiled with -g
|
|
218
|
+
_DEBUG_CFLAGS += $(MOZ_DEBUG_FLAGS)
|
|
219
|
+
_DEBUG_LDFLAGS += $(MOZ_DEBUG_LDFLAGS)
|
|
220
|
+
else
|
|
221
|
+
ifeq ($(first_match), ^$(MODULE))
|
|
222
|
+
# the user specified explicitly that this module
|
|
223
|
+
# should not be compiled with -g (nothing to do)
|
|
224
|
+
else
|
|
225
|
+
ifeq ($(first_match), ALL_MODULES)
|
|
226
|
+
# the user didn't mention this module explicitly,
|
|
227
|
+
# but wanted all modules to be compiled with -g
|
|
228
|
+
_DEBUG_CFLAGS += $(MOZ_DEBUG_FLAGS)
|
|
229
|
+
_DEBUG_LDFLAGS += $(MOZ_DEBUG_LDFLAGS)
|
|
230
|
+
else
|
|
231
|
+
ifeq ($(first_match), ^ALL_MODULES)
|
|
232
|
+
# the user didn't mention this module explicitly,
|
|
233
|
+
# but wanted all modules to be compiled without -g (nothing to do)
|
|
234
|
+
endif
|
|
235
|
+
endif
|
|
236
|
+
endif
|
|
237
|
+
endif
|
|
238
|
+
|
|
239
|
+
|
|
240
|
+
# append debug flags
|
|
241
|
+
# (these might have been above when processing MOZ_DBGRINFO_MODULES)
|
|
242
|
+
OS_CFLAGS += $(_DEBUG_CFLAGS)
|
|
243
|
+
OS_CXXFLAGS += $(_DEBUG_CFLAGS)
|
|
244
|
+
OS_LDFLAGS += $(_DEBUG_LDFLAGS)
|
|
245
|
+
|
|
246
|
+
# MOZ_PROFILE equivs for win32
|
|
247
|
+
ifeq ($(OS_ARCH)_$(GNU_CC),WINNT_)
|
|
248
|
+
ifdef MOZ_DEBUG
|
|
249
|
+
ifneq (,$(MOZ_BROWSE_INFO)$(MOZ_BSCFILE))
|
|
250
|
+
OS_CFLAGS += -FR
|
|
251
|
+
OS_CXXFLAGS += -FR
|
|
252
|
+
endif
|
|
253
|
+
else # ! MOZ_DEBUG
|
|
254
|
+
|
|
255
|
+
# MOZ_DEBUG_SYMBOLS generates debug symbols in separate PDB files.
|
|
256
|
+
# Used for generating an optimized build with debugging symbols.
|
|
257
|
+
# Used in the Windows nightlies to generate symbols for crash reporting.
|
|
258
|
+
ifdef MOZ_DEBUG_SYMBOLS
|
|
259
|
+
OS_CXXFLAGS += -Zi -UDEBUG -DNDEBUG
|
|
260
|
+
OS_CFLAGS += -Zi -UDEBUG -DNDEBUG
|
|
261
|
+
OS_LDFLAGS += -DEBUG -OPT:REF -OPT:nowin98
|
|
262
|
+
endif
|
|
263
|
+
|
|
264
|
+
ifdef MOZ_QUANTIFY
|
|
265
|
+
# -FIXED:NO is needed for Quantify to work, but it increases the size
|
|
266
|
+
# of executables, so only use it if building for Quantify.
|
|
267
|
+
WIN32_EXE_LDFLAGS += -FIXED:NO
|
|
268
|
+
|
|
269
|
+
# We need -OPT:NOICF to prevent identical methods from being merged together.
|
|
270
|
+
# Otherwise, Quantify doesn't know which method was actually called when it's
|
|
271
|
+
# showing you the profile.
|
|
272
|
+
OS_LDFLAGS += -OPT:NOICF
|
|
273
|
+
endif
|
|
274
|
+
|
|
275
|
+
#
|
|
276
|
+
# Handle trace-malloc in optimized builds.
|
|
277
|
+
# No opt to give sane callstacks.
|
|
278
|
+
#
|
|
279
|
+
ifdef NS_TRACE_MALLOC
|
|
280
|
+
MOZ_OPTIMIZE_FLAGS=-Zi -Od -UDEBUG -DNDEBUG
|
|
281
|
+
OS_LDFLAGS = -DEBUG -PDB:NONE -OPT:REF -OPT:nowin98
|
|
282
|
+
endif # NS_TRACE_MALLOC
|
|
283
|
+
|
|
284
|
+
endif # MOZ_DEBUG
|
|
285
|
+
endif # WINNT && !GNU_CC
|
|
286
|
+
|
|
287
|
+
#
|
|
288
|
+
# Build using PIC by default
|
|
289
|
+
# Do not use PIC if not building a shared lib (see exceptions below)
|
|
290
|
+
#
|
|
291
|
+
|
|
292
|
+
ifndef BUILD_STATIC_LIBS
|
|
293
|
+
_ENABLE_PIC=1
|
|
294
|
+
endif
|
|
295
|
+
ifneq (,$(FORCE_SHARED_LIB)$(FORCE_USE_PIC))
|
|
296
|
+
_ENABLE_PIC=1
|
|
297
|
+
endif
|
|
298
|
+
|
|
299
|
+
# In Firefox, all components are linked into either libxul or the static
|
|
300
|
+
# meta-component, and should be compiled with PIC.
|
|
301
|
+
ifdef MOZ_META_COMPONENT
|
|
302
|
+
_ENABLE_PIC=1
|
|
303
|
+
endif
|
|
304
|
+
|
|
305
|
+
# If module is going to be merged into the nsStaticModule,
|
|
306
|
+
# make sure that the entry points are translated and
|
|
307
|
+
# the module is built static.
|
|
308
|
+
|
|
309
|
+
ifdef IS_COMPONENT
|
|
310
|
+
ifdef EXPORT_LIBRARY
|
|
311
|
+
ifneq (,$(BUILD_STATIC_LIBS))
|
|
312
|
+
ifdef MODULE_NAME
|
|
313
|
+
DEFINES += -DXPCOM_TRANSLATE_NSGM_ENTRY_POINT=1
|
|
314
|
+
FORCE_STATIC_LIB=1
|
|
315
|
+
endif
|
|
316
|
+
endif
|
|
317
|
+
endif
|
|
318
|
+
endif
|
|
319
|
+
|
|
320
|
+
# Determine if module being compiled is destined
|
|
321
|
+
# to be merged into libxul
|
|
322
|
+
|
|
323
|
+
ifdef MOZ_ENABLE_LIBXUL
|
|
324
|
+
ifdef LIBXUL_LIBRARY
|
|
325
|
+
ifdef IS_COMPONENT
|
|
326
|
+
ifdef MODULE_NAME
|
|
327
|
+
DEFINES += -DXPCOM_TRANSLATE_NSGM_ENTRY_POINT=1
|
|
328
|
+
else
|
|
329
|
+
$(error Component makefile does not specify MODULE_NAME.)
|
|
330
|
+
endif
|
|
331
|
+
endif
|
|
332
|
+
FORCE_STATIC_LIB=1
|
|
333
|
+
_ENABLE_PIC=1
|
|
334
|
+
SHORT_LIBNAME=
|
|
335
|
+
endif
|
|
336
|
+
endif
|
|
337
|
+
|
|
338
|
+
# If we are building this component into an extension/xulapp, it cannot be
|
|
339
|
+
# statically linked. In the future we may want to add a xulapp meta-component
|
|
340
|
+
# build option.
|
|
341
|
+
|
|
342
|
+
ifdef XPI_NAME
|
|
343
|
+
_ENABLE_PIC=1
|
|
344
|
+
ifdef IS_COMPONENT
|
|
345
|
+
EXPORT_LIBRARY=
|
|
346
|
+
FORCE_STATIC_LIB=
|
|
347
|
+
FORCE_SHARED_LIB=1
|
|
348
|
+
endif
|
|
349
|
+
endif
|
|
350
|
+
|
|
351
|
+
#
|
|
352
|
+
# Disable PIC if necessary
|
|
353
|
+
#
|
|
354
|
+
|
|
355
|
+
ifndef _ENABLE_PIC
|
|
356
|
+
DSO_CFLAGS=
|
|
357
|
+
ifeq ($(OS_ARCH)_$(HAVE_GCC3_ABI),Darwin_1)
|
|
358
|
+
DSO_PIC_CFLAGS=-mdynamic-no-pic
|
|
359
|
+
else
|
|
360
|
+
DSO_PIC_CFLAGS=
|
|
361
|
+
endif
|
|
362
|
+
endif
|
|
363
|
+
|
|
364
|
+
ifndef SHARED_LIBRARY_NAME
|
|
365
|
+
ifdef LIBRARY_NAME
|
|
366
|
+
SHARED_LIBRARY_NAME=$(LIBRARY_NAME)
|
|
367
|
+
endif
|
|
368
|
+
endif
|
|
369
|
+
|
|
370
|
+
ifndef STATIC_LIBRARY_NAME
|
|
371
|
+
ifdef LIBRARY_NAME
|
|
372
|
+
STATIC_LIBRARY_NAME=$(LIBRARY_NAME)
|
|
373
|
+
endif
|
|
374
|
+
endif
|
|
375
|
+
|
|
376
|
+
# This comes from configure
|
|
377
|
+
ifdef MOZ_PROFILE_GUIDED_OPTIMIZE_DISABLE
|
|
378
|
+
NO_PROFILE_GUIDED_OPTIMIZE = 1
|
|
379
|
+
endif
|
|
380
|
+
|
|
381
|
+
# Enable profile-based feedback
|
|
382
|
+
ifndef NO_PROFILE_GUIDED_OPTIMIZE
|
|
383
|
+
ifdef MOZ_PROFILE_GENERATE
|
|
384
|
+
# No sense in profiling tools
|
|
385
|
+
ifndef INTERNAL_TOOLS
|
|
386
|
+
OS_CFLAGS += $(PROFILE_GEN_CFLAGS)
|
|
387
|
+
OS_CXXFLAGS += $(PROFILE_GEN_CFLAGS)
|
|
388
|
+
OS_LDFLAGS += $(PROFILE_GEN_LDFLAGS)
|
|
389
|
+
ifeq (WINNT,$(OS_ARCH))
|
|
390
|
+
AR_FLAGS += -LTCG
|
|
391
|
+
endif
|
|
392
|
+
endif # INTERNAL_TOOLS
|
|
393
|
+
endif # MOZ_PROFILE_GENERATE
|
|
394
|
+
|
|
395
|
+
ifdef MOZ_PROFILE_USE
|
|
396
|
+
ifndef INTERNAL_TOOLS
|
|
397
|
+
OS_CFLAGS += $(PROFILE_USE_CFLAGS)
|
|
398
|
+
OS_CXXFLAGS += $(PROFILE_USE_CFLAGS)
|
|
399
|
+
OS_LDFLAGS += $(PROFILE_USE_LDFLAGS)
|
|
400
|
+
ifeq (WINNT,$(OS_ARCH))
|
|
401
|
+
AR_FLAGS += -LTCG
|
|
402
|
+
endif
|
|
403
|
+
endif # INTERNAL_TOOLS
|
|
404
|
+
endif # MOZ_PROFILE_USE
|
|
405
|
+
endif # NO_PROFILE_GUIDED_OPTIMIZE
|
|
406
|
+
|
|
407
|
+
|
|
408
|
+
# Does the makefile specifies the internal XPCOM API linkage?
|
|
409
|
+
ifneq (,$(MOZILLA_INTERNAL_API)$(LIBXUL_LIBRARY))
|
|
410
|
+
DEFINES += -DMOZILLA_INTERNAL_API
|
|
411
|
+
endif
|
|
412
|
+
|
|
413
|
+
# Force XPCOM/widget/gfx methods to be _declspec(dllexport) when we're
|
|
414
|
+
# building libxul libraries
|
|
415
|
+
ifdef MOZ_ENABLE_LIBXUL
|
|
416
|
+
ifdef LIBXUL_LIBRARY
|
|
417
|
+
DEFINES += \
|
|
418
|
+
-D_IMPL_NS_COM \
|
|
419
|
+
-DEXPORT_XPT_API \
|
|
420
|
+
-DEXPORT_XPTC_API \
|
|
421
|
+
-D_IMPL_NS_COM_OBSOLETE \
|
|
422
|
+
-D_IMPL_NS_GFX \
|
|
423
|
+
-D_IMPL_NS_WIDGET \
|
|
424
|
+
-DIMPL_XREAPI \
|
|
425
|
+
-DIMPL_NS_NET \
|
|
426
|
+
-DIMPL_THEBES \
|
|
427
|
+
$(NULL)
|
|
428
|
+
|
|
429
|
+
ifndef MOZ_NATIVE_ZLIB
|
|
430
|
+
DEFINES += -DZLIB_INTERNAL
|
|
431
|
+
endif
|
|
432
|
+
endif
|
|
433
|
+
endif
|
|
434
|
+
|
|
435
|
+
# Force _all_ exported methods to be |_declspec(dllexport)| when we're
|
|
436
|
+
# building them into the executable.
|
|
437
|
+
|
|
438
|
+
ifeq (,$(filter-out WINNT WINCE OS2, $(OS_ARCH)))
|
|
439
|
+
ifdef BUILD_STATIC_LIBS
|
|
440
|
+
DEFINES += \
|
|
441
|
+
-D_IMPL_NS_GFX \
|
|
442
|
+
-D_IMPL_NS_MSG_BASE \
|
|
443
|
+
-D_IMPL_NS_WIDGET \
|
|
444
|
+
$(NULL)
|
|
445
|
+
endif
|
|
446
|
+
endif
|
|
447
|
+
|
|
448
|
+
# Flags passed to make-jars.pl
|
|
449
|
+
|
|
450
|
+
MAKE_JARS_FLAGS = \
|
|
451
|
+
-t $(topsrcdir) \
|
|
452
|
+
-f $(MOZ_CHROME_FILE_FORMAT) \
|
|
453
|
+
$(NULL)
|
|
454
|
+
|
|
455
|
+
ifdef USE_EXTENSION_MANIFEST
|
|
456
|
+
MAKE_JARS_FLAGS += -e
|
|
457
|
+
endif
|
|
458
|
+
|
|
459
|
+
ifdef BOTH_MANIFESTS
|
|
460
|
+
MAKE_JARS_FLAGS += --both-manifests
|
|
461
|
+
endif
|
|
462
|
+
|
|
463
|
+
TAR_CREATE_FLAGS = -cvhf
|
|
464
|
+
|
|
465
|
+
ifeq ($(OS_ARCH),BSD_OS)
|
|
466
|
+
TAR_CREATE_FLAGS = -cvLf
|
|
467
|
+
endif
|
|
468
|
+
|
|
469
|
+
ifeq ($(OS_ARCH),OS2)
|
|
470
|
+
TAR_CREATE_FLAGS = -cvf
|
|
471
|
+
endif
|
|
472
|
+
|
|
473
|
+
#
|
|
474
|
+
# Personal makefile customizations go in these optional make include files.
|
|
475
|
+
#
|
|
476
|
+
MY_CONFIG := $(DEPTH)/config/myconfig.mk
|
|
477
|
+
MY_RULES := $(DEPTH)/config/myrules.mk
|
|
478
|
+
|
|
479
|
+
#
|
|
480
|
+
# Default command macros; can be overridden in <arch>.mk.
|
|
481
|
+
#
|
|
482
|
+
CCC = $(CXX)
|
|
483
|
+
NFSPWD = $(CONFIG_TOOLS)/nfspwd
|
|
484
|
+
PURIFY = purify $(PURIFYOPTIONS)
|
|
485
|
+
QUANTIFY = quantify $(QUANTIFYOPTIONS)
|
|
486
|
+
ifdef CROSS_COMPILE
|
|
487
|
+
XPIDL_COMPILE = $(CYGWIN_WRAPPER) $(LIBXUL_DIST)/host/bin/host_xpidl$(HOST_BIN_SUFFIX)
|
|
488
|
+
XPIDL_LINK = $(CYGWIN_WRAPPER) $(LIBXUL_DIST)/host/bin/host_xpt_link$(HOST_BIN_SUFFIX)
|
|
489
|
+
else
|
|
490
|
+
XPIDL_COMPILE = $(CYGWIN_WRAPPER) $(LIBXUL_DIST)/bin/xpidl$(BIN_SUFFIX)
|
|
491
|
+
XPIDL_LINK = $(CYGWIN_WRAPPER) $(LIBXUL_DIST)/bin/xpt_link$(BIN_SUFFIX)
|
|
492
|
+
endif
|
|
493
|
+
|
|
494
|
+
# Java macros
|
|
495
|
+
JAVA_GEN_DIR = _javagen
|
|
496
|
+
JAVA_DIST_DIR = $(DEPTH)/$(JAVA_GEN_DIR)
|
|
497
|
+
JAVA_IFACES_PKG_NAME = org/mozilla/interfaces
|
|
498
|
+
|
|
499
|
+
REQ_INCLUDES = -I$(srcdir) -I. $(foreach d,$(REQUIRES),-I$(DIST)/include/$d) -I$(DIST)/include
|
|
500
|
+
ifdef LIBXUL_SDK
|
|
501
|
+
REQ_INCLUDES_SDK = $(foreach d,$(REQUIRES),-I$(LIBXUL_SDK)/include/$d) -I$(LIBXUL_SDK)/include
|
|
502
|
+
endif
|
|
503
|
+
|
|
504
|
+
INCLUDES = $(LOCAL_INCLUDES) $(REQ_INCLUDES) $(REQ_INCLUDES_SDK) -I$(PUBLIC) $(OS_INCLUDES)
|
|
505
|
+
|
|
506
|
+
ifndef MOZILLA_INTERNAL_API
|
|
507
|
+
INCLUDES += -I$(LIBXUL_DIST)/sdk/include
|
|
508
|
+
endif
|
|
509
|
+
|
|
510
|
+
include $(topsrcdir)/config/static-checking-config.mk
|
|
511
|
+
|
|
512
|
+
CFLAGS = $(OS_CFLAGS)
|
|
513
|
+
CXXFLAGS = $(OS_CXXFLAGS)
|
|
514
|
+
LDFLAGS = $(OS_LDFLAGS) $(MOZ_FIX_LINK_PATHS)
|
|
515
|
+
|
|
516
|
+
# Allow each module to override the *default* optimization settings
|
|
517
|
+
# by setting MODULE_OPTIMIZE_FLAGS if the developer has not given
|
|
518
|
+
# arguments to --enable-optimize
|
|
519
|
+
ifdef MOZ_OPTIMIZE
|
|
520
|
+
ifeq (1,$(MOZ_OPTIMIZE))
|
|
521
|
+
ifdef MODULE_OPTIMIZE_FLAGS
|
|
522
|
+
CFLAGS += $(MODULE_OPTIMIZE_FLAGS)
|
|
523
|
+
CXXFLAGS += $(MODULE_OPTIMIZE_FLAGS)
|
|
524
|
+
else
|
|
525
|
+
CFLAGS += $(MOZ_OPTIMIZE_FLAGS)
|
|
526
|
+
CXXFLAGS += $(MOZ_OPTIMIZE_FLAGS)
|
|
527
|
+
endif # MODULE_OPTIMIZE_FLAGS
|
|
528
|
+
else
|
|
529
|
+
CFLAGS += $(MOZ_OPTIMIZE_FLAGS)
|
|
530
|
+
CXXFLAGS += $(MOZ_OPTIMIZE_FLAGS)
|
|
531
|
+
endif # MOZ_OPTIMIZE == 1
|
|
532
|
+
LDFLAGS += $(MOZ_OPTIMIZE_LDFLAGS)
|
|
533
|
+
endif # MOZ_OPTIMIZE
|
|
534
|
+
|
|
535
|
+
ifdef CROSS_COMPILE
|
|
536
|
+
HOST_CFLAGS += $(HOST_OPTIMIZE_FLAGS)
|
|
537
|
+
else
|
|
538
|
+
ifdef MOZ_OPTIMIZE
|
|
539
|
+
ifeq (1,$(MOZ_OPTIMIZE))
|
|
540
|
+
ifdef MODULE_OPTIMIZE_FLAGS
|
|
541
|
+
HOST_CFLAGS += $(MODULE_OPTIMIZE_FLAGS)
|
|
542
|
+
else
|
|
543
|
+
HOST_CFLAGS += $(MOZ_OPTIMIZE_FLAGS)
|
|
544
|
+
endif # MODULE_OPTIMIZE_FLAGS
|
|
545
|
+
else
|
|
546
|
+
HOST_CFLAGS += $(MOZ_OPTIMIZE_FLAGS)
|
|
547
|
+
endif # MOZ_OPTIMIZE == 1
|
|
548
|
+
endif # MOZ_OPTIMIZE
|
|
549
|
+
endif # CROSS_COMPILE
|
|
550
|
+
|
|
551
|
+
|
|
552
|
+
ifeq ($(OS_ARCH)_$(GNU_CC),WINNT_)
|
|
553
|
+
#// Currently, unless USE_STATIC_LIBS is defined, the multithreaded
|
|
554
|
+
#// DLL version of the RTL is used...
|
|
555
|
+
#//
|
|
556
|
+
#//------------------------------------------------------------------------
|
|
557
|
+
ifdef USE_STATIC_LIBS
|
|
558
|
+
RTL_FLAGS=-MT # Statically linked multithreaded RTL
|
|
559
|
+
ifneq (,$(MOZ_DEBUG)$(NS_TRACE_MALLOC))
|
|
560
|
+
ifndef MOZ_NO_DEBUG_RTL
|
|
561
|
+
RTL_FLAGS=-MTd # Statically linked multithreaded MSVC4.0 debug RTL
|
|
562
|
+
endif
|
|
563
|
+
endif # MOZ_DEBUG || NS_TRACE_MALLOC
|
|
564
|
+
|
|
565
|
+
else # !USE_STATIC_LIBS
|
|
566
|
+
|
|
567
|
+
RTL_FLAGS=-MD # Dynamically linked, multithreaded RTL
|
|
568
|
+
ifneq (,$(MOZ_DEBUG)$(NS_TRACE_MALLOC))
|
|
569
|
+
ifndef MOZ_NO_DEBUG_RTL
|
|
570
|
+
RTL_FLAGS=-MDd # Dynamically linked, multithreaded MSVC4.0 debug RTL
|
|
571
|
+
endif
|
|
572
|
+
endif # MOZ_DEBUG || NS_TRACE_MALLOC
|
|
573
|
+
endif # USE_STATIC_LIBS
|
|
574
|
+
endif # WINNT && !GNU_CC
|
|
575
|
+
|
|
576
|
+
ifeq ($(OS_ARCH),Darwin)
|
|
577
|
+
# Darwin doesn't cross-compile, so just set both types of flags here.
|
|
578
|
+
HOST_CMFLAGS += -fobjc-exceptions
|
|
579
|
+
HOST_CMMFLAGS += -fobjc-exceptions
|
|
580
|
+
OS_COMPILE_CMFLAGS += -fobjc-exceptions
|
|
581
|
+
OS_COMPILE_CMMFLAGS += -fobjc-exceptions
|
|
582
|
+
endif
|
|
583
|
+
|
|
584
|
+
COMPILE_CFLAGS = $(VISIBILITY_FLAGS) $(DEFINES) $(INCLUDES) $(XCFLAGS) $(PROFILER_CFLAGS) $(DSO_CFLAGS) $(DSO_PIC_CFLAGS) $(CFLAGS) $(RTL_FLAGS) $(OS_COMPILE_CFLAGS)
|
|
585
|
+
COMPILE_CXXFLAGS = $(VISIBILITY_FLAGS) $(DEFINES) $(INCLUDES) $(XCFLAGS) $(PROFILER_CFLAGS) $(DSO_CFLAGS) $(DSO_PIC_CFLAGS) $(CXXFLAGS) $(RTL_FLAGS) $(OS_COMPILE_CXXFLAGS)
|
|
586
|
+
COMPILE_CMFLAGS = $(OS_COMPILE_CMFLAGS)
|
|
587
|
+
COMPILE_CMMFLAGS = $(OS_COMPILE_CMMFLAGS)
|
|
588
|
+
|
|
589
|
+
ifndef CROSS_COMPILE
|
|
590
|
+
HOST_CFLAGS += $(RTL_FLAGS)
|
|
591
|
+
endif
|
|
592
|
+
|
|
593
|
+
#
|
|
594
|
+
# Name of the binary code directories
|
|
595
|
+
#
|
|
596
|
+
# Override defaults
|
|
597
|
+
|
|
598
|
+
# We need to know where to find the libraries we
|
|
599
|
+
# put on the link line for binaries, and should
|
|
600
|
+
# we link statically or dynamic? Assuming dynamic for now.
|
|
601
|
+
|
|
602
|
+
ifneq (WINNT_,$(OS_ARCH)_$(GNU_CC))
|
|
603
|
+
ifneq (,$(filter-out WINCE,$(OS_ARCH)))
|
|
604
|
+
LIBS_DIR = -L$(DIST)/bin -L$(DIST)/lib
|
|
605
|
+
ifdef LIBXUL_SDK
|
|
606
|
+
LIBS_DIR += -L$(LIBXUL_SDK)/bin -L$(LIBXUL_SDK)/lib
|
|
607
|
+
endif
|
|
608
|
+
endif
|
|
609
|
+
endif
|
|
610
|
+
|
|
611
|
+
# Default location of include files
|
|
612
|
+
IDL_DIR = $(DIST)/idl
|
|
613
|
+
ifdef MODULE
|
|
614
|
+
PUBLIC = $(DIST)/include/$(MODULE)
|
|
615
|
+
else
|
|
616
|
+
PUBLIC = $(DIST)/include
|
|
617
|
+
endif
|
|
618
|
+
|
|
619
|
+
XPIDL_FLAGS = -I$(srcdir) -I$(IDL_DIR)
|
|
620
|
+
ifdef LIBXUL_SDK
|
|
621
|
+
XPIDL_FLAGS += -I$(LIBXUL_SDK)/idl
|
|
622
|
+
endif
|
|
623
|
+
|
|
624
|
+
SDK_PUBLIC = $(DIST)/sdk/include
|
|
625
|
+
SDK_IDL_DIR = $(DIST)/sdk/idl
|
|
626
|
+
SDK_LIB_DIR = $(DIST)/sdk/lib
|
|
627
|
+
SDK_BIN_DIR = $(DIST)/sdk/bin
|
|
628
|
+
|
|
629
|
+
DEPENDENCIES = .md
|
|
630
|
+
|
|
631
|
+
MOZ_COMPONENT_LIBS=$(XPCOM_LIBS) $(MOZ_COMPONENT_NSPR_LIBS)
|
|
632
|
+
|
|
633
|
+
ifdef GC_LEAK_DETECTOR
|
|
634
|
+
XPCOM_LIBS += -lboehm
|
|
635
|
+
endif
|
|
636
|
+
|
|
637
|
+
ifeq (xpconnect, $(findstring xpconnect, $(BUILD_MODULES)))
|
|
638
|
+
DEFINES += -DXPCONNECT_STANDALONE
|
|
639
|
+
endif
|
|
640
|
+
|
|
641
|
+
ifeq ($(OS_ARCH),OS2)
|
|
642
|
+
ELF_DYNSTR_GC = echo
|
|
643
|
+
else
|
|
644
|
+
ELF_DYNSTR_GC = :
|
|
645
|
+
endif
|
|
646
|
+
|
|
647
|
+
ifndef CROSS_COMPILE
|
|
648
|
+
ifdef USE_ELF_DYNSTR_GC
|
|
649
|
+
ifdef MOZ_COMPONENTS_VERSION_SCRIPT_LDFLAGS
|
|
650
|
+
ELF_DYNSTR_GC = $(DEPTH)/config/elf-dynstr-gc
|
|
651
|
+
endif
|
|
652
|
+
endif
|
|
653
|
+
endif
|
|
654
|
+
|
|
655
|
+
ifeq ($(OS_ARCH),Darwin)
|
|
656
|
+
ifdef NEXT_ROOT
|
|
657
|
+
export NEXT_ROOT
|
|
658
|
+
PBBUILD = NEXT_ROOT= $(PBBUILD_BIN)
|
|
659
|
+
else # NEXT_ROOT
|
|
660
|
+
PBBUILD = $(PBBUILD_BIN)
|
|
661
|
+
endif # NEXT_ROOT
|
|
662
|
+
PBBUILD_SETTINGS = GCC_VERSION="$(GCC_VERSION)" SYMROOT=build ARCHS="$(OS_TEST)"
|
|
663
|
+
ifdef MACOS_SDK_DIR
|
|
664
|
+
PBBUILD_SETTINGS += SDKROOT="$(MACOS_SDK_DIR)"
|
|
665
|
+
endif # MACOS_SDK_DIR
|
|
666
|
+
ifdef MACOSX_DEPLOYMENT_TARGET
|
|
667
|
+
export MACOSX_DEPLOYMENT_TARGET
|
|
668
|
+
PBBUILD_SETTINGS += MACOSX_DEPLOYMENT_TARGET="$(MACOSX_DEPLOYMENT_TARGET)"
|
|
669
|
+
endif # MACOSX_DEPLOYMENT_TARGET
|
|
670
|
+
ifdef MOZ_OPTIMIZE
|
|
671
|
+
ifeq (2,$(MOZ_OPTIMIZE))
|
|
672
|
+
# Only override project defaults if the config specified explicit settings
|
|
673
|
+
PBBUILD_SETTINGS += GCC_MODEL_TUNING= OPTIMIZATION_CFLAGS="$(MOZ_OPTIMIZE_FLAGS)"
|
|
674
|
+
endif # MOZ_OPTIMIZE=2
|
|
675
|
+
endif # MOZ_OPTIMIZE
|
|
676
|
+
ifeq (1,$(HAS_XCODE_2_1))
|
|
677
|
+
# Xcode 2.1 puts its build products in a directory corresponding to the
|
|
678
|
+
# selected build style/configuration.
|
|
679
|
+
XCODE_PRODUCT_DIR = build/$(BUILDSTYLE)
|
|
680
|
+
else
|
|
681
|
+
XCODE_PRODUCT_DIR = build
|
|
682
|
+
endif # HAS_XCODE_2_1=1
|
|
683
|
+
endif # OS_ARCH=Darwin
|
|
684
|
+
|
|
685
|
+
|
|
686
|
+
ifdef MOZ_NATIVE_MAKEDEPEND
|
|
687
|
+
MKDEPEND_DIR =
|
|
688
|
+
MKDEPEND = $(CYGWIN_WRAPPER) $(MOZ_NATIVE_MAKEDEPEND)
|
|
689
|
+
else
|
|
690
|
+
MKDEPEND_DIR = $(CONFIG_TOOLS)/mkdepend
|
|
691
|
+
MKDEPEND = $(CYGWIN_WRAPPER) $(MKDEPEND_DIR)/mkdepend$(BIN_SUFFIX)
|
|
692
|
+
endif
|
|
693
|
+
|
|
694
|
+
# Set link flags according to whether we want a console.
|
|
695
|
+
ifdef MOZ_WINCONSOLE
|
|
696
|
+
ifeq ($(MOZ_WINCONSOLE),1)
|
|
697
|
+
ifeq ($(OS_ARCH),OS2)
|
|
698
|
+
BIN_FLAGS += -Zlinker -PM:VIO
|
|
699
|
+
endif
|
|
700
|
+
ifeq ($(OS_ARCH),WINNT)
|
|
701
|
+
ifdef GNU_CC
|
|
702
|
+
WIN32_EXE_LDFLAGS += -mconsole
|
|
703
|
+
else
|
|
704
|
+
WIN32_EXE_LDFLAGS += -SUBSYSTEM:CONSOLE
|
|
705
|
+
endif
|
|
706
|
+
endif
|
|
707
|
+
else # MOZ_WINCONSOLE
|
|
708
|
+
ifeq ($(OS_ARCH),OS2)
|
|
709
|
+
BIN_FLAGS += -Zlinker -PM:PM
|
|
710
|
+
endif
|
|
711
|
+
ifeq ($(OS_ARCH),WINNT)
|
|
712
|
+
ifdef GNU_CC
|
|
713
|
+
WIN32_EXE_LDFLAGS += -mwindows
|
|
714
|
+
else
|
|
715
|
+
WIN32_EXE_LDFLAGS += -SUBSYSTEM:WINDOWS
|
|
716
|
+
endif
|
|
717
|
+
endif
|
|
718
|
+
endif
|
|
719
|
+
endif
|
|
720
|
+
|
|
721
|
+
# Flags needed to link against the component library
|
|
722
|
+
ifdef MOZ_COMPONENTLIB
|
|
723
|
+
MOZ_COMPONENTLIB_EXTRA_DSO_LIBS = mozcomps xpcom_compat
|
|
724
|
+
|
|
725
|
+
# Tell the linker where NSS is, if we're building crypto
|
|
726
|
+
ifeq ($(OS_ARCH),Darwin)
|
|
727
|
+
ifeq (,$(findstring crypto,$(MOZ_META_COMPONENTS)))
|
|
728
|
+
MOZ_COMPONENTLIB_EXTRA_LIBS = $(foreach library, $(patsubst -l%, $(LIB_PREFIX)%$(DLL_SUFFIX), $(filter -l%, $(NSS_LIBS))), -dylib_file @executable_path/$(library):$(DIST)/bin/$(library))
|
|
729
|
+
endif
|
|
730
|
+
endif
|
|
731
|
+
endif
|
|
732
|
+
|
|
733
|
+
# If we're building a component on MSVC, we don't want to generate an
|
|
734
|
+
# import lib, because that import lib will collide with the name of a
|
|
735
|
+
# static version of the same library.
|
|
736
|
+
ifeq ($(GNU_LD)$(OS_ARCH),WINNT)
|
|
737
|
+
ifdef IS_COMPONENT
|
|
738
|
+
LDFLAGS += -IMPLIB:fake.lib
|
|
739
|
+
DELETE_AFTER_LINK = fake.lib fake.exp
|
|
740
|
+
endif
|
|
741
|
+
endif
|
|
742
|
+
|
|
743
|
+
#
|
|
744
|
+
# Include any personal overrides the user might think are needed.
|
|
745
|
+
#
|
|
746
|
+
-include $(topsrcdir)/$(MOZ_BUILD_APP)/app-config.mk
|
|
747
|
+
-include $(MY_CONFIG)
|
|
748
|
+
|
|
749
|
+
######################################################################
|
|
750
|
+
# Now test variables that might have been set or overridden by $(MY_CONFIG).
|
|
751
|
+
|
|
752
|
+
DEFINES += -DOSTYPE=\"$(OS_CONFIG)\"
|
|
753
|
+
DEFINES += -DOSARCH=$(OS_ARCH)
|
|
754
|
+
|
|
755
|
+
# For profiling
|
|
756
|
+
ifdef ENABLE_EAZEL_PROFILER
|
|
757
|
+
ifndef INTERNAL_TOOLS
|
|
758
|
+
ifneq ($(LIBRARY_NAME), xpt)
|
|
759
|
+
ifneq (, $(findstring $(shell $(topsrcdir)/build/unix/print-depth-path.sh | awk -F/ '{ print $$2; }'), $(MOZ_PROFILE_MODULES)))
|
|
760
|
+
PROFILER_CFLAGS = $(EAZEL_PROFILER_CFLAGS) -DENABLE_EAZEL_PROFILER
|
|
761
|
+
PROFILER_LIBS = $(EAZEL_PROFILER_LIBS)
|
|
762
|
+
endif
|
|
763
|
+
endif
|
|
764
|
+
endif
|
|
765
|
+
endif
|
|
766
|
+
|
|
767
|
+
######################################################################
|
|
768
|
+
|
|
769
|
+
GARBAGE += $(DEPENDENCIES) $(MKDEPENDENCIES) $(MKDEPENDENCIES).bak core $(wildcard core.[0-9]*) $(wildcard *.err) $(wildcard *.pure) $(wildcard *_pure_*.o) Templates.DB
|
|
770
|
+
|
|
771
|
+
ifeq ($(OS_ARCH),Darwin)
|
|
772
|
+
ifndef NSDISTMODE
|
|
773
|
+
NSDISTMODE=absolute_symlink
|
|
774
|
+
endif
|
|
775
|
+
PWD := $(shell pwd)
|
|
776
|
+
endif
|
|
777
|
+
|
|
778
|
+
ifdef NSINSTALL_BIN
|
|
779
|
+
NSINSTALL = $(CYGWIN_WRAPPER) $(NSINSTALL_BIN)
|
|
780
|
+
else
|
|
781
|
+
ifeq (WINNT,$(CROSS_COMPILE)$(OS_ARCH))
|
|
782
|
+
NSINSTALL = $(CYGWIN_WRAPPER) $(MOZ_TOOLS_DIR)/bin/nsinstall
|
|
783
|
+
else
|
|
784
|
+
ifeq (OS2,$(CROSS_COMPILE)$(OS_ARCH))
|
|
785
|
+
NSINSTALL = $(MOZ_TOOLS_DIR)/nsinstall
|
|
786
|
+
else
|
|
787
|
+
NSINSTALL = $(CONFIG_TOOLS)/nsinstall
|
|
788
|
+
endif # OS2
|
|
789
|
+
endif # WINNT
|
|
790
|
+
endif # NSINSTALL_BIN
|
|
791
|
+
|
|
792
|
+
|
|
793
|
+
ifeq (,$(CROSS_COMPILE)$(filter-out WINNT OS2, $(OS_ARCH)))
|
|
794
|
+
INSTALL = $(NSINSTALL)
|
|
795
|
+
else
|
|
796
|
+
ifeq ($(NSDISTMODE),copy)
|
|
797
|
+
# copy files, but preserve source mtime
|
|
798
|
+
INSTALL = $(NSINSTALL) -t
|
|
799
|
+
else
|
|
800
|
+
ifeq ($(NSDISTMODE),absolute_symlink)
|
|
801
|
+
# install using absolute symbolic links
|
|
802
|
+
ifeq ($(OS_ARCH),Darwin)
|
|
803
|
+
INSTALL = $(NSINSTALL) -L $(PWD)
|
|
804
|
+
else
|
|
805
|
+
INSTALL = $(NSINSTALL) -L `$(NFSPWD)`
|
|
806
|
+
endif # Darwin
|
|
807
|
+
else
|
|
808
|
+
# install using relative symbolic links
|
|
809
|
+
INSTALL = $(NSINSTALL) -R
|
|
810
|
+
endif # absolute_symlink
|
|
811
|
+
endif # copy
|
|
812
|
+
endif # WINNT/OS2
|
|
813
|
+
|
|
814
|
+
ifeq (,$(filter-out WINCE,$(OS_ARCH)))
|
|
815
|
+
NSINSTALL = $(CYGWIN_WRAPPER) nsinstall
|
|
816
|
+
INSTALL = $(CYGWIN_WRAPPER) nsinstall
|
|
817
|
+
endif
|
|
818
|
+
|
|
819
|
+
# Use nsinstall in copy mode to install files on the system
|
|
820
|
+
SYSINSTALL = $(NSINSTALL) -t
|
|
821
|
+
|
|
822
|
+
ifeq ($(OS_ARCH),WINNT)
|
|
823
|
+
ifneq (,$(CYGDRIVE_MOUNT))
|
|
824
|
+
export CYGDRIVE_MOUNT
|
|
825
|
+
endif
|
|
826
|
+
endif
|
|
827
|
+
|
|
828
|
+
#
|
|
829
|
+
# Localization build automation
|
|
830
|
+
#
|
|
831
|
+
|
|
832
|
+
# Because you might wish to "make locales AB_CD=ab-CD", we don't hardcode
|
|
833
|
+
# MOZ_UI_LOCALE directly, but use an intermediate variable that can be
|
|
834
|
+
# overridden by the command line. (Besides, AB_CD is prettier).
|
|
835
|
+
AB_CD = $(MOZ_UI_LOCALE)
|
|
836
|
+
|
|
837
|
+
ifndef L10NBASEDIR
|
|
838
|
+
L10NBASEDIR = $(error L10NBASEDIR not defined by configure)
|
|
839
|
+
endif
|
|
840
|
+
|
|
841
|
+
EXPAND_LOCALE_SRCDIR = $(if $(filter en-US,$(AB_CD)),$(topsrcdir)/$(1)/en-US,$(L10NBASEDIR)/$(AB_CD)/$(subst /locales,,$(1)))
|
|
842
|
+
|
|
843
|
+
ifdef relativesrcdir
|
|
844
|
+
LOCALE_SRCDIR = $(call EXPAND_LOCALE_SRCDIR,$(relativesrcdir))
|
|
845
|
+
endif
|
|
846
|
+
|
|
847
|
+
ifdef LOCALE_SRCDIR
|
|
848
|
+
# if LOCALE_MERGEDIR is set, use mergedir first, then the localization,
|
|
849
|
+
# and finally en-US
|
|
850
|
+
ifdef LOCALE_MERGEDIR
|
|
851
|
+
MAKE_JARS_FLAGS += -c $(LOCALE_MERGEDIR)/$(subst /locales,,$(relativesrcdir))
|
|
852
|
+
endif
|
|
853
|
+
MAKE_JARS_FLAGS += -c $(LOCALE_SRCDIR)
|
|
854
|
+
ifdef LOCALE_MERGEDIR
|
|
855
|
+
MAKE_JARS_FLAGS += -c $(topsrcdir)/$(relativesrcdir)/en-US
|
|
856
|
+
endif
|
|
857
|
+
endif
|
|
858
|
+
|
|
859
|
+
ifeq (,$(filter WINCE WINNT OS2,$(OS_ARCH)))
|
|
860
|
+
RUN_TEST_PROGRAM = $(DIST)/bin/run-mozilla.sh
|
|
861
|
+
endif
|
|
862
|
+
|
|
863
|
+
ifeq ($(OS_ARCH),OS2)
|
|
864
|
+
RUN_TEST_PROGRAM = $(topsrcdir)/build/os2/test_os2.cmd "$(DIST)"
|
|
865
|
+
endif
|
|
866
|
+
|
|
867
|
+
#
|
|
868
|
+
# Java macros
|
|
869
|
+
#
|
|
870
|
+
|
|
871
|
+
# Make sure any compiled classes work with at least JVM 1.4
|
|
872
|
+
JAVAC_FLAGS += -source 1.4
|
|
873
|
+
|
|
874
|
+
ifdef MOZ_DEBUG
|
|
875
|
+
JAVAC_FLAGS += -g
|
|
876
|
+
endif
|
|
877
|
+
|
|
878
|
+
ifdef TIERS
|
|
879
|
+
DIRS += $(foreach tier,$(TIERS),$(tier_$(tier)_dirs))
|
|
880
|
+
STATIC_DIRS += $(foreach tier,$(TIERS),$(tier_$(tier)_staticdirs))
|
|
881
|
+
endif
|