blob: 3c2ee883a292f07316277d028a4b6fd7ec5b6b3b [file] [log] [blame]
SCA2Amalthea Headless Tool
The sca2Amalthea headless tool can be started in different ways:
1. Launch via Equinox launcher executable, e.g. on Windows (sca2Amalthea.exe)
sca2Amalthea <-pdir> [-astp] [-hdirlist] [-taskinfo] [-lockinfo] [-enableStructMember] [-xmlCallTreePath] [-outdir] [-consoleLog] [-console]
Options:
-hdirlist This optional parameter takes a list of directory paths that contain header files.The directory paths should be seperated by the path seperator ie ;
-taskinfo This optional parameter takes path of the task/isr information file
-lockinfo This optional parameter takes path of a csv file containing information of lock functions.
-enableStructMember This optional parameter takes a boolean value for reporting struct member accesses in amalthea model.
-xmlCallTreePath This optional parameter takes the path of the XMLCallTree.xml to be converted to amalthea model.
-outdir This optional parameter takes the path of the directory where the amalthea model has to be stored.
-h Shows the help
-consoleLog When using the launcher, the console outputs are not printed to the shell.
By using this option a separate shell is opened to which the results are printed.
-console Opens the OSGi console. This option has to be provided in addition to the options listed above.
Mandatory Parameter:
-pdir Mandatory parameter.This parameter takes path of the root directory of the c project.
-astp Mandatory parameter if xmlCallTreePath option is not provided. This parameter takes path to the LLVM ASTParser executable.
Examples:
Displaying sca2Amalthea help
sca2Amalthea.exe -h -console
Generate amalthea model for all source files in project directory
sca2Amalthea.exe -pdir C:\\Temp\\project_dir -astp C:\\Desktop\\ast_dir
Generate amalthea model for all source files in project directory with task information
sca2Amalthea.exe -pdir C:\\Temp\\project_dir -astp C:\\Desktop\\ast_dir -taskinfo C:\\Temp\\project_dir\\task_info\\taskInfo.csv
Generate amalthea model from xmlCallTree.xml file
sca2Amalthea.exe -pdir C:\\Temp\\project_dir -xmlCallTreePath C:\\Temp\\project_dir\\_gen\\sca2Amalthea\\XMLCallTree.xml
Generate amalthea model for all source files in project directory with struct members enabled
sca2Amalthea.exe -pdir C:\\Temp\\project_dir -astp C:\\Desktop\\ast_dir -enableStructMember
Generate amalthea model for with some header directory paths
sca2Amalthea.exe -pdir C:\\Temp\\project_dir -astp C:\\Desktop\\ast_dir -hdirlist C:\\Temp\\project_dir\\header_dir1;C:\\Temp\\project_dir\\header_dir2
Generate amalthea model for all source files in some output directory
sca2Amalthea.exe -pdir C:\\Temp\\project_dir -astp C:\\Desktop\\ast_dir -outdir C:\\Desktop\\outdir
2. Launch via executable jar (uses the bnd launcher)
java -jar sca.jar <-pdir> [-astp] [-hdirlist] [-taskinfo] [-lockinfo] [-enableStructMember] [-xmlCallTreePath] [-outdir]
Options:
-hdirlist This optional parameter takes a list of directory paths that contain header files.The directory paths should be seperated by the path seperator ie ;
-taskinfo This optional parameter takes path of the task/isr information file
-lockinfo This optional parameter takes path of a csv file containing information of lock functions.
-enableStructMember This optional parameter takes a boolean value for reporting struct member accesses in amalthea model.
-xmlCallTreePath This optional parameter takes the path of the XMLCallTree.xml to be converted to amalthea model.
-outdir This optional parameter takes the path of the directory where the amalthea model has to be stored.
Mandatory Parameter:
-pdir Mandatory parameter.This parameter takes path of the root directory of the c project.
-astp Mandatory parameter if xmlCallTreePath option is not provided. This parameter takes path to the LLVM ASTParser executable.
Examples:
Displaying sca2Amalthea help
java -jar sca.jar -h
Generate amalthea model for all source files in project directory
java -jar sca.jar -pdir C:\\Temp\\project_dir -astp C:\\Desktop\\ast_dir
Generate amalthea model for all source files in project directory with task information
java -jar sca.jar -pdir C:\\Temp\\project_dir -astp C:\\Desktop\\ast_dir -taskinfo C:\\Temp\\project_dir\\task_info\\taskInfo.csv
Generate amalthea model from xmlCallTree.xml file
java -jar sca.jar -pdir C:\\Temp\\project_dir -xmlCallTreePath C:\\Temp\\project_dir\\_gen\\sca2Amalthea\\XMLCallTree.xml
Generate amalthea model for all source files in project directory with struct members enabled
java -jar sca.jar -pdir C:\\Temp\\project_dir -astp C:\\Desktop\\ast_dir -enableStructMember
Generate amalthea model for header directory paths
java -jar sca.jar -pdir C:\\Temp\\project_dir -astp C:\\Desktop\\ast_dir -hdirlist C:\\Temp\\project_dir\\header_dir1;C:\\Temp\\project_dir\\header_dir2
Generate amalthea model for all source files in some output directory
java -jar sca.jar -pdir C:\\Temp\\project_dir -astp C:\\Desktop\\ast_dir -outdir C:\\Desktop\\outdir
Open the osgi shell
java -jar -Dosgi.console= sca.jar -pdir C:\\Temp\\project_dir -astp C:\\Desktop\\ast_dir
3. Launch via Equinox Framework JAR
java -jar plugins/org.eclipse.osgi_3.15.100.v20191114-1701.jar -configuration ./configuration <-pdir> [-astp] [-hdirlist] [-taskinfo] [-lockinfo] [-enableStructMember] [-xmlCallTreePath] [-outdir]
Options:
-hdirlist This optional parameter takes a list of directory paths that contain header files.The directory paths should be seperated by the path seperator ie ;
-taskinfo This optional parameter takes path of the task/isr information file
-lockinfo This optional parameter takes path of a csv file containing information of lock functions.
-enableStructMember This optional parameter takes a boolean value for reporting struct member accesses in amalthea model.
-xmlCallTreePath This optional parameter takes the path of the XMLCallTree.xml to be converted to amalthea model.
-outdir This optional parameter takes the path of the directory where the amalthea model has to be stored.
Mandatory Parameter:
-pdir Mandatory parameter.This parameter takes path of the root directory of the c project.
-astp Mandatory parameter if xmlCallTreePath option is not provided. This parameter takes path to the LLVM ASTParser executable.
-configuration<location> This parameter is needed to specify the location of the config.ini file.When starting the via Equinox Framework JAR the location needs to be provided this way to startup correctly.
Examples:
Displaying sca2Amalthea help
java -jar sca.jar -h
Generate amalthea model for all source files in project directory
java -jar sca.jar -pdir C:\\Temp\\project_dir -astp C:\\Desktop\\ast_dir
Generate amalthea model for all source files in project directory with task information
java -jar sca.jar -pdir C:\\Temp\\project_dir -astp C:\\Desktop\\ast_dir -taskinfo C:\\Temp\\project_dir\\task_info\\taskInfo.csv
Generate amalthea model from xmlCallTree.xml file
java -jar sca.jar -pdir C:\\Temp\\project_dir -xmlCallTreePath C:\\Temp\\project_dir\\_gen\\sca2Amalthea\\XMLCallTree.xml
Generate amalthea model for all source files in project directory with struct members enabled
java -jar sca.jar -pdir C:\\Temp\\project_dir -astp C:\\Desktop\\ast_dir -enableStructMember
Generate amalthea model for some header directory paths
java -jar sca.jar -pdir C:\\Temp\\project_dir -astp C:\\Desktop\\ast_dir -hdirlist C:\\Temp\\project_dir\\header_dir1;C:\\Temp\\project_dir\\header_dir2
Generate amalthea model for all source files in some output directory
java -jar sca.jar -pdir C:\\Temp\\project_dir -astp C:\\Desktop\\ast_dir -outdir C:\\Desktop\\outdir