LHCb comments to the SCRAM/CMT evaluation report produced for the LCG project

David Quarrie and Christian Arnault have already pointed out a number of inaccuracies in the report concerning comments made about CMT. We will not repeat these here.

We appreciate there are nice features in SCRAM that we can benefit from, such as a very good web-based interface and the concept of projects. However there are a number of apparent differences in the features of both tools that have direct consequences for the way in which we manage software releases in LHCb and we would like to draw attention to them here:

component library package linker library package two-library package
package Mycomponent
version v1
branches Mycomponent doc src cmt

# add necessary "use" statements

#build a component library
library Mycomponent ../src/*.cpp
apply_pattern component_library \ library=Mycomponent 

private
include_dirs $(MYCOMPONENTROOT)




package Mylinklib
version v1
branches Mylinklib doc src cmt

include_dirs $(MYLINKLIBROOT)

# add necessary "use" statements

#build a linker library
library Mylinklib ../src/*.cpp
apply_pattern linker_library \ library=Mylinklib





package Mytwolibs
version v1
branches Mytwolibs doc src cmt

include_dirs $(MYTWOLIBSROOT)

#add necessary "use" statements

#build a linker library
library MytwolibsLib ../src/Lib/*.cpp

#build a component library
library Mytwolibs ../src/component/*.cpp

apply_pattern component_library \
library=Mytwolibs
apply_pattern linker_library |
library=MytwolibsLib

Concluding remarks

For a more complete evaluation it would be useful to consider the following :

The authors of the evaluation made available the test versions they have built with the tools. Unfortunately the Athena example built with SCRAM does not work properly and the IGUANA example is not readable because of 'permission denied'.