mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-02 03:39:43 -06:00
Eclipse: Add property to include additional contents in .cproject file
Similar to ECLIPSE_EXTRA_NATURES which can be used to add a third party nature to the .project, this property offers the possibility to inject third party contents into the .cproject. An example of where this is useful is MCUXpresso. This is an IDE based on Eclipse. Compiling through CMake generated Eclipse projects works fine by using a custom toolchain. However, in order to be able to debug using such a project, an extra storageModule specific to the target board is needed in the cproject.
This commit is contained in:
committed by
Brad King
parent
e81e024330
commit
fd0da95f63
@@ -40,6 +40,7 @@ Properties of Global Scope
|
||||
/prop_gbl/JOB_POOLS
|
||||
/prop_gbl/PREDEFINED_TARGETS_FOLDER
|
||||
/prop_gbl/ECLIPSE_EXTRA_NATURES
|
||||
/prop_gbl/ECLIPSE_EXTRA_CPROJECT_CONTENTS
|
||||
/prop_gbl/REPORT_UNDEFINED_PROPERTIES
|
||||
/prop_gbl/RULE_LAUNCH_COMPILE
|
||||
/prop_gbl/RULE_LAUNCH_CUSTOM
|
||||
|
||||
12
Help/prop_gbl/ECLIPSE_EXTRA_CPROJECT_CONTENTS.rst
Normal file
12
Help/prop_gbl/ECLIPSE_EXTRA_CPROJECT_CONTENTS.rst
Normal file
@@ -0,0 +1,12 @@
|
||||
ECLIPSE_EXTRA_CPROJECT_CONTENTS
|
||||
-------------------------------
|
||||
|
||||
Additional contents to be inserted into the generated Eclipse cproject file.
|
||||
|
||||
The cproject file defines the CDT specific information. Some third party IDE's
|
||||
are based on Eclipse with the addition of other information specific to that IDE.
|
||||
Through this property, it is possible to add this additional contents to
|
||||
the generated project.
|
||||
It is expected to contain valid XML.
|
||||
|
||||
Also see the :prop_gbl:`ECLIPSE_EXTRA_NATURES` property.
|
||||
@@ -6,3 +6,5 @@ List of natures to add to the generated Eclipse project file.
|
||||
Eclipse projects specify language plugins by using natures. This property
|
||||
should be set to the unique identifier for a nature (which looks like a Java
|
||||
package name).
|
||||
|
||||
Also see the :prop_gbl:`ECLIPSE_EXTRA_CPROJECT_CONTENTS` property.
|
||||
|
||||
@@ -1001,6 +1001,13 @@ void cmExtraEclipseCDT4Generator::CreateCProjectFile() const
|
||||
xml.EndElement(); // project
|
||||
|
||||
xml.EndElement(); // storageModule
|
||||
|
||||
// Append additional cproject contents without applying any XML formatting
|
||||
if (const char* extraCProjectContents =
|
||||
mf->GetState()->GetGlobalProperty("ECLIPSE_EXTRA_CPROJECT_CONTENTS")) {
|
||||
fout << extraCProjectContents;
|
||||
}
|
||||
|
||||
xml.EndElement(); // cproject
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user