Mobile/Symbian/NSPR

From MozillaWiki
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 MR 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

  • 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:
 cd /c/
 mkdir gcceobj
 cd gcceobj
 ../mozilla-symbian/nsprpub/configure --target=arm-none-symbianelf
 --enable-symbian-target=GCCE --disable-debug
 make
 cd pr/tests
 make

More

This description only give you the GGCE build for device with ARM CPU. For emulator build procedures please wait a little while.

If you want to use S60 SDK 3rd FP1 or FP2 version, please replace all "v9.1.hrh" strings into "v9.2.hrh"(FP1) or "v9.3.hrh"(FP2) in "/nsprpub/configure" file.