Download SolidFX User Manual
Transcript
32 SolidFX User Manual Compiler profiles These profiles describe the options used by a specific compiler. Although users can freely edit and create compiler profiles, this practice is not recommended. If a given compiler, including its standard libraries, is already present on a given machine, it is simpler to use the extractor driver. The driver will then automatically interact with the installed compiler to use the right options for that compiler. User (project) profiles These profiles describe options that are specific for a given project, or code base. Such options are typically passed to the build process via makefiles or other compiler-specific build mechanisms, such as Visual C++ project files. The simplest way to interpret these options is to run the native build process, for example the makefile, by substituting the native compiler with the SolidFX extractor driver. This process is described in Section 4.1. However, in the case when you cannot do this, for example when there is no executable makefile or similar available, the solution is to create a user profile containing the desired options and run the fact extractor with this profile. The structure of a profile file consists of several fields, as described in Table 2 below. The fields can come in any order within a profile file. Table 2: Extractor profile structure Field name Description <Name> <![CDATA[name]]> </Name> <System> <Directory> <![CDATA[path]]> </Directory> </System> Indicates the profile’s name. For user profiles, any string can be used here. For compiler profiles, unique names are recommended. <Includes> <Directory> <![CDATA[path]]> </Directory> </Includes> <Force> <Directory> <![CDATA[forced_header]]> </Directory> </Force> <Defines> <Define> <![CDATA[define]]> </Define> <Undef> <![CDATA[undef]]> </Undef> </Defines> Same as the <System> tag, but specifies search paths for the user headers. Specifies search paths for the system headers. If several <Directory>…</Directory> blocks are specified, their search paths are considered in the order of specification. Roughly equivalent to the –I option of gcc. Specifies one or more forced headers. Forced headers behave as though they were included before the first line of the actual input code. Similar to the –include option of gcc. Specifies one or more preprocessor defines and/or undefines. The defines are of the form name=value. The undefines are of the form name. Similar to the –Dname=value and –Uname options of gcc. The defines and undefines get passed to the extractor in the order that they appear declared within the <Defines>…</Defines> block. Defines and undefines declaration can come in any order within this block. ©SolidSource 2007-2009 www.SolidSourceIT.com