Building a CLDC Reference Port (MR4)

first | prev | next-last

CLDC software is the OSS community version of Sun Microsystems' Connected Limited Device Configuration HotSpot™ Implementation virtual machine.

This document has the following sections:

For more information about building and running CLDC, see CLDC HotSpot Implementation software documentation.


Building CLDC Software on a Windows x86 Build Platform

Building a default version of CLDC creates the CLDC software executable cldc_vm.exe for the JavaCall porting layer on a Windows x86 target platform. To properly build the CLDC software on a Windows x86 build platform, you must set the environment variables shown in TABLE 4-1.

TABLE 4-1 Required CLDC Build Variables for Windows x86

Name

Description

JVMWorkSpace

The location of your CLDC software source code workspace. For example, JVMWorkSpace=%COMPONENTS_DIR%/cldc.

JVMBuildSpace

The location of your CLDC software build output. For example, JVMBuildSpace=%BUILD_OUTPUT_DIR%/cldc.

ENABLE_PCSL

Required for building CLDC with the PCSL software component. Must be set to true.

PCSL_OUTPUT_DIR

The location of PCSL build output. Required for building CLDC if ENABLE_PCSL=true. For example, PCSL_OUTPUT_DIR=%BUILD_OUTPUT_DIR%/pcsl.

ENABLE_ISOLATES

Required for building a CLDC implementation with multitasking capability. Must be set to true. If not explicitly set to true, the build defaults to false and CLDC is built without multitasking capability.

Note: If you set ENABLE_ISOLATES=true to build a CLDC implementation with multitasking capability, you must also set USE_MULTIPLE_ISOLATES=true to build the phoneME Feature software, as described in Building a phoneME Feature Reference Port.

JAVACALL_OUTPUT_DIR

The location of JavaCall porting layer output. For example, JAVACALL_OUTPUT_DIR=%BUILD_OUTPUT_DIR%/javacall.

TOOLS_DIR

Defines the directory where needed build tools are located. For example, TOOLS_DIR=%COMPONENTS_DIR%/tools.

TOOLS_OUTPUT_DIR

Defines a directory location for tools-specific output. For example, TOOLS_OUTPUT_DIR=%BUILD_OUTPUT_DIR%/tools.

USE_VS2005

Tells the build system to use Microsoft Visual Studio 2005 as the default compiler setting, as shown here: USE_VS2005=true.

Note: If Microsoft Visual Studio 2005 is your default compiler, you do not need to set this variable. USE_VS2005=true is set for you in the MR4 build scripts. However, if you are using some other compiler (which is possible, but not supported, in MR4), you must set this variable to USE_VS2005=false.

ENABLE_JAVA_DEBUGGER

Supports the use of the emulator binary plugin. For example, ENABLE_JAVA_DEBUGGER=true.

ENABLE_MULTIPLE_PROFILES_SUPPORT

Supports the use of the emulator binary plugin. For example, ENABLE_MULTIPLE_PROFILES_SUPPORT=true.

Building CLDC for a Windows x86 Target Platform

  1. Set the JVMWorkSpace variable, as shown here.

    C:\> set JVMWorkSpace=%COMPONENTS_DIR%/cldc

  2. Set the JVMBuildSpace variable, as shown here.

    C:\> set JVMBuildSpace=%BUILD_OUTPUT_DIR%/cldc

  3. Run the make command as a single command-line string, as shown here.

    C:\> make -C %JVMWorkSpace%/build/javacall_i386_vc ENABLE_PCSL=true PCSL_OUTPUT_DIR=%BUILD_OUTPUT_DIR%/pcsl ENABLE_ISOLATES=true JAVACALL_OUTPUT_DIR=%BUILD_OUTPUT_DIR%/javacall TOOLS_DIR=%COMPONENTS_DIR%/tools TOOLS_OUTPUT_DIR=%BUILD_OUTPUT_DIR%/tools ENABLE_JAVA_DEBUGGER=true ENABLE_MULTIPLE_PROFILES_SUPPORT=true

The generated CLDC output is found under %JVMBuildSpace%/javacall_i386_vc/dist.


Running CLDC Software

Once you build the CLDC software, you can invoke it from the command line to run a class compiled from the Java programming language. The path to the executable depends on the target platform (operating system and processor) for which you build the software.

Running CLDC on a JavaCall porting layer on Windows x86 Target Platform

  1. Change to the CLDC build space for the JavaCall porting layer on Windows x86 platform:

    C:\> cd %JVMBuildSpace%/javacall_i386_vc/dist

  2. Enter the following command:

    C:\> bin/cldc_vm.exe -classpath location-of-compiled-applications/classes classname

    For example, to run the HelloWorld application:

    C:\> bin/cldc_vm -classpath C:/src/classes HelloWorld


Building CLDC Documentation

You can create HTML documents from CLDC porting interfaces. To do this for the CLDC software, use the make docs_html build target.

Generating Javadoc Tool Documentation

Building Javadoc™ tool documentation is the same for all build platforms.

  1. Change to the default build directory for your build platform.

    For example, this could be a Linux on i386 platform, as shown here.

    C:\> cd %JVMWorkSpace%/build/linux_i386

  2. Build Javadoc tool HTML documentation.

    C:\> make docs_html

Viewing phoneME Feature Documents

Use any browser to display the Javadoc tool output file at the following URL:



first | prev | next-last