Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [cdt-dev] IConfiguration.getToolFromInputExtension - behavior differs in 4.0

Now that I can get the Linker :-) I want to add to the linker settings.

I want to add to -l (libraries)  the libname.
That seems like it should be the option of type IOption.LIBRARIES.

And I want to add to -L (library search path) the libPath..
May I presume that's the option of type IOption.LIBRARY_PATHS?
(not IOption.LIBRARY_FILES, right?)

Previously I got the options this way:

ITool cfTool = cf.getToolFromInputExtension(ext); // where ext="o" to find
linker tool
//Before I got the option for "-l (libraries)" like this:
            IOption option = cfTool.getOptionById("gnu.c.link.option.libs"
);
//And I got the option for " -L (library search path)" like this:
            IOption option=cfTool.getOptionById("gnu.c.link.option.paths");
But I don't like to hardcode it so.


I can correctly get the option for compiler include paths thusly:

ITool cfTool = cf.getToolFromInputExtension("c"); // compiler
IOption[] allOptions=cfTool.getOptions();
Then loop through each IOption till I find the one whose
       option.getValueType().equals(IOption.INCLUDE_PATH)

However it doesn't work for libraries.
I can get the option for "-l (libraries)"
by looping thru each of the options and looking for option.getValueType
().equals(IOption.LIBRARIES)
but
I can't get the option for Library search path (-L) comes in as its
getValueType() equal to
IOption.STRING_LIST  instead of the expected IOption.LIBRARY_PATHS.
How do I get the option of this type?
I guess that really is the "value type" since it returns multiple values..
How *do* I get hold of this option?
As a workaround I can get the string list one and then test to be sure its
name matches,
but this doesn't seem right.


...Beth

Beth Tibbitts  (859) 243-4981  (TL 545-4981)
High Productivity Tools / Parallel Tools  http://eclipse.org/ptp
IBM T.J.Watson Research Center
Mailing Address:  IBM Corp., 455 Park Place, Lexington, KY 40511


                                                                           
             Beth                                                          
             Tibbitts/Watson/I                                             
             BM@IBMUS                                                   To 
             Sent by:                  cdt-dev@xxxxxxxxxxx                 
             cdt-dev-bounces@e                                          cc 
             clipse.org                                                    
                                                                   Subject 
                                       [cdt-dev]                           
             05/08/2007 11:31          IConfiguration.getToolFromInputExte 
             PM                        nsion - behavior  differs in 4.0    
                                                                           
                                                                           
             Please respond to                                             
               "CDT General                                                
             developers list."                                             
             <cdt-dev@eclipse.                                             
                   org>                                                    
                                                                           
                                                                           






I'm converting my wizard page (MBSCustomPage)  to CDT 4.0 and also trying
to make it more generic.
In the Runnable that gets called after wizard pages are complete, I'm
seeing different behavior in CDT 4.0

Why in 3.1.2 did I do
IConfiguration cf = ...;
ITool cfTool = cf.getToolFromInputExtension("o");
and it gave me the GCC C Linker,
but in 4.0 it gives me the GCC Archiver ?  I need the linker.

Looks like FolderInfo.getToolFromInputExtension() returns the first
tool that matches.  Is there more than one now?

How should I get the linker? I want to add to its settings.
I want to add to -l (libraries)  the libname.
That seems to be the option of type IOption.LIBRARIES.

And I want to add to -L (library search path) the libPath..
May I presume that's the option of type IOption.LIBRARY_PATHS?
(not IOption.LIBRARY_FILES, right?)

I seem to be able to get the option of type IOption.INCLUDE_PATHto add to
the include paths just fine.
ITool cfTool = cf.getToolFromInputExtension("c")  gives me the GCC C
Compiler as expected to do that.

...Beth

Beth Tibbitts  (859) 243-4981  (TL 545-4981)
High Productivity Tools / Parallel Tools  http://eclipse.org/ptp
IBM T.J.Watson Research Center
Mailing Address:  IBM Corp., 455 Park Place, Lexington, KY 40511

_______________________________________________
cdt-dev mailing list
cdt-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/cdt-dev




Back to the top