Compiling the new chart module
The first step anyone need to achieve before starting to develop on the chart module is compiling OpenOffice.org with the needed modifications for the new chart module. OpenOffice.org provides two main ways to compile it : the "Vanilla" way and the "OOoBuild" way. Let's explain what they are and the differences between those two ways.
- 1 Compiling OpenOffice.org : the theory
- 2 Compiling OpenOffice.org : the practice
- 2.1 Commmon steps
- 2.2 Vanilla
- 2.3 OOoBuild
Compiling OpenOffice.org : the theory
Vanilla is the "standard" way to compile OOo. To compile OOo the "Vanilla" way, you only need to download the sources, unzip them, and follow the instructions given on this page. We will give Chart-specific details about this in the following sections.
To make it simple, OOoBuild is a "wrapper" around the OpenOffice.org build process to make compiling OOo more straight-forward. Some of the enhancements added are :
- patches for known compiling problems
- integration with "ccache" and "icecream" to speed-up the process
- linux distribution specific compiling steps (specific splash screen for Fedora...)
So, to compile OOo with OOoBuild, just just need to download OOoBuild and put the OOo standard sources in a specific directory.
Compiling OpenOffice.org : the practice
Getting the sources
Once you have all the dependencies installed, you will need to download the sources of OOo. When working on a specific cws you will need to follow two steps :
- downloading the OOo sources at a specific milestone
- downloading the specific modifications for the cws from the repository
Download the milestone
For the new chart module, you will need to download the SRC680_m213 milestone or higher.
To download the milestone, you have several choices.
- Download from the cvs servers
- Download a pre-packaged version
- Download from the main OOo servers
Have a look at the following page for more explanations : http://wiki.services.openoffice.org/wiki/Getting_It
Some advices :
I would recommend that you download a pre-packaged version from the following link : http://go-ooo.org/packages/SRC680/
This will save you time compared to downloading the cvs version.
If you still want to download it from the cvs, you can use the following :
cvs -z3 co -r SRC680_m213 OpenOffice
Update the CWS modifications
Once you downloaded the "standard" sources (also called HEAD), you now can update the CWS modifications. You need to update only the modified modules. To know which modules have been modified, check the EIS page. Here you can search for your CWS. On the CWS page then you will find a section called "Modules & Files" which lists the modified modules.
For each module (subdir) you will need to do :
cd name_of_the_module cvs -z3 update -dP -r cws_src680_XXX
wherein XXX is the name of your CWS.
See also cws-extract from oobuild, if you want/need to work with diffs (which will get HUGE, though)
First of all before starting to compile anything, you will need to install all the dependencies and tools needed for the compiling steps. On the Tools project page, you should find all the information on the "Building the source" section :
There, you should read the different sub-sections, they will give you a nice introduction on how everything works. You should also notice that the steps are different on each OS.
Once you downloaded all the sources, you can start configuring the build.
cd config_office ./configure
If you forgot to install some dependencies, the configure will remind you which one are lacking. You can check the one needed on the tool page
A nice trick for configuring OOo is to create a script in which you write all the options activated for your build. This helps if you want to see which options where enabled during the build some days after you compiled everything. Here is an example :
#! /usr/bin/batch ./configure --with-jdk-home="/home/pagalmes/bin/jdk1.5.0_06/" --with-ant-home="/usr/bin/ant" --with-lang="en fr"
Building the tools (dmake...)
During the compiling step, the compiling process needs some tools to achieve the build. Before compiling, you need to build those tools. For example,
To compile the tools, just type :
cd openOffice.org_m213/ ./bootstrap
Setting the environment
Before starting to compile OOo, you need to set all the environment variables
tcsh source LinuxIntelEnv.Set setenv nodep "TRUE" ; setenv NO_HIDS "TRUE" ; setenv MAXPROCESS 2 rehash
- nodep : inhibits generation of dependency files
- maxprocess : sets the number of parallel dmakes per dir
- NO_HIDS prevents generation of HIDs (that's used for automated testing)
cd instsetoo_native build -P2 --dlv_switch -link --all
- -P2 : fires up more than one dmake in _different_ dirs - thus, you end up with a maximum for 4 parallel compilations
- --dlv_switch -link : tells deliver not to copy files to solver, but link instead -> saves space
Once everything compiled, you should launch the "smoke tests". Those are tests to verify that the basic functions of OpenOffice.org work. To launch the smoke tests, issue the following command lines :
cd smoketestoo_native/ setenv TEMP "/home/tmp/smoketest" dmake noremove
Note : sometimes those tests will fail but you can just ignore them.
For this section, you should read the part called "Getting started with OOo development" on the wiki : http://wiki.services.openoffice.org/wiki/Main_Page