Apr 24

OK, so Russ has taken over ticket25, which is Kernel. I am still in charge of #7, which will end up being test code for the difference imaging pipeline. So, using this as reference test code, I will start to flesh out my ticket.

becker33: cd $LSST_DEVEL
becker34: svn co $LSST_SVN/DC2/imageproc
becker36: cd imageproc/
becker38: mkdir tickets
becker39: svn add tickets
becker40: svn commit tickets -m "Creating tickets dir for imageproc"
becker42: cd tickets/
becker43: mkdir 7
becker44: svn add 7
becker45: svn commit 7 -m "Ticket to start difference imaging pipeline"
becker53: cd 7/
becker55: svn add lsstimageproc01.cc
becker56: svn commit lsstimageproc01.cc

Ah, I forgot to put it under DC2/. Ah well... not a big deal.

becker61: svn add SConscript
becker62: svn commit SConscript

Emacs does not know that SConscript is in python; might be good to put that in lsst.el. I made ticket #44 for this.

Lets try and Ess-cons this thing and see what happens...

becker70: scons -u
  scons: *** No SConstruct file found.
  File "/lsst/lsst_root/Linux/external/scons/0.96.94/lib/scons/SCons/Script/Main.py", line 1036, in _main

OK, so in my path there is no SConstruct. Look at other branches for reference. Interesting, my old tickets7/ directory is still around.

becker87: pwd
  /lsst/becker/lsst_devel/imageproc
becker86: ls branches/ticket7/diffim/*
  branches/ticket7/diffim/build:
  branches/ticket7/diffim/doc:
  branches/ticket7/diffim/examples:
  branches/ticket7/diffim/include:
  branches/ticket7/diffim/lib:
  branches/ticket7/diffim/python:
  branches/ticket7/diffim/src:
  branches/ticket7/diffim/tests:
  branches/ticket7/diffim/ups:

So, set up my ticket to look like this and then wipe out this old thing...

becker89: cd tickets/7
becker90: mkdir build/  doc/  examples/  include/  lib/  python/  src/  tests/  ups/
becker92: svn add build/ doc/ examples/ include/ lib/ python/ src/ tests/ ups/
becker97: mv lsstimageproc01.cc tests/
becker98: mv SConscript tests/
becker99: svn add tests/*
  A         tests/lsstimageproc01.cc
  A         tests/SConscript
becker100: svn remove lsstimageproc01.cc SConscript
  D         lsstimageproc01.cc
  D         SConscript
becker104: cp ../../../imageproc/branches/scons/SConstruct .
becker106: svn add SConstruct
becker108: svn commit -m "Setting up ticket fully"
...
becker116: pwd
  /lsst/becker/lsst_devel/imageproc/branches
becker118: svn remove ticket7
becker120: svn commit -m "Removing old format ticket"

OK, Next up I need an appropriate SConstruct file. The one in /lsst/becker/lsst_devel/DC2/scons works. Change HeadURL to r"$HeadURL: svn+ssh://svn.lsstcorp.org/DC2/imageproc/tickets/7/SConstruct $"

becker150: scons -u tests
  scons: warning: Ignoring missing SConscript 'doc/SConscript'
  File "/lsst/becker/lsst_devel/imageproc/tickets/7/SConstruct", line 29, in ?

It looks like I need a SConstruct file in every directory in my branch? Ah, this comes from the SConstript line

for d in Split("doc examples include/lsst/fw lib src tests"):
    SConscript(os.path.join(d, "SConscript"))

Change it to just look at tests/. Next issue

scons: warning: Ignoring missing SConscript 'python/lsst/fw/Catalog/SConscript'
File "/lsst/becker/lsst_devel/imageproc/tickets/7/SConstruct", line 33, in ?

This comes from the line in SConscript that says

for d in map(lambda str: "python/lsst/fw/" + str, Split("Catalog Core Display")):
    SConscript(os.path.join(d, "SConscript"))

Not sure if I need this yet since I'm not swigging anything... Take it out for now...

becker152:scons -u tests
  tests/lsstimageproc01.cc:2: error: `lsst' has not been declared
  tests/lsstimageproc01.cc:2: error: `fw' is not a namespace-name
  tests/lsstimageproc01.cc:2: error: expected namespace-name before ';' token

Awesome! I just need to actually put some code in my code.

#include <iostream>
using namespace std;

but I need to tell my code to somehow look at the fw/ development code from another ticket. Say the scons branch. WHich is on my computer at /lsst/becker/lsst_devel/DC2/scons.