Default Build Configuration Options (MR1)

first | prev

This document describes the options used to build the PCSL and phoneME Feature software default configurations. It has the following sections:

The options described in this document are set when you run the build procedures described in Building a PCSL Reference Port and Building a phoneME Software Reference Port. They are presented here for reference only.

Note: For success with the instructions in this guide, do not change the default settings. For information on build configurations and changing default settings, see the Sun Java Wireless Client Build Guide.


Build Options for PCSL Software

Building PCSL software on your build platform (Linux or Windows) uses the default build options shown in TABLE A-1. Running the command make all in the PCSL build environment sets these options for you.

TABLE A-1 PCSL Default Configuration Build Option Settings

Module Name

Value

Description

FILE_MODULE

posix (Linux)

win32 (Windows)

Use a posix file system on Linux. On Windows, use win32.

Example:

FILE_MODULE=posix

MEMORY_MODULE

malloc

Use standard C malloc.

Example:

MEMORY_MODULE=malloc

USE_DATAGRAM

true

Enable datagram APIs.
Example:

USE_DATAGRAM=true

NETWORK_MODULE

bsd/generic

(Linux)

winsock

(Windows)

On Linux, use bsd/generic. On Windows, use winsock.
Example:

NETWORK_MODULE=bsd/generic

PRINT_MODULE

stdout

Print to stdout.

Example:

PRINT_MODULE=stdout

PCSL_CHUNKMEM_IMPL

pcsl_chunkheap

Build with the named file, which implements the public API pcsl_mem_*_chunk.

PCSL_CHUNKMEM_DIR

InstallDir/memory/heap

Build with the named directory, which holds the implementation of pcsl_mem_*_chunk.

USE_DEBUG

false

Build to optimize compilation. Do not include debugging information.

Example:

USE_DEBUG=false



Build Options for phoneME Feature Software

The default configuration file, Default.gmk, is a plain text file located in the default build directory of your build platform. For example, on a Linux platform, the Default.gmk file can be found in the following location:

InstallDir/midp/build/linux_fb_gcc

Note: InstallDir is the location of your phoneME Feature software.

Build Options for Core MIDP Package

TABLE A-2 describes the build options used to build core MIDP technology in the phoneME Feature software default configuration. For more information, see Building a phoneME Feature Reference Port.

For more information on additional core MIDP build options, see the Sun Java Wireless Client Build Guide.

TABLE A-2 Default Build Options for Core MIDP

Name

Value

Description

TARGET_CPU

arm

(Linux)

i386

(Win32)

Builds an implementation for the specified target platform.

Example:

TARGET_CPU=arm

SUBSYSTEM_LCDUI_MODULES

chameleon

Builds an implementation that uses adaptive user-interface technology.

Example:

SUBSYSTEM_LCDUI_MODULES=chameleon

USE_MULTIPLE_ISOLATES

true

Builds an implementation able to run more than one MIDlet at a time.

Example:

USE_MULTIPLE_ISOLATES=true

USE_CLDC_11

true

Builds an implementation compliant with the CLDC 1.1 Specification.

Example:

USE_CLDC_11=true

MIDP_USE_ABB

true

Builds an implementation using the MIDP Audio Building Block (ABB) sound capability.

Example:

MIDP_USE_ABB=true

USE_JPEG

true

Builds an implementation that uses the JPEG graphics recorder provided by the phoneME Feature software.

Example:

USE_JPEG=true

JPEG_DIR

(jpeg source)

Provides a pointer to the location of the libjpeg open source library.

Example:

JPEG_DIR=InstallDir/libjpeg

USE_SSL

true

Builds an implementation that includes an SSL library.

Example:

USE_SSL=true

Note that this build flag does not affect security for OTA and SATSA. For that, see USE_RESTRICTED_CRYPTO.

USE_RESTRICTED_CRYPTO

true

Builds an implementation that includes ciphers and features that depend on ciphers. The features that depend on ciphers are: secure OTA, SecureConnection, HTTPS, and SATSA-CRYPTO (JSR 177).

Example:

USE_RESTRICTED_CRYPTO=true

RESTRICTED_CRYPTO_DIR

(crypto source)

Provides a pointer to the location of the restricted crypto source.

Example:

RESTRICTED_CRYPTO_DIR=crypto_dir

where crypto_dir is the location of your restricted crypto source.

USE_BINARY_CRYPTO

false

Set this variable to true if you do not have restricted crypto source code. The build system will rebuild demos by linking with binary objects instead of attempting to compile source code.

USE_NATIVE_AMS

false

Builds an implementation that uses the AMS written in the Java programming language.

Example:

USE_NATIVE_AMS=false

USE_FIXED

false

Builds an implementation that uses the default resource policy, open-for-competition.

Example:

USE_FIXED=false

USE_DEBUG

false

Builds an optimized implementation without debugging enabled.
Example:

USE_DEBUG=false

USE_I3_TEST

false

Builds an implementation without unit tests enabled.
Example:

USE_I3_TEST=false

USE_JAVA_DEBUGGER

false

Disables Java platform debugger support, also known as KDWP.
Example:

USE_JAVA_DEBUGGER=false

USE_JAVA_PROFILER

false

Disables the profiler feature of the phoneME Feature software in CLDC.

Example:

USE_JAVA_PROFILER=false

Build Options for Optional Package JSRs

TABLE A-3 describes the options used to build optional package JSRs in the phoneME Feature software default configuration. For more information on each optional package and other build settings, see the Sun Java Wireless Client Build Guide.

For each optional package shown in TABLE A-3, it is necessary to set two environment variables: one to indicate that an optional package should be built; the other to point to the location where your optional package source files are installed.

For example, to build the Bluetooth (JSR 82) optional package, the following variables must be set:

  • USE_JSR_82=true
  • JSR_82_DIR=InstallDir/jsr82

TABLE A-3 Default Build Options for Optional Package JSRs

Name

Default Value

Description

USE_JSR_75

true

Builds an implementation of JSR 75 (Personal Information and File Management).

Example:

USE_JSR_75=true

JSR_75_DIR

(JSR 75 source)

Provides a pointer to the location of the JSR 75 source code.

Example:

JSR_75_DIR=InstallDir/jsr75

USE_JSR_82

true

Builds an implementation of JSR 82 (Bluetooth).

Example:

USE_JSR_82=true

JSR_82_DIR

(JSR 82 source)

Provides a pointer to the location of the JSR 82 source code.

Example:

JSR_82_DIR=InstallDir/jsr82

USE_JSR_120

true

Builds an implementation of JSR 120 (Java Wireless Messaging 1.0).

Example:

USE_JSR_120=true

(Note: Setting JSR_205_DIR includes JSR 120.)

USE_JSR_135

true

Builds an implementation of JSR 135 (Mobile Media API).

Example:

USE_JSR_135=true

(Note: To set the directory location for JSR 135 source code, use JSR_234_DIR.)

USE_JSR_172

true

Builds an implementation of JSR 172 (Java Web Services).

Example:

USE_JSR_172=true

JSR_172_DIR

(JSR 172 source)

Provides a pointer to the location of the JSR 172 source code.

Example:

JSR_172_DIR=InstallDir/jsr172

USE_JSR_177

true

Builds an implementation of JSR 177 (Java Security and Trust Services).

Example:

USE_JSR_177=true

JSR_177_DIR

(JSR 177 source)

Provides a pointer to the location of the JSR 177 source code.

Example:

JSR_177_DIR=InstallDir/jsr177

USE_JSR_205

true

Builds an implementation of JSR 205 (Java Wireless Messaging 2.0).

Example:

USE_JSR_205=true

JSR_205_DIR

(JSR 205 source)

Provides a pointer to the location of the JSR 205 source code.

Example:

JSR_205_DIR=InstallDir/jsr205

(Note: Setting JSR_205_DIR includes JSR 120.)

USE_JSR_226

true

Builds an implementation of JSR 226 (Scalable 2D Vector Graphics).

Example:

USE_JSR_226=true

JSR_226_DIR

(JSR 226 source)

Provides a pointer to the location of the JSR 226 source code.

Example:

JSR_226_DIR=InstallDir/jsr226

PISCES_DIR

(path to 2D Renderer Subsystem)

Provides a pointer to the location of the 2D Renderer Subsystem.

Example:

PISCES_DIR=InstallDir/pisces

jsr_234_DIR

(JSR 135 source)

Provides a pointer to the location of the JSR 135 source code.

Example:

JSR_234_DIR=InstallDir/jsr135

first | prev