mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-04-29 19:45:01 +02:00

API is located at org.eclipse.cdt.qt.core.index package. Entry point is QMakeProjectInfoFactory.getForActiveConfigurationIn method that provides ability to retrieve QMake information (IQMakeInfo interface) for active project configuration of a specified project. Also allows to listen on changes of such information. qmakeEnvProvider extensions allows CDT build-system to provide environment for QMake runs within their build-system. Information is gather by parsing output of: 1) qmake -query 2) qmake -E file.pro // only for QMake version 3.0 Change-Id: Iae569bdbc89dc26d60530596b66b5227f36dfae6 Signed-off-by: David Kaspar <dkaspar@blackberry.com> Reviewed-on: https://git.eclipse.org/r/19082 Reviewed-by: Andrew Eidsness <eclipse@jfront.com> Tested-by: Hudson CI Reviewed-by: Doug Schaefer <dschaefer@qnx.com> IP-Clean: Doug Schaefer <dschaefer@qnx.com>
136 lines
4.4 KiB
XML
136 lines
4.4 KiB
XML
<?xml version='1.0' encoding='UTF-8'?>
|
|
<!-- Schema file written by PDE -->
|
|
<schema targetNamespace="org.eclipse.cdt.qt.core" xmlns="http://www.w3.org/2001/XMLSchema">
|
|
<annotation>
|
|
<appinfo>
|
|
<meta.schema plugin="org.eclipse.cdt.qt.core" id="qmakeEnvProvider" name="QMake Environment Provider"/>
|
|
</appinfo>
|
|
<documentation>
|
|
This extension point allows to provide environment for qmake cmd-line tool execution.
|
|
</documentation>
|
|
</annotation>
|
|
|
|
<include schemaLocation="schema://org.eclipse.core.expressions/schema/expressionLanguage.exsd"/>
|
|
|
|
<element name="extension">
|
|
<annotation>
|
|
<appinfo>
|
|
<meta.element />
|
|
</appinfo>
|
|
</annotation>
|
|
<complexType>
|
|
<sequence>
|
|
<element ref="qmakeEnvProvider" minOccurs="1" maxOccurs="unbounded"/>
|
|
</sequence>
|
|
<attribute name="point" type="string" use="required">
|
|
<annotation>
|
|
<documentation>
|
|
a fully qualified identifier of the target extension point
|
|
</documentation>
|
|
</annotation>
|
|
</attribute>
|
|
<attribute name="id" type="string">
|
|
<annotation>
|
|
<documentation>
|
|
an optional identifier of the extension instance
|
|
</documentation>
|
|
</annotation>
|
|
</attribute>
|
|
<attribute name="name" type="string">
|
|
<annotation>
|
|
<documentation>
|
|
an optional name of the extension instance
|
|
</documentation>
|
|
<appinfo>
|
|
<meta.attribute translatable="true"/>
|
|
</appinfo>
|
|
</annotation>
|
|
</attribute>
|
|
</complexType>
|
|
</element>
|
|
|
|
<element name="qmakeEnvProvider">
|
|
<complexType>
|
|
<sequence>
|
|
<element ref="enablement" minOccurs="0" maxOccurs="1"/>
|
|
</sequence>
|
|
<attribute name="class" type="string" use="required">
|
|
<annotation>
|
|
<documentation>
|
|
Implementation of QMake environment provider which is used to determinate environment for running QMake.
|
|
</documentation>
|
|
<appinfo>
|
|
<meta.attribute kind="java" basedOn=":org.eclipse.cdt.qt.core.index.IQMakeEnvProvider"/>
|
|
</appinfo>
|
|
</annotation>
|
|
</attribute>
|
|
<attribute name="priority" type="integer" default="0">
|
|
<annotation>
|
|
<documentation>
|
|
Priority of QMake environment provider. Less number means higher priority. Default priority is 0.
|
|
</documentation>
|
|
</annotation>
|
|
</attribute>
|
|
</complexType>
|
|
</element>
|
|
|
|
<annotation>
|
|
<appinfo>
|
|
<meta.section type="since"/>
|
|
</appinfo>
|
|
<documentation>
|
|
8.2
|
|
</documentation>
|
|
</annotation>
|
|
|
|
<annotation>
|
|
<appinfo>
|
|
<meta.section type="examples"/>
|
|
</appinfo>
|
|
<documentation>
|
|
The following is an example of a qmakeEnvProvider contribution:
|
|
<p>
|
|
<pre>
|
|
<extension
|
|
point="org.eclipse.cdt.qt.core.qmakeEnvProvider"
|
|
id="example"
|
|
name="Example QMake Env Provider Extension">
|
|
<qmakeEnvProvider
|
|
class="com.example.internal.ExampleProvider">
|
|
<enablement>
|
|
<with variable="projectNatures">
|
|
<iterate operator="or">
|
|
<equals value="com.example.my-nature"/>
|
|
</iterate>
|
|
</with>
|
|
</enablement>
|
|
</qmakeEnvProvider>
|
|
</extension>
|
|
</pre>
|
|
</p>
|
|
</documentation>
|
|
</annotation>
|
|
|
|
<annotation>
|
|
<appinfo>
|
|
<meta.section type="apiinfo"/>
|
|
</appinfo>
|
|
<documentation>
|
|
The contributed class must implement <code>org.eclipse.cdt.qt.core.index.IQMakeEnvProvider</code>.
|
|
</documentation>
|
|
</annotation>
|
|
|
|
<annotation>
|
|
<appinfo>
|
|
<meta.section type="copyright"/>
|
|
</appinfo>
|
|
<documentation>
|
|
Copyright (c) 2013 QNX Software Systems and others.
|
|
All rights reserved. This program and the accompanying materials
|
|
are made available under the terms of the Eclipse Public License v1.0
|
|
which accompanies this distribution, and is available at
|
|
http://www.eclipse.org/legal/epl-v10.html
|
|
</documentation>
|
|
</annotation>
|
|
|
|
</schema>
|