{
 "metadata": {
  "name": "Interactive builds of LHCb projects"
 },
 "nbformat": 3,
 "nbformat_minor": 0,
 "worksheets": [
  {
   "cells": [
    {
     "cell_type": "markdown",
     "metadata": {},
     "source": [
      "Fist of all we need to get the Python tools in the environment.\n",
      "\n",
      "At the moment this step is a bit heavy, but it will be simplified in the future."
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "import sys\n",
      "import os\n",
      "if not os.path.exists('LbNightlyTools'):\n",
      "    !git clone -q ssh://git@gitlab.cern.ch:7999/lhcb-core/LbNightlyTools.git\n",
      "sys.path.insert(0, os.path.join(os.getcwd(), 'LbNightlyTools', 'python'))\n",
      "os.environ['PATH'] = os.pathsep.join([os.path.join(os.getcwd(), 'LbNightlyTools', 'scripts'), os.environ['PATH']])"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [],
     "prompt_number": 1
    },
    {
     "cell_type": "markdown",
     "metadata": {},
     "source": [
      "This hack is needed to avoid tons of messages in IPython notebook."
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "import logging\n",
      "root_logger = logging.getLogger()\n",
      "root_logger.setLevel(logging.INFO)\n",
      "if root_logger.handlers:\n",
      "    root_logger.handlers[0].setLevel(root_logger.level)"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [],
     "prompt_number": 2
    },
    {
     "cell_type": "markdown",
     "metadata": {},
     "source": [
      "Now let's get the required Python classes."
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "from LbNightlyTools.Configuration import *"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [],
     "prompt_number": 3
    },
    {
     "cell_type": "markdown",
     "metadata": {},
     "source": [
      "For a local build of a few interdependent projects we need to create a `Slot` instance that groups the projects."
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "slot = Slot('my-test', projects=[Project('Gaudi', 'v26r3b'), Project('LHCb', 'HEAD')])\n",
      "slot.cache_entries['CMAKE_USE_CCACHE'] = True # enable ccache use in the builds"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [],
     "prompt_number": 4
    },
    {
     "cell_type": "markdown",
     "metadata": {},
     "source": [
      "Now we are ready to checkout the code."
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "out = slot.checkout()"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "INFO:LbNightlyTools.Configuration:checking out Gaudi v26r3b\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "INFO:LbNightlyTools.Configuration:checking out LHCb HEAD\n"
       ]
      }
     ],
     "prompt_number": 5
    },
    {
     "cell_type": "markdown",
     "metadata": {},
     "source": [
      "A plain checkout of the projects cannot be used out of the box: we need to patch the configuration files so that the projects form a consistent set."
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "slot.patch()"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "INFO:LbNightlyTools.Configuration:patching GAUDI/GAUDI_v26r3b/CMakeLists.txt\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "INFO:LbNightlyTools.Configuration:patching GAUDI/GAUDI_v26r3b/cmt/project.cmt\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "INFO:LbNightlyTools.Configuration:patching GAUDI/GAUDI_v26r3b/GaudiRelease/cmt/requirements\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "INFO:LbNightlyTools.Configuration:patching LHCB/LHCB_HEAD/CMakeLists.txt\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "INFO:LbNightlyTools.Configuration:patching LHCB/LHCB_HEAD/cmt/project.cmt\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "INFO:LbNightlyTools.Configuration:patching LHCB/LHCB_HEAD/LHCbSys/cmt/requirements\n"
       ]
      }
     ],
     "prompt_number": 6
    },
    {
     "cell_type": "markdown",
     "metadata": {},
     "source": [
      "Now it's possible to build (e.g. with 4 parallel jobs)."
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "out = slot.build(jobs=4)"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "INFO:LbNightlyTools.Configuration:building Gaudi v26r3b\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "INFO:LbNightlyTools.Configuration:building LHCb HEAD\n"
       ]
      }
     ],
     "prompt_number": 7
    },
    {
     "cell_type": "markdown",
     "metadata": {},
     "source": [
      "The output of checkout and build is kept in data members of each project: `checkout_log` and `build_log`."
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "# print the last 10 lines of the build log of Gaudi\n",
      "print '\\n'.join(slot.Gaudi.build_log.splitlines()[-10:])\n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "make[4]: Leaving directory `/afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt'\n",
        "/afs/cern.ch/sw/lcg/contrib/CMake/2.8.9/Linux-i386/bin/cmake -E cmake_progress_report /afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt/CMakeFiles\n",
        "Built target post-install\n",
        "make[3]: Leaving directory `/afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt'\n",
        "/afs/cern.ch/sw/lcg/contrib/CMake/2.8.9/Linux-i386/bin/cmake -E cmake_progress_start /afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt/CMakeFiles 0\n",
        "make[2]: Leaving directory `/afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt'\n",
        "make[1]: Leaving directory `/afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt'\n",
        "command exited with code 0\n",
        "Completed at: 2015-10-01 17:02:17.447165\n",
        "Elapsed time: 0:06:34.213523"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n"
       ]
      }
     ],
     "prompt_number": 8
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "# print the last 10 lines of the build log of LHCb\n",
      "print '\\n'.join(slot.LHCb.build_log.splitlines()[-10:])"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "make[4]: Leaving directory `/afs/cern.ch/work/m/marcocle/ipynb/LHCB/LHCB_HEAD/build.x86_64-slc6-gcc48-opt'\n",
        "/afs/cern.ch/sw/lcg/contrib/CMake/2.8.9/Linux-i386/bin/cmake -E cmake_progress_report /afs/cern.ch/work/m/marcocle/ipynb/LHCB/LHCB_HEAD/build.x86_64-slc6-gcc48-opt/CMakeFiles\n",
        "Built target post-install\n",
        "make[3]: Leaving directory `/afs/cern.ch/work/m/marcocle/ipynb/LHCB/LHCB_HEAD/build.x86_64-slc6-gcc48-opt'\n",
        "/afs/cern.ch/sw/lcg/contrib/CMake/2.8.9/Linux-i386/bin/cmake -E cmake_progress_start /afs/cern.ch/work/m/marcocle/ipynb/LHCB/LHCB_HEAD/build.x86_64-slc6-gcc48-opt/CMakeFiles 0\n",
        "make[2]: Leaving directory `/afs/cern.ch/work/m/marcocle/ipynb/LHCB/LHCB_HEAD/build.x86_64-slc6-gcc48-opt'\n",
        "make[1]: Leaving directory `/afs/cern.ch/work/m/marcocle/ipynb/LHCB/LHCB_HEAD/build.x86_64-slc6-gcc48-opt'\n",
        "command exited with code 0\n",
        "Completed at: 2015-10-01 17:27:48.132672\n",
        "Elapsed time: 0:25:30.680800\n"
       ]
      }
     ],
     "prompt_number": 9
    },
    {
     "cell_type": "markdown",
     "metadata": {},
     "source": [
      "Running the tests is simple too."
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "# - the keword argument `args` is a list of arguments to make\n",
      "# - the make argument `ARGS` is passed to ctest (see `ctest --help`)\n",
      "out = slot.Gaudi.test(args=['ARGS=-L GaudiKernel'])\n",
      "print slot.Gaudi.test_log"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "INFO:LbNightlyTools.Configuration:testing Gaudi v26r3b\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "Started at: 2015-10-01 17:27:48.536012\n",
        "running make ARGS=-L GaudiKernel configure\n",
        "cd build.x86_64-slc6-gcc48-opt && make rebuild_cache\n",
        "make[1]: Entering directory `/afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt'\n",
        "Running CMake to regenerate build system...\n",
        "lbn-wrapcmd /afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt rebuild_cache  /afs/cern.ch/sw/lcg/contrib/CMake/2.8.9/Linux-i386/bin/cmake -H/afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b -B/afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt\n",
        "Re-run cmake no build system arguments\n",
        "-- Target system: x86_64-slc6-gcc48\n",
        "-- Build type: opt\n",
        "-- Host system: x86_64-slc6-gcc44\n",
        "-- Using heptools 79 from /afs/cern.ch/sw/lcg/releases/LCG_79/LCG_externals_x86_64-slc6-gcc48-opt.txt\n",
        "-- Using ccache for building\n",
        "-- Prefix COMPILE commands with 'lbn-wrapcmd <CMAKE_CURRENT_BINARY_DIR> <TARGET_NAME> /usr/bin/ccache'\n",
        "-- Prefix LINK commands with 'lbn-wrapcmd <CMAKE_CURRENT_BINARY_DIR> <TARGET_NAME>'\n",
        "-- Prefix CUSTOM commands with 'lbn-wrapcmd <CMAKE_CURRENT_BINARY_DIR> <TARGET_NAME>'\n",
        "-- Looking for local directories...\n",
        "-- Found:\n",
        "--   Gaudi\n",
        "--   GaudiAlg\n",
        "--   GaudiAud\n",
        "--   GaudiCommonSvc\n",
        "--   GaudiCoreSvc\n",
        "--   GaudiExamples\n",
        "--   GaudiGSL\n",
        "--   GaudiKernel\n",
        "--   GaudiKernel/src/Util\n",
        "--   GaudiMP\n",
        "--   GaudiMonitor\n",
        "--   GaudiPartProp\n",
        "--   GaudiPluginService\n",
        "--   GaudiPolicy\n",
        "--   GaudiProfiling\n",
        "--   GaudiPython\n",
        "--   GaudiRelease\n",
        "--   GaudiRelease/doc/doxygen\n",
        "--   GaudiSvc\n",
        "--   GaudiSys\n",
        "--   GaudiUtils\n",
        "--   PartPropSvc\n",
        "--   RootCnv\n",
        "--   RootHistCnv\n",
        "-- Adding directory GaudiPluginService (1/24)\n",
        "-- Boost version: 1.55.0\n",
        "-- Found the following Boost libraries:\n",
        "--   unit_test_framework\n",
        "-- Adding directory GaudiKernel (2/24)\n",
        "-- Boost version: 1.55.0\n",
        "-- Found the following Boost libraries:\n",
        "--   filesystem\n",
        "--   thread\n",
        "--   system\n",
        "--   regex\n",
        "-- Found ROOT: /afs/cern.ch/sw/lcg/releases/LCG_79/ROOT/6.04.02/x86_64-slc6-gcc48-opt/include\n",
        "-- Boost version: 1.55.0\n",
        "-- Found the following Boost libraries:\n",
        "--   unit_test_framework\n",
        "-- Addind QMTest tests...\n",
        "-- ... added 1 tests.\n",
        "-- Adding directory Gaudi (3/24)\n",
        "-- Addind QMTest tests...\n",
        "-- ... added 39 tests.\n",
        "-- Adding directory GaudiCoreSvc (4/24)\n",
        "-- Boost version: 1.55.0\n",
        "-- Found the following Boost libraries:\n",
        "--   system\n",
        "--   filesystem\n",
        "--   regex\n",
        "--   thread\n",
        "-- Adding directory GaudiUtils (5/24)\n",
        "-- Boost version: 1.55.0\n",
        "-- Adding directory GaudiAlg (6/24)\n",
        "-- Boost version: 1.55.0\n",
        "-- Found the following Boost libraries:\n",
        "--   regex\n",
        "-- Adding directory GaudiAud (7/24)\n",
        "-- Addind QMTest tests...\n",
        "-- ... added 1 tests.\n",
        "-- Adding directory GaudiCommonSvc (8/24)\n",
        "-- Boost version: 1.55.0\n",
        "-- Found the following Boost libraries:\n",
        "--   system\n",
        "--   filesystem\n",
        "-- Adding directory GaudiGSL (9/24)\n",
        "-- Adding directory RootCnv (10/24)\n",
        "-- Adding directory GaudiExamples (11/24)\n",
        "-- Boost version: 1.55.0\n",
        "-- Found the following Boost libraries:\n",
        "--   python\n",
        "-- creating hacked version of /afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/GaudiKernel/GaudiKernel/StatusCode.h\n",
        "-- Addind QMTest tests...\n",
        "-- ... added 120 tests.\n",
        "-- Adding directory GaudiKernel/src/Util (12/24)\n",
        "-- Boost version: 1.55.0\n",
        "-- Found the following Boost libraries:\n",
        "--   program_options\n",
        "--   regex\n",
        "--   log\n",
        "--   log_setup\n",
        "-- Adding directory GaudiMP (13/24)\n",
        "-- Adding directory GaudiMonitor (14/24)\n",
        "-- Adding directory GaudiPartProp (15/24)\n",
        "-- Adding directory GaudiPolicy (16/24)\n",
        "-- Adding directory GaudiProfiling (17/24)\n",
        "-- Boost version: 1.55.0\n",
        "-- Found the following Boost libraries:\n",
        "--   python\n",
        "-- jemalloc not found, cannot test GAUDI-1045\n",
        "-- Adding directory GaudiPython (18/24)\n",
        "-- Adding directory GaudiRelease (19/24)\n",
        "-- Adding directory GaudiRelease/doc/doxygen (20/24)\n",
        "-- Adding directory GaudiSvc (21/24)\n",
        "-- Boost version: 1.55.0\n",
        "-- Found the following Boost libraries:\n",
        "--   regex\n",
        "-- Addind QMTest tests...\n",
        "-- ... added 1 tests.\n",
        "-- Adding directory GaudiSys (22/24)\n",
        "-- Adding directory PartPropSvc (23/24)\n",
        "-- Boost version: 1.55.0\n",
        "-- Found the following Boost libraries:\n",
        "--   regex\n",
        "-- Adding directory RootHistCnv (24/24)\n",
        "-- Boost version: 1.55.0\n",
        "-- Preparing environment configuration:\n",
        "--   environment for external packages\n",
        "--     PythonInterp\n",
        "--     XercesC\n",
        "--     UUID\n",
        "--     CppUnit\n",
        "--     RELAX\n",
        "--     GSL\n",
        "--     QMTest\n",
        "--     unwind\n",
        "--     tcmalloc\n",
        "--     pytools\n",
        "--     PythonLibs\n",
        "--     Doxygen\n",
        "--     CLHEP\n",
        "--     HepPDT\n",
        "--     Boost\n",
        "--     ROOT\n",
        "--     AIDA\n",
        "--   environment for the project\n",
        "--   environment for local subdirectories\n",
        "--     GaudiPluginService\n",
        "--     GaudiKernel\n",
        "--     Gaudi\n",
        "--     GaudiCoreSvc\n",
        "--     GaudiUtils\n",
        "--     GaudiAlg\n",
        "--     GaudiAud\n",
        "--     GaudiCommonSvc\n",
        "--     GaudiGSL\n",
        "--     RootCnv\n",
        "--     GaudiExamples\n",
        "--     GaudiKernel/src/Util\n",
        "--     GaudiMP\n",
        "--     GaudiMonitor\n",
        "--     GaudiPartProp\n",
        "--     GaudiPolicy\n",
        "--     GaudiProfiling\n",
        "--     GaudiPython\n",
        "--     GaudiRelease\n",
        "--     GaudiRelease/doc/doxygen\n",
        "--     GaudiSvc\n",
        "--     GaudiSys\n",
        "--     PartPropSvc\n",
        "--     RootHistCnv\n",
        "-- Generating Gaudi.xenv\n",
        "-- Generating Gaudi-build.xenv\n",
        "-- Generating GaudiConfigVersion.cmake\n",
        "-- Generating GaudiConfig.cmake\n",
        "-- Generating GaudiPlatformConfig.cmake\n",
        "-- Generating 'export' files.\n",
        "-- Generating manifest.xml\n",
        "-- Configuring done\n",
        "-- Generating done\n",
        "-- Build files have been written to: /afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt\n",
        "make[1]: Leaving directory `/afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt'\n",
        "command exited with code 0\n",
        "running make ARGS=-L GaudiKernel test\n",
        "rm -f -r /afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt/Testing /afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt/html\n",
        "cd /afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt && ctest -T test -L GaudiKernel\n",
        "Cannot find file: /afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt/DartConfiguration.tcl\n",
        "   Site:\n",
        "   Build name:\n",
        "Create new tag: 20151001-1529 - Experimental\n",
        "Cannot find file: /afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt/DartConfiguration.tcl\n",
        "Test project /afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt\n",
        "      Start 10: GaudiKernel.DirSearchPath_test\n",
        " 1/15 Test #10: GaudiKernel.DirSearchPath_test ............   Passed    1.20 sec\n",
        "      Start 11: GaudiKernel.test_SerializeSTL\n",
        " 2/15 Test #11: GaudiKernel.test_SerializeSTL .............   Passed    0.26 sec\n",
        "      Start 12: GaudiKernel.PathResolver_test\n",
        " 3/15 Test #12: GaudiKernel.PathResolver_test .............   Passed    0.26 sec\n",
        "      Start 13: GaudiKernel.test_GaudiTime\n",
        " 4/15 Test #13: GaudiKernel.test_GaudiTime ................   Passed    0.25 sec\n",
        "      Start 14: GaudiKernel.test_GaudiTiming\n",
        " 5/15 Test #14: GaudiKernel.test_GaudiTiming ..............   Passed    1.25 sec\n",
        "      Start 15: GaudiKernel.Parsers_test\n",
        " 6/15 Test #15: GaudiKernel.Parsers_test ..................   Passed    0.35 sec\n",
        "      Start 16: GaudiKernel.Memory_test\n",
        " 7/15 Test #16: GaudiKernel.Memory_test ...................   Passed    0.28 sec\n",
        "      Start 17: GaudiKernel.test_headers_build\n",
        " 8/15 Test #17: GaudiKernel.test_headers_build ............   Passed    0.27 sec\n",
        "      Start 18: GaudiKernel.test_GAUDI-905\n",
        " 9/15 Test #18: GaudiKernel.test_GAUDI-905 ................   Passed    0.29 sec\n",
        "      Start 19: GaudiKernel.confdb\n",
        "10/15 Test #19: GaudiKernel.confdb ........................   Passed    3.20 sec\n",
        "      Start 20: GaudiKernel.nose\n",
        "11/15 Test #20: GaudiKernel.nose ..........................   Passed    0.82 sec\n",
        "      Start 21: GaudiKernel.genconf_with_custom_factory\n",
        "12/15 Test #21: GaudiKernel.genconf_with_custom_factory ...   Passed    1.64 sec\n",
        "      Start 22: GaudiKernel.AttribStringParser_test\n",
        "13/15 Test #22: GaudiKernel.AttribStringParser_test .......   Passed    0.29 sec\n",
        "      Start 23: GaudiKernel.test_PropertyMgr\n",
        "14/15 Test #23: GaudiKernel.test_PropertyMgr ..............   Passed    0.26 sec\n",
        "      Start 24: GaudiKernel.bug_87340\n",
        "15/15 Test #24: GaudiKernel.bug_87340 .....................   Passed    1.06 sec\n",
        "\n",
        "100% tests passed, 0 tests failed out of 15\n",
        "\n",
        "Label Time Summary:\n",
        "GaudiKernel    =  11.68 sec\n",
        "QMTest         =   1.06 sec\n",
        "\n",
        "Total Test time (real) =  12.00 sec\n",
        "cd build.x86_64-slc6-gcc48-opt && make HTMLSummary\n",
        "make[1]: Entering directory `/afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt'\n",
        "/afs/cern.ch/sw/lcg/contrib/CMake/2.8.9/Linux-i386/bin/cmake -H/afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b -B/afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt --check-build-system CMakeFiles/Makefile.cmake 0\n",
        "make -f CMakeFiles/Makefile2 HTMLSummary\n",
        "make[2]: Entering directory `/afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt'\n",
        "/afs/cern.ch/sw/lcg/contrib/CMake/2.8.9/Linux-i386/bin/cmake -H/afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b -B/afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt --check-build-system CMakeFiles/Makefile.cmake 0\n",
        "/afs/cern.ch/sw/lcg/contrib/CMake/2.8.9/Linux-i386/bin/cmake -E cmake_progress_start /afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt/CMakeFiles 0\n",
        "make -f CMakeFiles/Makefile2 CMakeFiles/HTMLSummary.dir/all\n",
        "make[3]: Entering directory `/afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt'\n",
        "make -f CMakeFiles/HTMLSummary.dir/build.make CMakeFiles/HTMLSummary.dir/depend\n",
        "make[4]: Entering directory `/afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt'\n",
        "cd /afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt && /afs/cern.ch/sw/lcg/contrib/CMake/2.8.9/Linux-i386/bin/cmake -E cmake_depends \"Unix Makefiles\" /afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b /afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b /afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt /afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt /afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt/CMakeFiles/HTMLSummary.dir/DependInfo.cmake --color=\n",
        "Dependee \"/afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt/CMakeFiles/HTMLSummary.dir/DependInfo.cmake\" is newer than depender \"/afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt/CMakeFiles/HTMLSummary.dir/depend.internal\".\n",
        "Dependee \"/afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt/CMakeFiles/CMakeDirectoryInformation.cmake\" is newer than depender \"/afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt/CMakeFiles/HTMLSummary.dir/depend.internal\".\n",
        "Scanning dependencies of target HTMLSummary\n",
        "make[4]: Leaving directory `/afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt'\n",
        "make -f CMakeFiles/HTMLSummary.dir/build.make CMakeFiles/HTMLSummary.dir/build\n",
        "make[4]: Entering directory `/afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt'\n",
        "lbn-wrapcmd /afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt HTMLSummary  /afs/cern.ch/sw/lcg/releases/LCG_79/Python/2.7.9.p1/x86_64-slc6-gcc48-opt/bin/python /afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/cmake/xenv --xml /afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt/config/Gaudi-build.xenv CTestXML2HTML\n",
        "Converting *Test.xml files from . to HTML format in html\n",
        "Process the file : ./Testing/20151001-1529/Test.xml\n",
        "make[4]: Leaving directory `/afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt'\n",
        "/afs/cern.ch/sw/lcg/contrib/CMake/2.8.9/Linux-i386/bin/cmake -E cmake_progress_report /afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt/CMakeFiles\n",
        "Built target HTMLSummary\n",
        "make[3]: Leaving directory `/afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt'\n",
        "/afs/cern.ch/sw/lcg/contrib/CMake/2.8.9/Linux-i386/bin/cmake -E cmake_progress_start /afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt/CMakeFiles 0\n",
        "make[2]: Leaving directory `/afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt'\n",
        "make[1]: Leaving directory `/afs/cern.ch/work/m/marcocle/ipynb/GAUDI/GAUDI_v26r3b/build.x86_64-slc6-gcc48-opt'\n",
        "command exited with code 0\n",
        "Completed at: 2015-10-01 17:29:19.578078\n",
        "Elapsed time: 0:01:31.042066\n",
        "\n"
       ]
      }
     ],
     "prompt_number": 10
    }
   ],
   "metadata": {}
  }
 ]
}