Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

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 and imas/$IMAS_VERSION/lib - keeps links to libraries (to simplify LD_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?