...
Code Block |
---|
workspaces/ |-- workspaceX |-- workspaceY `-- workspaceZ |-- common | |-- actor1 | | `-- lib | | `-- libActor1.so | |-- actor2 | | `-- lib | | `-- libActor2.so | `-- lib | |-- libActor1.so -> ../actor1/lib/libActor1.so | `-- libActor2.so -> ../actor2/lib/libActor2.so `-- imas |-- 3.23.2 | |-- actorA | | `-- lib | | `-- libActorA.so | |-- actorB | | `-- lib | | `-- libActorB.so | |-- actorC | | `-- lib | | `-- libActorC.so | `-- lib | |-- libActorA.so -> ../actorA/lib/libActorA.so | |-- libActorB.so -> ../actorB/lib/libActorB.so | `-- libActorC.so -> ../actorC/lib/libActorC.so `-- 3.24.0 |-- actorA | `-- lib | `-- libActorA.so |-- actorB | `-- lib | `-- libActorB.so |-- actorD | `-- lib | `-- libActorD.so `-- lib |-- libActorA.so -> ../actorA/lib/libActorA.so |-- libActorB.so -> ../actorB/lib/libActorB.so `-- libActorD.so -> ../actorD/lib/libActorD.so |
switching workspace
Workspace layout:
- directory
common
- keeps all actors with no IMAS dependencies - directory
imas/$IMAS_VERSION
- keeps all actors build for given version of IMAS - directories
common/lib
andimas/$IMAS_VERSION/lib
- keeps links to libraries (to simplifyLD_LIBRARY_PATH
)
Actor generation:
- Generated code (wrapper) will be saved under
$ACTIVE_WORKSPACE/imas/$IMAS_VERSION/<actor_name>
Switching workspace
LD_LIBRARY_PATH = $ACTIVE_WORKSPACE/common/lib + $ACTIVE_WORKSPACE/imas/$IMAS_VERSION/lib
- java.lib.path = $LD_LIBRARY_PATH
- Kepler: rm target/* ? ant compile?
Scripts:
- list workspaces
- switch workspace
- remove workspace
- create workspace
Open points
- Do we need directory "
common"
? Should we care about "no-IMAS" actors (usually there are none of them)... $KEPLER/imas/target
- can be put within workspace?