Mobile/Symbian/NSPR

From MozillaWiki
< Mobile‎ | Symbian
Revision as of 18:03, 19 January 2009 by Kcome (talk | contribs)
Jump to navigation Jump to search

What's Up

In short: Building NSPR for Symbian.

Complete one: Building NSPR with source from http://mozilla-symbian.googlecode.com for Symbian OS/S60 3rd Edition FP1 platform by using gnu-make/msys.


Prerequisites

Procedures

  • Install all prerequisites, I recommend installing everything on Drive C, default path.
  • Add paths to environment variable $PATH, some of them are added by tools installation:
    • c:\mingw\bin (MUST be the first, or at least earlier than any Symbian build tool chain related path)
    • c:\program files\csl arm toolchain\bin (this should be added by GCCE tools installation)
    • c:\symbian\9.2\s60_3rd_fp1\epoc32\tools (MUST place this earlier than "c:\program files\common\symbian\tools" which is added by SDK installation)
    • c:\mozilla-build\svn-win32-1.4.2\bin
    • c:\mozilla-build\moztools\bin
  • Add environment variables:
 SYMBIAN_SDK_PATH = /c/symbian/9.2/S60_3rd_FP1/
 ACTIVE_PERL = /c/perl/bin/perl.exe
 CC_INSTALL_PATH = /c/program\ files/CSL\ ARM\ Toolchain/
 static const char* const KSuppressPlatSecDiagnostic =
   KSuppressPlatSecDiagnosticMagicValue;

into

 #if defined(__cplusplus) 
 static const char* const KSuppressPlatSecDiagnostic =
   KSuppressPlatSecDiagnosticMagicValue; 
 #endif
  • Deal with header files
c:
cd \symbian\9.2\s60_3rd_fp1\epoc32\include
move prtypes.h prtypes.h.orig
cd variant
copy Symbian_OS_v9.2.hrh Symbian_OS.hrh
  • Checkout source from google code
 svn checkout http://mozilla-symbian.googlecode.com/svn/trunk/ mozilla-symbian
  • Start msys by invoking c:\mozilla-build\msys\msys.bat, assuming your source is checked out at c:\mozilla-symbian then:

For device(GCCE) build:

 cd /c/
 mkdir gobj
 cd gobj
 ../mozilla-symbian/nsprpub/configure --target=arm-none-symbianelf
 --enable-symbian-target=GCCE --disable-debug
 make
 cd pr/tests
 make

For emulator(WINSCW) build:

 cd /c/
 mkdir wobj
 cd wobj
 ../mozilla-symbian/nsprpub/configure --target=arm-none-symbianelf
 --enable-symbian-target=WINSCW
 make
 cd pr/tests
 make


More

The procedures above are also verified on S60 SDK 3rd Edition MR.