Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

...

Type 4 Similar to 3, but involving a package other than enums.  Any time package A needs access to a header in package B but does not need link-time access to a library in B, we need to explicitly add B's include folder to A's include path.  For example, TkrUtil uses services from GlastSvc.  It doesn't need to link to the GlastSvc library, but it does need IGlastDetSvc.h at compile time.

LdfEvent references a header file from Event and one from lsfData even though it doesn't link to the libraries from those packages (in fact it doesn't link to any other libraries). The Event header file in turn includes a header from enums. Here is the generate function from LdfEventLib.py:

No Format
titleHandling Type 3 and Type 4

def generate(env, **kw):
    if not kw.get('depsOnly', 0):
        env.Tool('addLibrary', library = ['LdfEvent'])
        if env['PLATFORM']=='win32' and env.get('CONTAINERNAME','')=='GlastRelease':
	    env.Tool('findPkgPath', package = 'LdfEvent')

    if env['PLATFORM']=='win32' and env.get('CONTAINERNAME','')=='GlastRelease':
        env.Tool('findPkgPath', package = 'lsfData')
        env.Tool('findPkgPath', package='enums')
        env.Tool('findPkgPath', package='Event')

The work is summarized below.  "Done"  just means "edited", but entirely untested.

Package 

Work

Status

SConsFiles

Add tool findPkgPath; modify msvs.py, addLinkDeps.py, SConstruct

SConsFiles-00-28-01 Committed and tagged

SConsFiles

Mod to addLinkDeps to make type 2 updates neater

committed done; testing in progress

AcdRecon

type 1, type 4 done

AcdRecon-05-04-00

AcdUtil

type 1, type 2, type 4

AcdUtil-03-03-00 done

AdfEvent

type 2
done

AdfEvent-00-06-00

AnalysisNtuple

type 1, type 3, type 4

AnalysisNtuple-02-64-00 done

AncillaryDataEvent

type 2 done

AncillaryDataEvent-01-05-00

AncillaryDataUtil

type 2 done

AncillaryDataUtil-01-01-00

astro

type 1 done, tested

astro-03-14-00

CalDigi

type 4
done

CalDigi-03-09-00

CalibData

type 1 done

CalibData-00-28-00

calibRootData

type 1 done

calibRootData-01-08-00

CalibSvc

type 1, type 4

done

CalibSvc-00-42-00

calibUtil calibTkrUtil

type 1

done

calibUtil-01-14-00

calibUtil

type 1

done

CalRecon

type 1 done

CalRecon-06-19-00

CalUtil

type 1, type 4 done

CalUtil-03-15-00

CalXtalResponse

type 1, type 4 done

CalXtalResponse-00-27-00

celestialSources

type 2 done

celestialSources-01-06-00

c/EarthPhenom

type 2 done

EarthPhenom-00-02-00

c/eblAtten

type 2 done

eblAtten-00-09-00

c/genericSources

type 2 done

genericSources-01-17-00

c/GRB

type 2 done

GRB-04-05-00

c/GRBobs

type 2 done

GRBobs-03-04-00

c/GRBtemplate

type 2 done

GRBtemplate-01-04-00

c/microQuasar

type 2 done

microQuasar-01-05-00

c/Pulsar

type 2 done

Pulsar-03-02-00

c/SpectObj

type 2 done

SpectObj-01-04-00

CHS/eventFile

type 1 done, builds

eventFile-09-01-00

classifier

type 2 done

classifier-01-07-00

commonRootData

type 1 done

commonRootData-02-17-00

configData

type 1, type 3 done

configData-01-12-00

ConfigSvc

type 1, type 3 done

ConfigSvc-00-04-00

CRflux

type 4
done

CRflux-01-20-00

detCheck

type 2
done

detCheck-01-08-00

DetDisplay

type 4
done

DetDisplay-03-06-00

detModel

type 2
done

detModel-02-22-00

digiRootData

type 1, type 3
done

digiRootData-11-15-00

EbfWriter

type 1
done

EbfWriter-01-11-00

embed_python

type 2
done

embed_python-01-06-00

Event

type 1, type 3
done

Event-14-14-00

evtUtils

type 1
done

evtUtils-00-02-00

facilities

type 1
done, tested

facilities-02-21-00

fitsGen

type 2
done

fitsGen-06-05-00

flux

type 2
done

flux-08-43-00

FluxSvc

type 1
done

FluxSvc-06-59-00

G4Generator

type 1
done

G4Generator-06-06-00

GCRCalib

type 4
 

GCRCalib-01-11-00

gcrSelectRootData

type 1
done

gcrSelectRootData-02-03-00

geometry

type 2
done

geometry-03-03-00

geomrep

type 2
done

geomrep-04-04-00

GlastClassify

types 1, 2
done

GlastClassify-07-10-00

GlastSvc

type 1
done

GlastSvc-11-01-00

gui

type 2
done

gui-03-08-00

GuiSvc

type 1
done

GuiSvc-03-11-00

HepRepSvc

type 1, type 4
done

HepRepSvc-00-42-00

idents

type 2
done, tested.

idents-02-21-00

Interleave

type 4

Interleave-01-08-00

LdfConverter

type 4
done

LdfConverter-04-07-00

LdfEvent

type 1, type 3
done, builds , type 4

LdfEvent-04-13-00

ldfReader

type 1, type 3
done

ldfReader-07-05-00

lsfData

type 1, type 3
done

lsfData-04-04-00

mcRootData

type 1
done

mcRootData-02-23-00

mootCore

type 1
done

mootCore-01-25-00

MootSvc

type 1
done

MootSvc-01-03-00

ntupleWriterSvc

type 1
done

ntupleWriterSvc-06-02-00

OnboardFilter

type 1, type 4
done

OnboardFilter-04-17-00

OnboardFilterTds

type 1, type 3
done

OnboardFilterTds-00-12-00

Overlay

type 1, type 3, type 4

Overlay-02-03-00 done

OverlayEvent

type 1, type 3, type 4

OverlayEvent-01-01-00 done

overlayRootData

type 1, type 3 done

overlayRootData-00-04-00

rdbModel

type 1 done

rdbModel-02-15-00

reconRootData

type 1, type 3
done

reconRootData-09-30-00

RootConvert

type 1 done

RootConvert-01-52-00

RootDisplay

type 1, type 4
done

RootDisplay-00-06-00

RootIo

type 1 done

RootIo-25-05-00

rootUtil

type 1 done

rootUtil-01-05-00

tip

type 2 done, tested

tip-02-18-00

TkrRecon

type 1, type 4 done

TkrRecon-10-34-00

TkrUtil

type 1, type 4 done

TkrUtil-03-27-00

Trigger

type 1, type 3 done

Trigger-07-05-00

xmlBase

type 1 done, tested.

xmlBase-05-06-00

xmlUtil

type 1
done, tested.

xmlUtil-03-05-00

SConsFiles

mod to registerTargets.py to not install headers;
mod to processExternals.py for rootcint
mod to msvs.py for rootcint
mod to SConstruct so as to not break creating installer zip files

done, tested.