This is an old revision of the document!
LOFAR User Software
<html> <div style=“border:2px dashed red; padding: 2em;”><h2>WARNING:</h2> This page appears to conflate the LOFAR system software repository (https://svn.astron.nl/LOFAR/) with the USG/LUS repository (http://usg.lofar.org/svn/code). Please treat any instructions below with caution until that has been sorted out!</div> </html>
TOC:
- 
- Checking out code / Read access
 
- Software packages
- Data Access Library (DAL)
- pyBDSM(moved to LOFAR)
- selfcal (Self-Calibration Imaging standalone tool)(moved to LOFAR) selfcal wiki page
 
Code repository
Organization of the repository
usg.lofar.org/svn
|-- code
|   |-- branches
|   `-- trunk
|   |   |-- devel_common
|   |   |-- data
|   |   |-- external
|   |   `-- src
`-- documents
    |-- branches
    `-- trunk
Checking out code
You can obtain a working copy of the source code by running (Registration is needed to access the repository; January 2013)
- using Subversion…svn co http://usg.lofar.org/svn/code/trunk code 
- using Git…git svn clone http://usg.lofar.org/svn/code/trunk code Please be aware though that this will retrieve to complete backlog of all changes, so you might rather use git svn clone -r <revision> http://usg.lofar.org/svn/code/trunk code cd lofarsoft git svn rebase where <revision>is either a specific revision number or the wordHEAD, which refers to the latest available version.
In case you not only want a working version of the source code, but also of the various documents:
mkdir usg cd usg svn co http://usg.lofar.org/svn/code/trunk code svn co http://usg.lofar.org/svn/documents/trunk docs
Note: Release versions of the Pulsar tools (as used on CEP2 and CEP3) can be obtained from the URL (for example):
svn co http://usg.lofar.org/svn/code/branches/LOFAR-Pulp-Release-2_12 src
This will download the whole tree, including the pulsar tools.
Bootstrapping your working copy
Once the checkout from the central repository has completed, you are left with a directory structure as described above. The next step now is to get to the point where it is possible to build (and subsequently install) packages in the software collection…
As the LUS uses the CMake cross-platform makefile generator to handle the configuration of the code base, the most important thing to check is whether or not a suitable version of CMake is available on your platform – this check is carried out through the bootstrap script in the top-level directory of the working copy:
./bootstrap
The the main job of the bootstrap script is to check whether or not a recent enough version of CMake is installed on your system; if the found installation is too old or not available at all, a build from the provided sources is triggered and the resulting executables will be installed into “release/bin” (which of course then should be in your PATH). 
Updating your working copy
As with the case of retrieving your working working copy from the central repository, this step is very much depending on the tool used locally for version control:
- Subversion : Change back to the top-level directory of your working copy and and runsvn up
- Git : Depending on your choice to deal with upstream changes, you might change back to themasterbranch of your working copy before runninggit checkout master git svn rebase If however you prefer to directly merge the upstream changes into your feature/development branch, you simply run git svn rebase In either case ensure there are no uncommitted changes – either add and then commit them or stash them, before pulling in the upstream changes.