OMERO.tools
All of the build artifacts which aren't required by one of the ServerProducts? (OmeroBlitz and OmeroEar) are held under the source:trunk/components/tools directory. Each tools component installs its artifacts to the tools/target directory which is copied on top of the OMERO_HOME/dist top-level distribution directory. Current tools include:
Ant-based Ice-based Make-based OmeroCpp X X LicenseService X X X WebAdmin X
Ant-based builds
Ice-based builds
Make-based builds
Builds which have C++ targets are based generally Make and more specifically on the autotools. These builds are influenced by several environment variables as defined in source:trunk/components/tools/make.xml:
<property environment="make"/>
<property name="make.ICE_HOME" value="/usr/share/Ice"/>
<property name="make.DESTDIR" value="${up-two}/target/"/>
<property name="make.LDFLAGS" value="-fPIC"/>
<property name="make.CXXFLAGS" value="-fPIC -O0 -g"/>
<property name="make.CXX" value="ccache g++"/>
<property name="make.J" value="1"/>
<macrodef name="make">
<sequential>
<exec executable="${basedir}/../autogen.sh" failonerror="true">
<arg value="--with-ice=${make.ICE_HOME}"/>
<arg value="--prefix=${make.DESTDIR}"/>
<arg value="LDFLAGS=${make.LDFLAGS}"/>
<arg value="CXXFLAGS=${make.CXXFLAGS}"/>
<arg value="CXX=${make.CXX}"/>
</exec>
<exec executable="make" dir="src" failonerror="true"> <arg value="slice"/> </exec>
<exec executable="make" dir="src" failonerror="true"> <arg value="-j${make.J}"/> </exec>
<exec executable="make" dir="src" failonerror="true"> <arg value="install"/> </exec>
</sequential>
</macrodef>
ccache
By default the CXX variable used is "ccache g++" meaning ccache must be installed. This is due to the inordinately long build times.
