5 **sat** is provided either embedded into a salome package, or as a standalone package. It can also be retrieved from the git repositories.
11 **sat** git bases are hosted by the `salome platform Tuleap forge <https://codev-tuleap.cea.fr/projects/salome>`_ . Therefore you first have to get an account to this forge.
12 To get started, one has to download sat, and at last one sat project (usually SAT_SALOME project, which contains all the configuration required to build SALOME and its prerequisites). The following script get sat and SAT_SALOME project from git repos: ::
15 BASE_SAT=https://codev-tuleap.cea.fr/plugins/git/spns/SAT.git
16 BASE_PROJET=https://codev-tuleap.cea.fr/plugins/git/spns/SAT_SALOME.git
21 git checkout ${TAG_SAT}
24 # get sat project SAT_SALOME
25 git clone ${BASE_PROJET}
27 git checkout ${TAG_PROJET}
30 # initialisation de sat
32 # add SAT_SALOME project to sat, other configurations projects can be added
33 SAT/sat init --add_project $(pwd)/SAT_SALOME/salome.pyconf
35 # record tag and url (not mandatory)
36 SAT/sat init --VCS $BASE_SAT
37 SAT/sat init --tag $(git describe --tags)
43 **sat** is provided in salome packages with sources, in order to be able to recompile the sources (**sat** is not provided in salome packages with only binaries).
45 Embedded **sat** is always associated to an embedded **sat** project, which contains all the products and application configuration necessary to the package.
49 tar -xf SALOME-9.3.0-CO7-SRC.tgz
50 cd SALOME-9.3.0-CO7-SRC
51 ls PROJECT/ # list the embedded sat project
52 salomeTools/sat config SALOME-9.3.0 -e # edit the SALOME-9.3.0 configuration pyconf file
55 The user has usually two main use cases with an embedded sat, which are explained in the README file of the archive:
57 1. recompile the complete application
61 ./sat prepare SALOME-9.3.0
62 ./sat compile SALOME-9.3.0
63 ./sat launcher SALOME-9.3.0
65 Please note that the sources are installed in *SOURCES* directory, and the compilation is installed in *INSTALL* directory (therefore they do not overwrite the initial binaries, which are stored in *BINARIES-XXX* directory). The launcher *salome* is overwritten (it will use the new compiled binaries) but the old binaries can still be used in connection with *binsalome* launcher).
67 2. recompile only a part of the application
69 It is possible to recompile only a part of the products (those we need to modify and recompile). To enter this (partial recompilation mode), one has initialy to copy the binaries from *BINARIES-XXX* to *INSTALL*, and do the path substitutions by using the **install_bin.sh** script:
73 ./install_bin.sh # pre-installation of all binaries in INSTALL dir, with substitutions
74 ./sat prepare SALOME-9.3.0 -p GEOM # get GEOM sources, modify them
75 ./sat compile SALOME-9.3.0 -p GEOM --clean_all # only recompile GEOM
79 Standalone sat packages
80 ---------------------------
82 **sat** is also delivered as a standalone package, usually associated to a sat project. The following example is an archive containing salomeTools 5.3.0 and the salome sat project. It can be used to build from scratch any salome application.
86 # untar a standalone sat package, with a salome project
87 tar xf salomeTools_5.3.0_satproject_salome.tgz
88 cd salomeTools_5.3.0_satproject_salome
89 ls projects # list embedded sat projects
91 ./sat config -l # list all salome applications available for build
94 Finally, the project also provides bash scripts that get a tagged version of sat from the git repository, and a tagged version of salome projects. This mode is dedicated to the developpers, and requires an access to the Tuleap git repositories.