From Fedora Project Wiki

(Created page with '= Description =; This page is a description of how to probe Javascript programs through Mozilla Firefox, using SystemTap. We will be using the DTrace probe points in Firefox to ...')
 
mNo edit summary
Line 1: Line 1:
= Description =;
= Description =;


This page is a description of how to probe Javascript programs through Mozilla Firefox, using SystemTap. We will be using the DTrace probe points in Firefox to access information. I am using Fedora-12.
Firefox comes with DTrace probe points that can be used to profile Javascript processes. Want to profile memory, time, etc. on your Javascript, using Fedora 12? This page will show you how.  


= Requirements =;  
= Requirements =;  


*[[https://developer.mozilla.org/En/Developer_Guide/Source_Code/Mercurial|Firefox source]]
*[[https://developer.mozilla.org/En/Developer_Guide/Source_Code/Mercurial|Firefox source]]
*[[SystemTap]]
*[[SystemTap]]




Line 14: Line 14:
  2. Create a mozconfig file as follows (Gently adapted from [[http://blog.uxebu.com/2009/02/20/firefox-on-osx-with-dtrace | Uxebu]])
  2. Create a mozconfig file as follows (Gently adapted from [[http://blog.uxebu.com/2009/02/20/firefox-on-osx-with-dtrace | Uxebu]])
  . $topsrcdir/browser/config/mozconfig
  . $topsrcdir/browser/config/mozconfig
  mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/obj-ff
  mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/obj-ff
  ac_add_options --enable-debug --disable-optimize
  ac_add_options --enable-debug --disable-optimize
  ac_add_options --enable-shared --disable-static --enable-dtrace
  ac_add_options --enable-shared --disable-static --enable-dtrace
  mk_add_options MOZ_MAKE_FLAGS="-s -j4"
  mk_add_options MOZ_MAKE_FLAGS="-s -j4"
  mk_add_options AUTOCONF=autoconf213
  mk_add_options AUTOCONF=autoconf213



Revision as of 19:25, 14 December 2009

= Description =;

Firefox comes with DTrace probe points that can be used to profile Javascript processes. Want to profile memory, time, etc. on your Javascript, using Fedora 12? This page will show you how.

= Requirements =;


= Setup =;

1. Download Firefox source from the above link.
2. Create a mozconfig file as follows (Gently adapted from [| Uxebu])
. $topsrcdir/browser/config/mozconfig
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/obj-ff
ac_add_options --enable-debug --disable-optimize
ac_add_options --enable-shared --disable-static --enable-dtrace
mk_add_options MOZ_MAKE_FLAGS="-s -j4"
mk_add_options AUTOCONF=autoconf213
3. Install autoconf 2.13 (yum install autoconf213)
4. Enter the mozilla directory and run make -f client.mk build

= Playing =;

The libmozjs can be found in (source directory)firefox/obj-ff/dist/lib/libmozjs.so, and the binary is located at (source directory)firefox/obj-ff/dist/bin/firefox.