Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[cdt-dev] How to override ScannerConfigurationDiscoveryProfile?

Hello, All!

I've got a problem with new CDT 6.0.

I've developed my own toolchain based on CDT GCC, and it uses the special compiler instead of gcc. I need to override ScannerConfigurationDiscoveryProfile, i.e. for my purposes, Eclipse should display in the "Include" branch of every project with my toolchain include-paths, that gives our spesial compiler, not gcc!

In CDT 4.x - 5.x I used the folllowing internal scanner classes that were "opened", because I haven't found other public interfaces:

   <extension
         id="MyManagedMakePerProjectProfileC"
         name="C/C++ managed make per project SCD profile"
         point="org.eclipse.cdt.make.core.ScannerConfigurationDiscoveryProfile">
      <scannerInfoCollector
            class="org.eclipse.cdt.make.internal.core.scannerconfig2.PerProjectSICollector"
            scope="project">
      </scannerInfoCollector>
      <buildOutputProvider>
         <open></open>
         <scannerInfoConsoleParser
               class="org.eclipse.cdt.make.internal.core.scannerconfig.gnu.GCCScannerInfoConsoleParser">
         </scannerInfoConsoleParser>
      </buildOutputProvider>
      <scannerInfoProvider
            providerId="specsFile">
         <run
               arguments="-E -P -v -dD ${plugin_state_location}/specs.c"
               class="org.eclipse.cdt.make.internal.core.scannerconfig2.GCCSpecsRunSIProvider"
               command="{PATH_TO_MY_COMPILER}">
         </run>
         <scannerInfoConsoleParser
               class="org.eclipse.cdt.make.internal.core.scannerconfig.gnu.GCCSpecsConsoleParser">
         </scannerInfoConsoleParser>
      </scannerInfoProvider>
   </extension>

But now it tells me, that "Access to referenced classes
'org.eclipse.cdt.make.internal.core.scannerconfig2.PerProjectSICollector',
'org.eclipse.cdt.make.internal.core.scannerconfig.gnu.GCCScannerInfoConsoleParser',
'org.eclipse.cdt.make.internal.core.scannerconfig2.GCCSpecsRunSIProvider',
'org.eclipse.cdt.make.internal.core.scannerconfig.gnu.GCCSpecsConsoleParser'
is discouraged".

So, which classes/interfaces should I use now to achieve my purposes?

If there is no more such classes, please, add some public interfaces to CDT 6.0.

Please, help me, it's very important to our team.

Best regards,
              Andrey.


Back to the top