C and Cpp File Discoverer - 2.0
Extension ID
com.castsoftware.dmtcfilediscoverer
What’s new?
See Release Notes.
Extension description
This discoverer detects projects based on the presence of C or C++ files according to a list of extensions declared for these languages.
In what situation should you install this extension?
This extension should be used when you don’t use Microsoft C/C++
projects to build your C/C++ application. Project files such
as makefile are not supported by the discoverers provided “out of
the box” in CAST. Therefore, this extension acts as a kind of “catch-all” to ensure that all C and C++ files will be packaged for analysis.
Technical information
What does the extension identify - i.e. what does it consider as a “project” and therefore an Analysis Unit:
Only one project is created per package when C or C++ files are detected (i.e. one project is equal to one Analysis Unit) - the following are supported (valid when using com.castsoftware.aip ≥ 8.3.61 or com.castsoftware.imaging.core ≥ 8.4.8):
C file
| Extension | Description |
|---|---|
*.c |
Classic C program |
*.pc |
Oracle Pro*C |
*.pcc |
Portable C Compiler |
*.pcs |
Informix ESQL/C - PREPAREd Cursor Specification (PCS) |
*.ec |
C with Embedded SQL (Informix and others) |
*.sqc |
C with Embedded SQL (IBM Db2) |
*.pgc |
C with Embedded SQL (PostgreSQL) |
*.csql |
HPE NonStop SQL / Trafodion |
*.pp2 |
Teradata PP2 (Preprocessor2 for Embedded SQL) |
C++ file
| Extension | Description |
|---|---|
*.cpp*.cc*.cxx*.c++ |
Classic C++ program |
*.ppc*.pcpp |
Oracle Pro*C/C++ |
*.ecp*.ecpp*.ecxx*.ec++ |
Informix ESQL/C++ NonStop SQL MX |
*.sqx |
C++ with Embedded SQL (IBM Db2) |
Project configuration
This project will use the name of the top-folder that contains C or C++ files. As such, given the following folder structure (for example):
root
-folder1
--folder2
---src
----folder3
-----file1.c
----folder4
-----file2.c
----folder5
-----file3.c
-----file4.cpp
---include
----file1.h
----file2.h
Using this extension with the above folder structure will yield a
project called src with a root path folder1/folder2/src. This
project references the folder corresponding to the root in order to
include all C/C++ files. If header files are found outside the
top-folder, they are not added in the references of the project.
Note that even if the extension is activated, NO project will be created when at least one Microsoft C/C++ .vcproj or .vcxproj project definition file is identified in any location under the root path (including recursive sub-folders).