Implementation of Porting
Porting Efforts in the OpenOffice.org wiki.The first task you must complete is to create the bootstrapping process, so that the build tools to build the office suite are available.
Building dmake
For a full description of building dmake
on different platforms read the makefile in the $SRC_ROOT/dmake
directory. The following is an example of how to build dmake
on Linux. Use this example as a guide when attempting to build dmake
on another operating system.
- Change to the
$SRC_ROOT/dmake
directory, and run theand make
commands, as follows:% cd $SRC_ROOT/dmake % configure % make
If the compile is successful, the system creates the
$SRC_ROOT/dmake/dmake
file.If the configure is not successful you may have to relate your platform to a specific setup, take a look at the configure.in, modify and run
autoreconf
. - Install
dmake
into the build environment by executing the following commands:% cp $SRC_ROOT/dmake/dmake $SRC_ROOT/solenv/unxlngi3/bin/dmake % chmod -Rf a+rx $SRC_ROOT/solenv/unxlngi3/bin
For information on the derivation of the directory name
unxlngi3
, see the information on OUTPATH in the Build Environment document. This name is equivalent to the value of the$OUTPATH
variable. - Create the specific compiler flags
and options in the file, for example, see
unxlngi3.mk
in the directory$SRC_ROOT/solenv/inc
. - Modify
unx.mk
to switch to this file depending on the values, for example:.IF "$(COM)$(OS)$(CPU)$(GLIBC)" == "GCCLINUXI2REDHAT60" .INCLUDE : unxlngi3.mk .ENDIF
Creating the Rest of the Build Tools
To create the remaining build tools, you need to build the following modules:
sal
vos
tools
rscpp
To build these modules, follow these steps:
- First you need to create a minimum
build environment. The various makefiles require
csh
to run properly, so if you are not running thecsh
shell, change to it by executing the following command:% csh
- The makefiles need several
environment variables to be set to work properly. The
configure
process creates a file of the environment variables that need to be set. For example, for Linux on Intel, theconfigure
process creates aLinuxIntelEnv.Set
file, as follows:setenv SRC_ROOT OpenOffice-top-level-directory-tree setenv DMAKEROOT $SRC_ROOT/solenv/inc/startup setenv PATH $SRC_ROOT/solenv/$OUTPATH/bin:$SRC_ROOT/solenv/bin:"$PATH" setenv OS LINUX setenv SOLARENV $SRC_ROOT/solenv setenv SOLARVER $SRC_ROOT/solver setenv UPD build-number setenv INPATH unxlngi3.pro setenv OUTPATH unxlngi3 setenv PRODUCT full setenv GUI UNX setenv GUIBASE unx setenv COM GCC setenv CPU I setenv CPUNAME INTEL setenv GVER VCL setenv CVER C295 setenv USE_NAMESPACE TRUE setenv UPDATER YES setenv SOL_TMP $HOME setenv SOLARINC "-I. -I$SRC_ROOT/sal/inc -I$SRC_ROOT/vos/inc -I$SRC_ROOT/std2 -I$SRC_ROOT/std2/stl" setenv SOLARLIB "-L$SRC_ROOT/sal/unxlngi3.pro/lib -L$SRC_ROOT/vos/unxlngi3.pro/lib"
There is a stub version of the
_mkout
andmakedepn
tools to build the core tools located in the$SRC_ROOT/solenv/bin
directory. For information on the environment variables in this file, see the Build Environment document. - Build the
sal
project. Change to thesal
directory, then create a directory for the operating system that you are porting to. If you are porting to a POSIX functions-compliant operating system, you can create this directory under theunx
directory.Compile the code by executing the following commands:
% cd $SRC_ROOT/sal % mkdir platform-name % dmake
- Manually install the files that
the next project needs by executing the following commands:
% mkdir -p $SRC_ROOT/solver/$UPD/$OUTPATH.pro/inc/sal % cp $SRC_ROOT/sal/version.mk $SRC_ROOT/$OUTPATH.pro/inc/sal
- Build the
vos
project by performing the following steps. Compile the code by executing the following commands.% cd $SRC_ROOT/vos % dmake
- Manually install the files that
the next project needs by executing the following commands:
% mkdir -p $SRC_ROOT/solver/$UPD/unxmacxp.pro/inc/vos % cp $SRC_ROOT/vos/version.mk $SRC_ROOT/solver/$UPD/$OUTPATH.pro/inc/vos
- Build the
tools
project. Run the following commands to compile the code:% cd $SRC_ROOT/tools % dmake
- Install the build tools that were
compiled in the previous steps by executing the following commands:
% cp $SRC_ROOT/tools/$OUTPATH.pro/bin/* $SRC_ROOT/solenv/$OUTPATH/bin % cp $SRC_ROOT/rscpp/$OUTPATH.pro/bin/* $HOME/dev/solenv/$OUTPATH/bin % chmod -Rf a+rx $SRC_ROOT/solenv/$OUTPATH/bin % rehash
You can now build the office suite.