mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
f83d8c9ea3
Give SpiderMonkey its own configure script and top-level Makefile. Adjust js/src/Makefile as appropriate for life as a stand-alone makefile, instead of a 'make export; make libs'-style Mozilla tier makefile. Have the configure script accept '--with-nspr-cflags' and '--with-nspr-libs' options for using an in-tree NSPR. Also accept '--with-system-nspr', '--with-nspr-prefix', and '--with-nspr-exec-prefix' flags for using an installed NSPR. Default to --disable-jemalloc, assuming we don't have that part of the tree available; have the top-level configure script pass --enable-jemalloc as needed. Since we no longer have an export phase to copy header files into dist/include/js before we build the library, we need to be able to find nanojit.h in the nanojit directory; fix references in jsbuiltins.h and jstracer.cpp. Give SpiderMonkey it its own copies of many of the files from ./config and ./build. These are all exact copies, except as follows: . js/src/config/Makefile.in: js/src only has a subset of js/src/config, and thus a subset of the makefile targets. . js/src/config/autoconf.mk.in: js/src/configure.in has its own make variables to set, not set by the top-level configure script, so it needs a custom automake.mk template. . js/src/config/make-system-wrappers.pl: a copy from nsprpub/config, so that we can build without having an NSPR source tree handy. Invoke js/src/configure from ./configure, passing the values computed for NSPR_CFLAGS and NSPR_LIBS by the top-level configure script. Treat js/src as a static directory of the js tier, and create a new config/js (just a Makefile) to be the js tier's non-static directory. Let js/src/configure generate SpiderMonkey's makefiles, not ./configure. Generate a 'js-config' script, which clients can call to find the CFLAGS and LIBS values necessary to compile and link against an installed SpiderMonkey library. Don't include the js-config script in Macintosh packages. Teach client.mk how to rebuild js/src/configure. Tell Mercurial to ignore files generated by autoconf in js/src. Further work: . Right now, callers must define JS_THREADSAFE when #including jsapi.h. This is fixed in a subsequent patch. . js/src/configure is a trimmed copy of ./configure. It could be trimmed more. --HG-- rename : build/autoconf/acoutput-fast.pl => js/src/build/autoconf/acoutput-fast.pl rename : build/autoconf/altoptions.m4 => js/src/build/autoconf/altoptions.m4 rename : build/autoconf/config.guess => js/src/build/autoconf/config.guess rename : build/autoconf/config.sub => js/src/build/autoconf/config.sub rename : build/autoconf/glib.m4 => js/src/build/autoconf/glib.m4 rename : build/autoconf/install-sh => js/src/build/autoconf/install-sh rename : build/autoconf/make-makefile => js/src/build/autoconf/make-makefile rename : build/autoconf/match-dir.sh => js/src/build/autoconf/match-dir.sh rename : build/autoconf/nspr.m4 => js/src/build/autoconf/nspr.m4 rename : build/autoconf/pkg.m4 => js/src/build/autoconf/pkg.m4 rename : build/autoconf/update-makefile.sh => js/src/build/autoconf/update-makefile.sh rename : build/cygwin-wrapper => js/src/build/cygwin-wrapper rename : build/hcc => js/src/build/hcc rename : build/hcpp => js/src/build/hcpp rename : build/unix/mddepend.pl => js/src/build/unix/mddepend.pl rename : build/unix/uniq.pl => js/src/build/unix/uniq.pl rename : config/Makefile.in => js/src/config/Makefile.in rename : config/Moz/Milestone.pm => js/src/config/Moz/Milestone.pm rename : config/autoconf.mk.in => js/src/config/autoconf.mk.in rename : config/config.mk => js/src/config/config.mk rename : config/elf-dynstr-gc.c => js/src/config/elf-dynstr-gc.c rename : config/fastcwd.pl => js/src/config/fastcwd.pl rename : config/gcc_hidden.h => js/src/config/gcc_hidden.h rename : config/insure.mk => js/src/config/insure.mk rename : nsprpub/config/make-system-wrappers.pl => js/src/config/make-system-wrappers.pl rename : config/milestone.pl => js/src/config/milestone.pl rename : config/milestone.txt => js/src/config/milestone.txt rename : config/mkdepend/Makefile.in => js/src/config/mkdepend/Makefile.in rename : config/mkdepend/cppsetup.c => js/src/config/mkdepend/cppsetup.c rename : config/mkdepend/def.h => js/src/config/mkdepend/def.h rename : config/mkdepend/ifparser.c => js/src/config/mkdepend/ifparser.c rename : config/mkdepend/ifparser.h => js/src/config/mkdepend/ifparser.h rename : config/mkdepend/imakemdep.h => js/src/config/mkdepend/imakemdep.h rename : config/mkdepend/include.c => js/src/config/mkdepend/include.c rename : config/mkdepend/main.c => js/src/config/mkdepend/main.c rename : config/mkdepend/mkdepend.man => js/src/config/mkdepend/mkdepend.man rename : config/mkdepend/parse.c => js/src/config/mkdepend/parse.c rename : config/mkdepend/pr.c => js/src/config/mkdepend/pr.c rename : config/nfspwd.pl => js/src/config/nfspwd.pl rename : config/nsinstall.c => js/src/config/nsinstall.c rename : config/nsinstall.py => js/src/config/nsinstall.py rename : config/pathsub.c => js/src/config/pathsub.c rename : config/pathsub.h => js/src/config/pathsub.h rename : config/preprocessor.pl => js/src/config/preprocessor.pl rename : config/revdepth-nt.pl => js/src/config/revdepth-nt.pl rename : config/revdepth.pl => js/src/config/revdepth.pl rename : config/rules.mk => js/src/config/rules.mk rename : config/system-headers => js/src/config/system-headers rename : config/version.mk => js/src/config/version.mk rename : config/version_win.pl => js/src/config/version_win.pl rename : configure.in => js/src/configure.in |
||
---|---|---|
.. | ||
build | ||
config | ||
correct | ||
editline | ||
liveconnect | ||
nanojit | ||
t | ||
v8 | ||
vprof | ||
xpconnect | ||
aclocal.m4 | ||
bench.sh | ||
builtins.tbl | ||
call.js | ||
configure.in | ||
correct.sh | ||
dtoa.c | ||
if.js | ||
javascript-trace.d | ||
jitstats.tbl | ||
js3240.rc | ||
js-config.in | ||
js.cpp | ||
js.mdp | ||
js.msg | ||
js.pkg | ||
jsapi.cpp | ||
jsapi.h | ||
jsarena.cpp | ||
jsarena.h | ||
jsarray.cpp | ||
jsarray.h | ||
jsatom.cpp | ||
jsatom.h | ||
jsbit.h | ||
jsbool.cpp | ||
jsbool.h | ||
jsbuiltins.cpp | ||
jsbuiltins.h | ||
jsclist.h | ||
jscntxt.cpp | ||
jscntxt.h | ||
jscompat.h | ||
jscpucfg.cpp | ||
jscpucfg.h | ||
jsdate.cpp | ||
jsdate.h | ||
jsdbgapi.cpp | ||
jsdbgapi.h | ||
jsdhash.cpp | ||
jsdhash.h | ||
jsdtoa.cpp | ||
jsdtoa.h | ||
jsdtracef.c | ||
jsdtracef.h | ||
jsemit.cpp | ||
jsemit.h | ||
jsexn.cpp | ||
jsexn.h | ||
jsfile.cpp | ||
jsfile.h | ||
jsfile.msg | ||
jsfun.cpp | ||
jsfun.h | ||
jsgc.cpp | ||
jsgc.h | ||
jshash.cpp | ||
jshash.h | ||
jsify.pl | ||
jsinterp.cpp | ||
jsinterp.h | ||
jsinvoke.cpp | ||
jsiter.cpp | ||
jsiter.h | ||
jskeyword.tbl | ||
jskwgen.cpp | ||
jslibmath.h | ||
jslock.cpp | ||
jslock.h | ||
jslocko.asm | ||
jslog2.cpp | ||
jslong.cpp | ||
jslong.h | ||
jsmath.cpp | ||
jsmath.h | ||
jsnum.cpp | ||
jsnum.h | ||
jsobj.cpp | ||
jsobj.h | ||
json.cpp | ||
json.h | ||
jsopcode.cpp | ||
jsopcode.h | ||
jsopcode.tbl | ||
jsoplengen.cpp | ||
jsOS240.def | ||
jsotypes.h | ||
jsparse.cpp | ||
jsparse.h | ||
jsprf.cpp | ||
jsprf.h | ||
jsproto.tbl | ||
jsprvtd.h | ||
jspubtd.h | ||
jsregexp.cpp | ||
jsregexp.h | ||
jsreops.tbl | ||
jsscan.cpp | ||
jsscan.h | ||
jsscope.cpp | ||
jsscope.h | ||
jsscript.cpp | ||
jsscript.h | ||
jsshell.msg | ||
jsstaticcheck.h | ||
jsstddef.h | ||
jsstr.cpp | ||
jsstr.h | ||
jstracer.cpp | ||
jstracer.h | ||
jstypes.h | ||
jsutil.cpp | ||
jsutil.h | ||
jsversion.h | ||
jsxdrapi.cpp | ||
jsxdrapi.h | ||
jsxml.cpp | ||
jsxml.h | ||
lock_SunOS.s | ||
Makefile.in | ||
mandelbrot-results.js | ||
math-partial-sums.js | ||
md5.js | ||
perfect.js | ||
plify_jsdhash.sed | ||
prmjtime.cpp | ||
prmjtime.h | ||
README.html | ||
resource.h | ||
SpiderMonkey.rsp | ||
time.sh | ||
trace-test.js | ||
trace.js | ||
win32.order | ||
Y.js |
<!-- ***** 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-1999 - the Initial Developer. All Rights Reserved. - - Contributor(s): - - 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 ***** --> <!doctype html public "-//w3c//dtd html 4.0 transitional//en"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <meta http-equiv="Refresh" content="0;URL=http://developer.mozilla.org/en/docs/SpiderMonkey"> <title>SpiderMonkey README</title> </head> <body> <h1>SpiderMonkey README</h1> <p>See the <a href="http://developer.mozilla.org/en/docs/SpiderMonkey">SpiderMonkey pages</a> on the Mozilla Developer Center</a>. </body> </html>