This document contains the following sections:
make -C
OptionNote: This section contains information you might find useful while working through the phoneME Feature installation process. It is for your information only. If you want to begin downloading and installing the phoneME Feature software right away, see Downloading the phoneME Feature Software Source Code.
For your ease of use, this guide uses the following conventions:
$MEHOME
means "the location where you have installed
the phoneME Feature software." For example, if you install the phoneME Feature software
into the directory /home/chocolate/phoneME_feature
, changing directory to
$MEHOME/midp
means to change directory to
/home/chocolate/phoneME_feature/midp
.
Preparing your build environment requires you to set environment variables for your Linux on i386 or Win32 on i386 build platforms. The specific variables that need to be set are described in the remainder of this document.
Build environment variables can be set in two ways:
On a Linux on i386 build platform, a system variable is set in the following way:
$ export VARIABLE=value
For example, to set TARGET_CPU
as a system variable on a Linux/i386
platform , type:
$ export TARGET_CPU=i386
$ set VARIABLE=value
For example, to set the TARGET_CPU
as a system variable on a Win32 on i386
platform, type:
$ set TARGET_CPU=i386
Setting Command-Line Variables
On Linux on i386 and Win32 on i386 build platforms, a command-line variable is set in the following way:
$ make VARIABLE=value make_target
For example, to set TARGET_CPU
on a make
command-line
for a Linux on i386 platform, use the following format:
$ make TARGET_CPU=i386 all
Note: Typing make
on the command-line by itself is the same as
typing make all
.
make
command line.
To do this, use the following variable format, where XXX
is the JSR number:
USE_JSR_XXX=true
JSR_XXX_DIR=
path-to-jsr-source
For example, to build the JavaCall porting layer to include JSR-120 (Wireless Messaging APIs),
the make
command-line looks like this:
$ make USE_JSR_120=true JSR_120_DIR=$MEHOME/120
Note: For optional packages with two-digit numbers, the format is USE_JSR_XX
and JSR_XX_DIR
.
Builds for PCSL and CLDC do not require optional packages to be included, even if they are built in the JavaCall porting layer and the phoneME Feature software client. However, if optional packages are included in the build for the JavaCall porting layer, the same optional packages must be included in the phoneME Feature client software build.
For more information on building with optional packages, see Sun Java Wireless Client Build Guide.
make -C
Option
When using make
to build the JavaCall porting layer, PCSL, CLDC, and phoneME
Feature software, the -C option is used to specify the directory where the build
is performed. Using the -C
option enables you to build in the correct location
without changing to the build directory before the build is launched.
For improved usability, this guide directs you to change to the build directory before building
a component. However, if you choose, you can launch your build from any directory using the
make
-C option.
For example, if the build directory for building the JavaCall porting layer on an i386 target
platform in the phoneME Feature client is %MEHOME%/midp/build/javacall
, enter the
following:
$ make -C %MEHOME%/midp/build/javacall
flag1 flag2 flag3
The default build configuration for your target platform is named using a combination of operating system (Linux or Win32), platform (i386 or ARM), and one or more build options. Setting (or not setting) specific build options determines the configuration of the build.
For example, for the Linux/ARM target platform (P2 board), the default build configuration uses Frame Buffer graphics (fb), with Adaptive User Interface Technology (chameleon), and multitasking (mvm). Therefore, the default build configuration is named linux_arm_fb_chameleon_mvm.
On the Win32 on i386 platform, the default build configuration is javacall_i386.
A complete implementation of JSR 135 is provided on the Win32 on i386 platform. Building JSR 135 on the Linux on ARM platform provides only a MIDP ABB implementation of JSR 135. To build an implementation of JSR 135 on Linux on ARM, some files need to be modified.
On a Linux on ARM platform
Modify the following files:
These files contain stubbed implementations of all native methods for the following classes:
Sun Microsystems' compliant Mobile Media API (JSR 135) implementation utilizes audio libraries licensed from QSound Labs, Inc..
Note: Other libraries are possible. If you choose other audio libraries, you need to modify the listed files for those libraries.
On a Win32 on i386 platform
A complete implementation of JSR-135 is provided. To port it to other platforms you must implement the JavaCall API, which can be found at:
javacall/interface
In particular, the JSR-135 audio part of the JavaCall API can be found in:
javacall/interface/jsr135_mmapi/javacall_multimedia.h
first | prev | next | last