Commit af5be616 authored by Andrea Valassi's avatar Andrea Valassi
Browse files

Blindly add cmake fragments from CORAL without any change


git-svn-id: file:///git/lcgcool.svndb/cool/trunk@19485 4525493e-7705-40b1-a816-d608a930855b
parent f9ecbaf4
CMAKE_MINIMUM_REQUIRED(VERSION 2.8.5)
project(CORAL)
set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake)
include(CORALBuildFlags)
include(CORALEnableCCache)
include(CORALEnableDistCC)
# enable build-time and run-time environments
include(CORALEnvironmentHandling)
coral_enable_env()
include(GuessCompilerRuntimePaths)
GuessCompilerRuntimePaths(compiler_lib_path compiler_bin_path)
# this ensures that the compiler libraries are in the rpath
link_directories(${compiler_lib_path})
enable_testing()
# declare install locations
set(CMAKE_INSTALL_PREFIX ${CMAKE_SOURCE_DIR}/${BINARY_TAG})
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
# globally required headers
find_package(Boost REQUIRED)
include_directories(${Boost_INCLUDE_DIRS})
execute_process(COMMAND env -i LANG=$ENV{LANG} man -C /etc/man.config -w OUTPUT_VARIABLE default_manpath OUTPUT_STRIP_TRAILING_WHITESPACE)
coral_env(PREPEND PATH ${compiler_bin_path}
PREPEND PATH ${CMAKE_INSTALL_PREFIX}/tests/bin
PREPEND PATH ${CMAKE_INSTALL_PREFIX}/bin
PREPEND LD_LIBRARY_PATH ${compiler_lib_path}
PREPEND LD_LIBRARY_PATH ${CMAKE_INSTALL_PREFIX}/tests/lib
PREPEND LD_LIBRARY_PATH ${CMAKE_INSTALL_PREFIX}/lib
PREPEND PYTHONPATH ${CMAKE_INSTALL_PREFIX}/tests/bin
PREPEND PYTHONPATH ${CMAKE_INSTALL_PREFIX}/lib
PREPEND PYTHONPATH ${CMAKE_INSTALL_PREFIX}/python
APPEND MANPATH ${default_manpath}
SET CMTCONFIG ${BINARY_TAG} # temporary?
SET BINARY_TAG ${BINARY_TAG})
coral_build_env(PREPEND PATH ${compiler_bin_path}
PREPEND LD_LIBRARY_PATH ${compiler_lib_path}
APPEND MANPATH ${default_manpath}
SET CMTCONFIG ${BINARY_TAG} # temporary?
SET BINARY_TAG ${BINARY_TAG})
# subdirectories to include
set(subdirs CoralBase CoralKernel
RelationalAccess CoralCommon
MonitoringService
XMLAuthenticationService XMLLookupService
EnvironmentAuthenticationService
ConnectionService RelationalService
SQLiteAccess MySQLAccess OracleAccess
PyCoral
Tests)
if(NOT WIN32)
set(subdirs ${subdirs} FrontierAccess)
endif()
# CORAL SERVER subdirectories
set(CORAL_SERVER_subdirs CoralMonitor CoralServerBase
CoralStubs CoralSockets CoralAccess
CoralServer CoralAuthenticationService
CoralServerProxy)
foreach(cs_subdir ${CORAL_SERVER_subdirs})
list(APPEND subdirs CORAL_SERVER/${cs_subdir})
endforeach()
# add the subdirectories
foreach(subdir ${subdirs})
message(STATUS "Adding subdirectory ${subdir}")
include_directories(src/${subdir})
add_subdirectory(src/${subdir})
endforeach()
# add environment for external packages
get_property(packages_found GLOBAL PROPERTY PACKAGES_FOUND)
#message("${packages_found}")
foreach(pack ${packages_found})
coral_env(PACKAGE ${pack})
coral_build_env(PACKAGE ${pack})
endforeach()
# This subdir only does (build) environment for tests and it's better to
# use it after the externals.
message(STATUS "Adding subdirectory CoralTest")
add_subdirectory(src/CoralTest)
coral_build_env(PREPEND PATH ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}
PREPEND LD_LIBRARY_PATH ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}
PREPEND PYTHONPATH ${CMAKE_LIBRARY_OUTPUT_DIRECTORY})
get_filename_component(_path ${CMAKE_COMMAND} PATH) # PATH to cmake
coral_build_env(PREPEND PATH ${_path})
coral_env(PREPEND PATH ${_path})
get_filename_component(_path ${CMAKE_CXX_COMPILER} PATH) # PATH to lcg-g++-x.y.z
coral_build_env(PREPEND PATH ${_path})
coral_env(PREPEND PATH ${_path})
get_filename_component(_path ${CMAKE_MAKE_PROGRAM} PATH) # PATH to ninja
coral_build_env(PREPEND PATH ${_path})
coral_env(PREPEND PATH ${_path})
if(DEFINED ENV{VERBOSE})
coral_build_env(SET VERBOSE $ENV{VERBOSE})
coral_env(SET VERBOSE $ENV{VERBOSE})
endif()
if(DEFINED ENV{LCG_release_area})
coral_build_env(SET LCG_release_area $ENV{LCG_release_area})
coral_env(SET LCG_release_area $ENV{LCG_release_area})
endif()
coral_generate_env_conf()
configure_file(cmake/cc-run.in cc-run)
configure_file(cmake/cc-sh.in cc-sh)
execute_process(COMMAND chmod +x ${CMAKE_BINARY_DIR}/cc-run ${CMAKE_BINARY_DIR}/cc-sh)
file(COPY cmake/.bashrc DESTINATION env)
file(COPY cmake/xenv DESTINATION env)
file(COPY cmake/EnvConfig DESTINATION env PATTERN ".svn" EXCLUDE PATTERN "*.pyc" EXCLUDE)
file(COPY ${CMAKE_BINARY_DIR}/cc-run ${CMAKE_BINARY_DIR}/cc-sh DESTINATION ${CMAKE_BINARY_DIR}/tmp.install)
file(COPY ${CMAKE_BINARY_DIR}/env DESTINATION ${CMAKE_BINARY_DIR}/tmp.install)
install(PROGRAMS ${CMAKE_BINARY_DIR}/tmp.install/cc-run ${CMAKE_BINARY_DIR}/tmp.install/cc-sh DESTINATION .)
install(DIRECTORY ${CMAKE_BINARY_DIR}/tmp.install/env DESTINATION . USE_SOURCE_PERMISSIONS PATTERN "*.pyc" EXCLUDE)
Makefile-cmake.mk
\ No newline at end of file
################################################################################
#
# Generic Makefile to simplify the use of CMake projects
# ------------------------------------------------------
#
# This simple Makefile is meant to provide a simplified entry point for the
# configuration and build of CMake-based projects that use a default toolchain
# (as it is the case for Gaudi-based projects).
#
# Only a few targets are actually provided: all the main targets are directly
# delegated to the CMake Makefile.
#
# Main targets:
#
# all
# (default) build everything
#
# test [*]_
# run the declared tests
#
# install
# populate the InstallArea with the products of the build
#
# clean
# remove build products from the build directory
#
# purge [*]_
# deep clean of the build, including InstallArea
# (requires re-configuration)
#
# help
# print the list of available targets
#
# configure [*]_
# alias to CMake 'rebuild_cache' target
#
# :Author: Marco Clemencic
#
# .. [*] Targets defined by this Makefile.
#
################################################################################
# settings
CMAKE := cmake
CTEST := ctest
NINJA := $(shell which ninja 2> /dev/null)
ifneq ($(wildcard $(CURDIR)/toolchain.cmake),)
override CMAKEFLAGS += -DCMAKE_TOOLCHAIN_FILE=$(CURDIR)/toolchain.cmake
endif
ifndef BINARY_TAG
ifdef CMAKECONFIG
BINARY_TAG := ${CMAKECONFIG}
else
ifdef CMTCONFIG
BINARY_TAG := ${CMTCONFIG}
endif
endif
endif
BUILDDIR := $(CURDIR)/build.$(BINARY_TAG)
ifneq ($(NINJA),)
ifeq ($(USE_MAKE),)
ifeq ($(shell grep "FORTRAN\|NO_NINJA" CMakeLists.txt),)
USE_NINJA := 1
endif
endif
endif
# build tool
ifneq ($(USE_NINJA),)
# enable Ninja
override CMAKEFLAGS += -GNinja
ifneq ($(VERBOSE),)
NINJAFLAGS := -v $(NINJAFLAGS)
endif
BUILD_CMD := cd build.$(BINARY_TAG) && ninja $(NINJAFLAGS)
BUILD_CONF_FILE := build.ninja
else
BUILD_CMD := cd build.$(BINARY_TAG) && $(MAKE)
BUILD_CONF_FILE := Makefile
endif
# default target
all:
# deep clean
purge:
$(RM) -r $(BUILDDIR) $(CURDIR)/$(BINARY_TAG)
find $(CURDIR) -name "*.pyc" -a -type f -exec $(RM) -v \{} \;
# delegate any target to the build directory (except 'purge')
ifneq ($(MAKECMDGOALS),purge)
%: $(BUILDDIR)/$(BUILD_CONF_FILE) FORCE
+$(BUILD_CMD) $*
endif
# aliases
.PHONY: configure tests FORCE
ifneq ($(wildcard $(BUILDDIR)/$(BUILD_CONF_FILE)),)
configure: rebuild_cache
else
configure: $(BUILDDIR)/$(BUILD_CONF_FILE)
endif
@ # do not delegate further
# This wrapping around the test target is used to ensure the generation of
# the XML output from ctest.
test: $(BUILDDIR)/$(BUILD_CONF_FILE)
$(RM) -r $(BUILDDIR)/Testing $(BUILDDIR)/html
-cd $(BUILDDIR) && $(CTEST) -T test $(ARGS)
+$(BUILD_CMD) HTMLSummary
ifeq ($(VERBOSE),)
# less verbose install (see GAUDI-1018)
# (emulate the default CMake install target)
install: all
cd $(BUILDDIR) && $(CMAKE) -P cmake_install.cmake| grep -v "^-- Up-to-date:"
endif
# ensure that the target are always passed to the CMake Makefile
FORCE:
@ # dummy target
# Makefiles are used as implicit targets in make, but we should not consider
# them for delegation.
$(MAKEFILE_LIST):
@ # do not delegate further
# trigger CMake configuration
$(BUILDDIR)/$(BUILD_CONF_FILE):
mkdir -p $(BUILDDIR)
cd $(BUILDDIR) && $(CMAKE) $(CMAKEFLAGS) $(CURDIR)
#!/bin/bash
cd `dirname $0`
# Check arguments
bpurge=0
bquiet=0
while [ "$1" != "" ]; do
if [ "$1" == "-p" ] || [ "$1" == "--purge" ]; then
bpurge=1
shift
elif [ "$1" == "-q" ] || [ "$1" == "--quiet" ]; then
bquiet=1
shift
else
echo "Usage: $0 [-p|--purge] [-q|--quiet]"
exit 1
fi
done
# Set up CMake
. setupCMake.sh
status=$?
if [ "$status" != "0" ]; then exit $status; fi
# Check out the logs directory if it does not exist
if [ ! -d logs ]; then
if [ `more CMakeLists.txt 2>&1 | grep project` == "project(CORAL)" ]; then
svnproj=lcgcoral
else
svnproj=lcgcool
fi
echo "WARNING! logs directory does not exist: check it out from $svnproj SVN"
svn co svn+ssh://svn.cern.ch/reps/${svnproj}/logs
if [ ! -d logs/cmake ]; then
echo "ERROR! logs/cmake is missing?"
exit 1
fi
fi
# Remove the build, install and log directories [but not the ccache cache!]
if [ "$bpurge" == "1" ]; then
echo "=== make purge"
make purge
fi
# Output to file only if this is a clean rebuild, else output to stdout
if [ "${BINARY_TAG}" != "" ] && [ ! -d build.${BINARY_TAG} ] && [ ! -d ${BINARY_TAG} ]; then
out=logs/cmake/log-cmake-${BINARY_TAG}.txt
\rm -rf $out
elif [ "$bquiet" == "1" ]; then
out=/dev/null
else
out=/dev/stdout
fi
touch $out
# Dump the cache for info before rebuilding
if ccache -h > /dev/null 2>&1; then
echo "=== ccache -s"
ccache -s
ccache -s >> $out 2>&1
fi
# Rebuild from scratch
echo "=== make"
echo "Output is $out"
date >> $out
time make -j 8 >> $out #2>&1
date >> $out
echo "=== make install"
echo "Output is $out"
time make install >> $out #2>&1
date >> $out
# TEMPORARY! Compare CMT and CMake based environments
pushd cmake > /dev/null
if [ -f .internal/compare_env.sh ]; then
.internal/compare_env.sh -i > .internal/env_comparison_install.txt
.internal/compare_env.sh > .internal/env_comparison_build.txt
fi
popd > /dev/null
#!/bin/bash
cd `dirname $0`
# Check arguments
if [ "$1" == "--trace" ]; then
trace=1
shift
elif [ "$1" == "" ]; then
trace=0
else
echo "Usage: $0 [--trace]"
exit 1
fi
# Set up CMake
. setupCMake.sh
status=$?
if [ "$status" != "0" ]; then exit $status; fi
# Rebuild the cmake cache from scratch (target 'configure' or 'rebuild_cache')
# Remove the full build directory to be on the safe side (see CORALCOOL-2784)
# TEMPORARY! Create directories with dummy files to ensure they are added to env
echo "=== make configure"
\rm -rf build.${BINARY_TAG} ${BINARY_TAG}
if [ -f .internal/compare_env.sh ]; then
for dir in build.${BINARY_TAG}/bin build.${BINARY_TAG}/lib ${BINARY_TAG}/bin ${BINARY_TAG}/lib ${BINARY_TAG}/python ${BINARY_TAG}/tests/bin ${BINARY_TAG}/tests/lib ${BINARY_TAG}/CoralTest/qmtest; do mkdir -p $dir; touch $dir/dummy; done
fi
if [ "$trace" == "1" ]; then CMAKEFLAGS="--trace $CMAKEFLAGS"; fi
make configure 2>&1
# TEMPORARY! Compare CMT and CMake based environments
pushd cmake > /dev/null
if [ -f .internal/compare_env.sh ]; then
.internal/compare_env.sh -i > .internal/env_comparison_install.txt
.internal/compare_env.sh > .internal/env_comparison_build.txt
fi
popd > /dev/null
# Determine the path to this .bashrc
# Determine the project (CORAL or COOL) from the top-level CMakeLists.txt
project="xenv "
if [ "$BASH_SOURCE" != "" ]; then
topdir=`dirname ${BASH_SOURCE}`
topdir=`cd ${topdir}; pwd`
project=`more ${topdir}/CMakeLists.txt 2>&1 | grep project | sed "s/project(//" | sed "s/)/ /"`
fi
# Minimal bash setup
PS1='\[\e[7;34m\][\u@\h '$project'\s]\[\e[0m\]\[\e[1;34m\] \w > \[\e[0m\]'
alias 'rm=rm -i'
alias 'mv=mv -i'
alias 'cp=cp -i'
alias 'ls=ls -aF --color=tty'
alias 'lo=exit'
#!/bin/bash
intdir=`dirname $0`
if [ "$1" == "" ]; then
echo "Usage: $0 command [arguments]"
exit 1
fi
args=$@
shift $#
# Set up CMT
pushd $intdir/../../src/config/cmt > /dev/null
if [ "$?" != "0" ]; then
echo "ERROR! Could not cd ../src/config/cmt"
exit 1
fi
source CMT_env.sh > /dev/null
export CMTPROJECTPATH=/cvmfs/sft.cern.ch/lcg/releases:$CMTPROJECTPATH
source setup.sh
popd > /dev/null
# Run the specified command in the correct runtime environment
$args
status=$?
if [ "$status" != "0" ]; then
echo "ERROR! Failed to execute command \"$*\""
exit $status
fi
#!/bin/bash
intdir=`dirname $0`
# Check arguments
if [ "$1" == "-i" ] || [ "$1" == "--install" ]; then
xenv=install
optdir=tmp.install
shift
elif [ "$1" == "" ]; then
xenv=build
optdir=.
else
echo "Usage: $0 [-i|--install]"
exit 1
fi
cd $intdir
# Check if BINARY_TAG or CMTCONFIG are set (the former has priority)
if [ "$BINARY_TAG" == "" ]; then
if [ "$CMTCONFIG" != "" ]; then
export BINARY_TAG=$CMTCONFIG
else
echo "ERROR! BINARY_TAG and CMTCONFIG are not set"
fi
fi
# Dump runtime environments to files
# Use "env -i" to start with a fresh environment
# See http://unix.stackexchange.com/questions/48994
env -i CMTCONFIG=$BINARY_TAG BINARY_TAG=$BINARY_TAG ./cc-run-cmt env | sort > envCMT
env -i PATH=`env -i bash --norc --noprofile -c 'echo $PATH'` ../../build.${BINARY_TAG}/${optdir}/cc-run env | sort > envCMake.${xenv}
# Read runtime environments from files and compare them
files="envCMT envCMake.${xenv}"
envs=`cat $files | awk '{split($0,a,"="); print a[1]}' | sort -u`
envs_skip="_ AFS ATLAS_TAGS_MAP CCACHE_DIR CLASSPATH CMAKEFLAGS CMAKE_PREFIX_PATH CMTBIN CMTPATH CMTPROJECTPATH CMTROOT CMTVERS COMPILER_PATH host_cmtconfig NEWCMTCONFIG OLDPWD SHLVL SITEROOT"
for env in $envs; do
skip=0
for env_skip in $envs_skip; do
if [ "$env_skip" == "$env" ]; then skip=1; continue; fi
done
if [ "$skip" == "1" ]; then continue; fi
# Read runtime environments from files
cmk=""
for file in $files; do
cmt=$cmk
cmk=`cat $file | grep ^${env}= | sed "s/^${env}=//"`
done
echo "=== Compare $env"
# Use simpler expressions for equivalent paths (and remove trailing ":")
cmt=`echo "$cmt" | tr ":" "\n" | sed 's|releases/LCGCMT/LCGCMT_..root6/LCG_Settings/\.\./\.\./\.\.|releases|g' | tr "\n" ":"`; cmt=${cmt%:}
cmt=`echo "$cmt" | tr ":" "\n" | sed 's|/src/../|/|g' | tr "\n" ":"`; cmt=${cmt%:}
# Compare the two environments and dump them if they differ
if [ "$cmt" != "$cmk" ]; then
if [ "$cmt" == "" ]; then cmt="[none]"; fi
if [ "$cmk" == "" ]; then cmk="[none]"; fi
###echo "CMT:'$cmt'"; echo; echo "CMK:'$cmk'"
echo $cmt | tr ":" "\n"; echo; echo $cmk | tr ":" "\n"
else
echo OK
fi
done
\rm -f $files
# Notes for debugging:
# 1. To know where a variable is defined in CMT, use
# "env -i CMTCONFIG=$CMTCONFIG BINARY_TAG=$BINARY_TAG ../../../.internal/cc-run-cmt bash --norc"
# and then the usual "cmt show set <variable>".
# 2. To know where a variable is defined in CMake,
# check first for _all_ CMakeLists.txt in CORAL packages, otherwise use
# "./cc-cacherebuild --trace" (this is very verbose!).
=== Compare BINARY_TAG
OK
=== Compare CMTCONFIG
OK
=== Compare CORAL_CMTCONFIG_HASH
OK
=== Compare CORALSYS
/home/avalassi/CORAL/trunk/x86_64-slc6-gcc48-dbg
/home/avalassi/CORAL/trunk/build.x86_64-slc6-gcc48-dbg
=== Compare LCG_release_area
[none]
/cvmfs/sft.cern.ch/lcg/releases
=== Compare LD_LIBRARY_PATH
/home/avalassi/CORAL/trunk/x86_64-slc6-gcc48-dbg/lib
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/tcmalloc/2.4/x86_64-slc6-gcc48-dbg/lib
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/igprof/5.9.11/x86_64-slc6-gcc48-dbg/lib
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/libunwind/5c2cade/x86_64-slc6-gcc48-dbg/lib
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/CppUnit/1.12.1_p1/x86_64-slc6-gcc48-dbg/lib
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/frontier_client/2.8.10/x86_64-slc6-gcc48-dbg/lib
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/expat/2.0.1/x86_64-slc6-gcc48-dbg/lib
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/sqlite/3070900/x86_64-slc6-gcc48-dbg/lib
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/mysql/5.5.27/x86_64-slc6-gcc48-dbg/lib
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/oracle/11.2.0.3.0/x86_64-slc6-gcc48-dbg/lib
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/XercesC/3.1.1p1/x86_64-slc6-gcc48-dbg/lib
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/Boost/1.55.0_python2.7/x86_64-slc6-gcc48-dbg/lib
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/gcc/4.8.4/x86_64-slc6/lib64
/home/avalassi/CORAL/trunk/x86_64-slc6-gcc48-dbg/tests/lib
/home/avalassi/CORAL/trunk/x86_64-slc6-gcc48-dbg/examples/lib
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/Python/2.7.9.p1/x86_64-slc6-gcc48-dbg/lib
/home/avalassi/CORAL/trunk/build.x86_64-slc6-gcc48-dbg/lib
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/tcmalloc/2.4/x86_64-slc6-gcc48-dbg/lib
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/libunwind/5c2cade/x86_64-slc6-gcc48-dbg/lib
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/igprof/5.9.11/x86_64-slc6-gcc48-dbg/lib
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/CppUnit/1.12.1_p1/x86_64-slc6-gcc48-dbg/lib
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/XercesC/3.1.1p1/x86_64-slc6-gcc48-dbg/lib
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/Boost/1.55.0_python2.7/x86_64-slc6-gcc48-dbg/lib
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/expat/2.0.1/x86_64-slc6-gcc48-dbg/lib
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/frontier_client/2.8.10/x86_64-slc6-gcc48-dbg/lib
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/Python/2.7.9.p1/x86_64-slc6-gcc48-dbg/lib
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/oracle/11.2.0.3.0/x86_64-slc6-gcc48-dbg/lib
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/mysql/5.5.27/x86_64-slc6-gcc48-dbg/lib
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/sqlite/3070900/x86_64-slc6-gcc48-dbg/lib
/cvmfs/sft.cern.ch/lcg/releases/gcc/4.8.4/x86_64-slc6/lib64
=== Compare MANPATH
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/tcmalloc/2.4/x86_64-slc6-gcc48-dbg/share/man
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/igprof/5.9.11/x86_64-slc6-gcc48-dbg/man
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/libunwind/5c2cade/x86_64-slc6-gcc48-dbg/man
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/CppUnit/1.12.1_p1/x86_64-slc6-gcc48-dbg/share/man
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/mysql/5.5.27/x86_64-slc6-gcc48-dbg/man
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/Python/2.7.9.p1/x86_64-slc6-gcc48-dbg/share/man
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/expat/2.0.1/x86_64-slc6-gcc48-dbg/man
/usr/local/share/man
/usr/share/man/overrides
/usr/share/man
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/tcmalloc/2.4/x86_64-slc6-gcc48-dbg/share/man
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/valgrind/3.10.0/x86_64-slc6-gcc48-dbg/share/man
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/QMtest/2.4.1_python2.7/x86_64-slc6-gcc48-dbg/share/man
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/CppUnit/1.12.1_p1/x86_64-slc6-gcc48-dbg/share/man
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/expat/2.0.1/x86_64-slc6-gcc48-dbg/man
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/Python/2.7.9.p1/x86_64-slc6-gcc48-dbg/share/man
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/mysql/5.5.27/x86_64-slc6-gcc48-dbg/man
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/sqlite/3070900/x86_64-slc6-gcc48-dbg/share/man
/usr/share/man/overrides
/usr/share/man/en
/usr/share/man
/usr/local/share/man
=== Compare NLS_LANG
OK
=== Compare ORA_FPU_PRECISION
OK
=== Compare PATH
/home/avalassi/CORAL/trunk/x86_64-slc6-gcc48-dbg/bin
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/tcmalloc/2.4/x86_64-slc6-gcc48-dbg/bin
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/igprof/5.9.11/x86_64-slc6-gcc48-dbg/bin
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/valgrind/3.10.0/x86_64-slc6-gcc48-dbg/bin
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/QMtest/2.4.1_python2.7/x86_64-slc6-gcc48-dbg/bin
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/frontier_client/2.8.10/x86_64-slc6-gcc48-dbg/bin
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/sqlite/3070900/x86_64-slc6-gcc48-dbg/bin
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/mysql/5.5.27/x86_64-slc6-gcc48-dbg/bin
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/oracle/11.2.0.3.0/x86_64-slc6-gcc48-dbg/bin
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/XercesC/3.1.1p1/x86_64-slc6-gcc48-dbg/bin
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/Python/2.7.9.p1/x86_64-slc6-gcc48-dbg/bin
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/gcc/4.8.4/x86_64-slc6/bin
/afs/cern.ch/sw/contrib/CMT/v1r20p20090520/Linux-x86_64
/home/avalassi/CORAL/trunk/x86_64-slc6-gcc48-dbg/examples/bin
/home/avalassi/CORAL/trunk/x86_64-slc6-gcc48-dbg/tests/bin
/usr/local/bin
/bin
/usr/bin
/afs/cern.ch/sw/lcg/contrib/ninja/1.4.0/x86_64-slc6
/cvmfs/lhcb.cern.ch/lib/lhcb/LBSCRIPTS/prod/InstallArea/scripts
/cvmfs/sft.cern.ch/lcg/contrib/CMake/3.2.3/Linux-x86_64/bin
/home/avalassi/CORAL/trunk/build.x86_64-slc6-gcc48-dbg/bin
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/tcmalloc/2.4/x86_64-slc6-gcc48-dbg/bin
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/igprof/5.9.11/x86_64-slc6-gcc48-dbg/bin
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/valgrind/3.10.0/x86_64-slc6-gcc48-dbg/bin
/home/avalassi/CORAL/trunk/src/CoralTest/scripts
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/QMtest/2.4.1_python2.7/x86_64-slc6-gcc48-dbg/bin
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/CppUnit/1.12.1_p1/x86_64-slc6-gcc48-dbg/bin
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/XercesC/3.1.1p1/x86_64-slc6-gcc48-dbg/bin
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/expat/2.0.1/x86_64-slc6-gcc48-dbg/bin
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/frontier_client/2.8.10/x86_64-slc6-gcc48-dbg/bin
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/Python/2.7.9.p1/x86_64-slc6-gcc48-dbg/bin
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/oracle/11.2.0.3.0/x86_64-slc6-gcc48-dbg/bin
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/mysql/5.5.27/x86_64-slc6-gcc48-dbg/bin
/cvmfs/sft.cern.ch/lcg/releases/LCG_78root6/sqlite/3070900/x86_64-slc6-gcc48-dbg/bin
/home/avalassi/CORAL/trunk/src/Tests/PyCoral_NetworkGlitch
/home/avalassi/CORAL/trunk/src/Tests/PyCoral_MiscellaneousBugs
/home/avalassi/CORAL/trunk/src/Tests/PyCoral_Basic
/home/avalassi/CORAL/trunk/src/Tests/PyCoral_ImportPyCoral
/cvmfs/sft.cern.ch/lcg/releases/gcc/4.8.4/x86_64-slc6/bin
/usr/local/bin