1、Integrating a custom tool-chain in CDT,Instructors,Mikhail Sennikovsky Intel Corporation CDT Committer Mikhail Voronin Intel Corporation ,Agenda,The purpose of the tutorial Tools integration in CDT CDT Infrastructure outline Tool-chain integration mechanism Tutorials Tutorial 1: Two-step tool-chain
2、definition Tutorial 2: Populating tool-chain with the settings info Tutorial 3: Extending tool-chain to support “Managed” Build Tutorial 4: Advanced “Managed” Build settings customization Tutorial 5: API overview Q & A,Purpose,Understand the CDT tool-chain integration mechanism Learn how to make a d
3、eep integration of a custom tool-chain into the CDT,Tools integration in CDT,Multi-language support C/C+ IDE becomes Compiled Languages IDE Photran based on CDT Compilers co-existence Can easily switch from gcc to another integrated compiler Per-folder/file settings Debuggers Potentially other debug
4、gers than gdb can be integrated as well Builders GNU Make and Internal builder are available by default CDT is open for others!,Way to integrate,Compilers example: Adding Language entry Build options definitions in MBS Information on built-in symbols and includes Build environment Error parser,CDT I
5、nfrastructure outline,CDT Core Project settings infrastructure Source Code navigation/manipulation Binary file navigation,CDT Build System Build Functionality Providing tool-chain settings to the core and debug components,CDT Debug,CConfigurationDataProvider mechanism,buildDefinitions mechanism,Tool
6、-chain Definitions,Tool-chain integration mechanism,Build System customization Build behavior definition Build behavior and logic for “Managed” Builds Build command for “Standard” Builds Build Settings UI for “Managed” builds Integration in the New Project Wizard Providing settings to other parts of
7、 the CDT Is a profile for holding settings: Built-in Includes and Symbols, Build Environment, Error parsers, Binary parsers Defined by the tool-chain integrator Customizable for specific project Settings get applied when the toolchain is assigned to the project On project creation On tool-chain subs
8、titution/modification,Build behavior definition (Managed Build) for Intel Fortran compiler,Tool Defintion (plugin.xml),Tool option values defintion (.cproject),Project Build Setting UI,Generated makefile,.,.,New Project Wizard customization for Intel Fortran compiler,.,.,New Project Wizard,Project T
9、ype definition,Build Artifact type definition,Tutorials,Tutorial 1: Two-step tool-chain definition Tutorial 2: Populating tool-chain with the settings info Tutorial 3: Extending tool-chain to support “Managed” Build Tutorial 4: Advanced “Managed” Build settings customization Tutorial 5: API overview
10、,Tutorial 1: Two-step tool-chain definition,Tool-chain Builder Tools,Tutorial 2: Populating tool-chain with the settings info,Tool-chain Binary parsers Build environment Builder Build command Build behavior for each eclipse build type Builder error parser Tools Error parsers Built-in Includes/Symbol
11、s discovery,Tutorial 3: Extending tool-chain to support “Managed” Build,Builder Buildfile generator CDT Internal Builder Tools Options Project-type,Tutorial 4: Advanced “Managed” Build settings customization,Build settings and behavior Option enablement expressions Option value handlers Option applicability calculators New Project Wizard integration,Tutorial 5: API overview,Build System API ManagedBuildManager Using Core API for accessing/modifying the Build settings ICProjectDescriptionManager,Q & A,