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

...

Make _setup.bat (for Windows) and _setup (for other OSes) a separate target. Eliminate _setup.vbs. Mostly affects the tool generateScripts.py.

Wiki Markup
{highlight:yellow}{*}June 9* {highlight}
Have

...

made

...

a

...

separate

...

target;

...

also

...

renamed

...

_setup

...

on

...

Linux

...

to

...

_setup.sh

...

for

...

clarity.

...

Mods

...

were

...

made

...

to

...

generateScripts

...

(which

...

could

...

use

...

some

...

clean-up)

...

and

...

to

...

SConstruct,

...

to

...

add

...

the

...

lines

...

which

...

invoke

...

the

...

Builder

...

defined

...

in

...

SConstruct.

...

Contents

...

of

...

_setup.bat

...

are

...

not

...

yet

...

complete.

...

Wiki Markup
{highlight:green}{*}June 15* {highlight}
Implemented

...

a

...

slightly

...

different

...

arrangement.

...

_setup.vbs

...

should

...

be

...

routinely

...

generated

...

as

...

part

...

of

...

a

...

build,

...

but

...

its

...

function

...

when

...

run

...

is

...

not

...

to

...

set

...

up

...

the

...

environment,

...

but

...

rather

...

to

...

create

...

a

...

(non-portable,

...

containing

...

absolute

...

paths)

...

file

...

_setup.bat

...

which,

...

when

...

run,

...

will

...

set

...

environment

...

variables.

...

End

...

users

...

can

...

create

...

a

...

suitable

...

_setup.bat

...

for

...

their

...

installation

...

by

...

running

...

_setup.vbs

...

from

...

the

...

command

...

line.

...

Developers

...

can

...

do

...

the

...

same

...

or

...

they

...

can

...

get

...

SCons

...

to

...

create

...

_setup.bat

...

by

...

building

...

a

...

special

...

SCons

...

target setup

...

.

...

Externals handling

Reorganize externals.scons. Separate from code; keep common parts in SConsFiles (used by all containers). Individual containers should only need to specify which externals (and which versions) are wanted. Will probably take the form of

...

The per-container externals.scons looks like this:unmigrated-wiki-markup

{{Import('allExternals')}} \\ {{usedExternals = \[ \]}} \\ {{<span style="color: red">&#35; several lines like the following, one for each external used by the container</span>}} \\ {{usedExternals.append(\{'name' : 'cfitsio', 'iversion' : 'v3060'\})}} \\ {{<span style="color: red">&#35; .. and finally</span>}}\\ {{
usedExternals = [ ]
# several lines like the following, one for each external used by the container
usedExternals.append({'name' : 'cfitsio', 'iversion' : 'v3060'})
# .. and finally
Return('usedExternals')}}

Target names

Separate out target names, probably into master file, to be kept somewhere in SConsFiles, and optional per-container file. These files would be accessible both to SCons itself and to GoGui. Format will be two lists (one or both of which may be empty). First is list of global targets (e.g. includes); second is list of generic per-package target names to which package name should be prepended (e.g. -includes, resulting in a target for each package in the container like facilities-includes)