Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

SMILA/Documentation/HowTo/Howto set up dev environment

< SMILA‎ | Documentation‎ | HowTo
Revision as of 08:19, 27 February 2009 by Rrausch.brox.de (Talk | contribs) (Howto Setup Development Environment)

Howto Build and Test Locally

Setup an Eclipse instance/installation for building

Setting up an own instance is recommended so that no extensions/features u might have installed in ur eclipse instance u use for developing interferes with the build. It probably also makes the build a little faster as the headless start of eclipse takes less time due to fewer plug-ins installed.

Eclipse 3.4

  1. Download an eclipse SDK, starting with at least eclipse-SDK-3.4.1-win32.zip.
  2. Download eclipse-3.4.1-delta-pack.zip.
  3. unzip the archive and copy org.eclipse.equinox.executable_<version> from features into your features folder under your eclipse installation.
  4. copy all necessary plug-ins (containing linux.x86 or win32.x86) from plugins into your plugins folder under your eclipse installation.
  5. start that eclipse and set up a custom target platform:
  • Unzip SMILA-xxx-.zips:
  • Copy test specific plug-ins to Smila target platform:
  • Copy org.junit_3.8.2xxx from the “plugins” folder of your eclipse installation or copy org.junit_3.8.2.v200706111738 from Smila-test-and-sample folder to your Smila installation (e.g. E:\ SMILA-incubation-win32.win32.x86/plugins).
  • Copy org.eclipse.smila.test_0.5.0.jar from Smila-test-and-sample folder to your Smila installation (e.g. E:\ SMILA-incubation-win32.win32.x86/plugins).
  • Start eclipse and set the target platform location to this folder (e.g. E:\SMILA-incubation-win32.win32.x86).
Click Window --> Preferences --> Plug-in Development --> Target Platform

Eclipse 3.3

  1. Download an eclipse SDK, starting with at least eclipse-SDK-3.3.2-win32.zip.
  2. Download eclipse-RCP-3.3.2-delta-pack.zip.
  3. unzip the archive and copy org.eclipse.equinox.executable_<version> from features into your features folder under your eclipse installation.
  4. copy all necessary plug-ins (containing linux.x86 or win32.x86) from plugins into your plugins folder under your eclipse installation.
  5. start that eclipse and add sole extension location to WC /SMILA.extension by:
  • Menu: Help / Software Updates / Manage configuration
  • add extension location and choose the folder SMILA.extension/eclipse from smila project folder

Configuring the Build

The folder SMILA.builder contains everything needed to build SMILA and/or run all tests locally. The default settings are set to build against eclipse 3.4.1 and build a product for Win 32bit and Linux 32bit. But it is also possible to build other platforms.

Whether you build from command line or from eclipse, in both cases the make.xml ant script is executed. Before execution certain properties need to be set to meet the local setup.

Setting the Target Build Platform

Independent of which way you are going to build, you must set the configs property in the build.properties file to your setup.

Windows 32bit
...
configs=win32,win32,x86 
# ... 
Windows 64bit

(only provided by eclipse 3.4 and higher)

...
configs=win32,win32,x86_64 
# ... 
Linux 32bit
...
configs=linux,gtk,x86
# ... 
Linux 64bit
...
configs=linux, gtk, x86_64
# ... 
Solaris SPARC
...
configs=solaris, gtk, sparc
# ... 

If you want to provide several distributions e.g one for windows 32bit and one for linux 32bit (default build plan), you have to string together the config values.

Example:
configs=win32, win32, x86 & \
 linux, gtk, x86 



Note:

The default is to build for both, windows and linux platforms. However, for this to work locally the eclipse must have the corresponding plugins installed which is usually not the case if you downloaded a platform specific distribution. If platform plugins are missing you will end up on Windows with:
...
[java] D:\Program Files\eclipse33\eclipse-SDK-3.3.2-win32-smila-build\eclipse\plugins\org.eclipse.pde.build_3.3.2.v20071019\scripts\genericTargets.xml:85: Unable to find plug-in: org.eclipse.core.filesystem.linux.x86_0.0.0. Please check the error log for more details.
Setting Build Properties
Property Default Comment
buildDirectory <SMILA_HOME>/eclipse.build
eclipse.home <ECLIPSE_HOME> the location of the eclipse instance used to build smila
builder <SMILA_HOME>/SMILA.builder
eclipse.running true
pdeBuildPluginVersion 3.4.1.R34x_v20080805 (for 3.4.1) 3.3.2.v20071019 (for 3.3.2) to change the value go to build.properties file in folder SMILA.builder
equinoxLauncherPluginVersion 1.0.101.R34x_v20080819 (for 3.4.1) 1.0.1.R33x_v20080118 (for 3.3.2) to change the value go to build.properties file in folder SMILA.builder
os win32 these merely control under which platform the test will run. It must be one of the target platforms you have build.
ws win32
arch x86
test.java.home <JAVA_HOME> a java 1.5 SDK instance


For the build from eclipse you pass in these values via the command line text box in the launch config on the command line these are set in a shell script.

Executing the make.xml

all dependency graph

The default target is all. This will by default build the application and run all unit tests. The dependency graph will explain what will happen and shows the relevant targets you may call instead.


Executing make.xml from within eclipse
  1. select the SMILA.builder bundle
  2. open External Tools Dialog
  3. create a new ant build configuration or choose your configuration if exists
  4. choose the build file of this bundle, e. g. ${workspace_loc:/SMILA.builder/make.xml}
  5. insert all properties from above into the arguments input field (but adapt these to your setup) but prepend each with -D so each is passed into ant as a property, e.g.
    -DbuildDirectory=D:/eccenca/SMILA/eclipse.build
    -Declipse.home=D:/eclipse33
    -Dbuilder=D:/eccenca/SMILA/SMILA.builder
    -Declipse.running=true
    -DpdeBuildPluginVersion=3.3.2.v20071019
    -DequinoxLauncherPluginVersion=1.0.1.R33x_v20080118
    -Dos=win32 -Dws=win32 -Darch=x86
    -Dtest.java.home=D:/java/jre1.5.0_11
  6. Apply, close and run SMILA.builder with this external tool configuration

Note

To start another than the default target specify the desired target also in the argument input box.
Executing make.xml from command line

The make.bat (or .sh) is just a shell script to set the properties that are needed for the ant script. These files exist only as templates in SVN with .#~#~# appended to denote their template nature. Rename it as u see fit, but make.bat (.sh) is already in the svn:ignore to prevent it from beeing committed accidentally, so it is recommended to use that.

Steps:

  1. adjust all paths in \SMILA.builder\make.bat according to own setup
  2. execute make.bat

Note:

To execute another than the default target just pass it as an argument, like so:
make build

Howto Setup Development Environment

  • SVN location
    Until the project leaves incubation status and we are able to move all our sources to our eclipse SVN this restricted SVN repository is used for daily development (for contributors only):
    https://svn.brox.de/svn/eccenca/EILF/trunk
  • Eclipse
    See Howto Build and Test Locally for a most basic setup.
    See also: Development Guidelines

Howto Run junit tests for OSGi bundles

  • Plugin Junit Launch config
  • write config.ini and ref it from lauch config.
    tip: use \ to brake up long lines to have better overview
  • share the launch config

For further information see: Development Guidelines

Back to the top