Skip to content
Snippets Groups Projects
  1. Jan 05, 2012
  2. Dec 16, 2011
  3. Dec 08, 2011
  4. Dec 07, 2011
  5. Dec 15, 2011
  6. Sep 07, 2011
  7. Aug 31, 2011
  8. Aug 19, 2011
  9. Dec 15, 2011
  10. Jun 24, 2011
  11. Jul 01, 2011
  12. Jun 11, 2011
  13. Jun 24, 2011
  14. May 24, 2011
  15. Aug 16, 2011
  16. Mar 25, 2011
  17. Mar 23, 2011
  18. Sep 09, 2010
  19. Aug 21, 2010
  20. Oct 28, 2010
  21. Jun 30, 2010
  22. Sep 02, 2009
  23. Mar 31, 2009
  24. Mar 11, 2009
  25. Feb 19, 2009
  26. Mar 20, 2009
  27. Oct 29, 2008
    • Jim Blandy's avatar
      Bug 97954: Allow SpiderMonkey to be built on its own, or as part of Mozilla. · 3ba206cd
      Jim Blandy authored
      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
      3ba206cd
  28. Oct 23, 2008
  29. Oct 21, 2008
  30. Oct 20, 2008
  31. Aug 26, 2008
  32. Aug 20, 2008
  33. Aug 24, 2008
  34. Aug 03, 2008
  35. Jun 24, 2008
  36. Jun 13, 2008
  37. May 28, 2008
Loading