Re: semantic does not parse out of directory symbols

"Eric M. Ludlam" <[email protected]> Sun, 12 Oct 2014 18:29:23 -0400
Newsgroups gmane.emacs.semantic
Message-ID <[email protected]>
Hi Xaver,

Are you using the default EDE project that shows up when you edit files 
in a project that has Automake in it?  Also, is there a Makefile.am in 
every directory, or on at certain levels?

That project type needs Makefile.am at each level to work properly. 
When I put it together it didn't occur to me that you might only have 
one toplevel Makefile.am.   I also never implemented parsing of -I for 
purposes of finding symbols, and it doesn't have a way to configure 
include paths.

If your include statement in main.cc was:

#include "../directory-sub2/Bheader.h"

that would be found, but I'm assuming you depend on include paths 
instead.  If you are using a project type where you can can configure 
the include path (like cpp-root, or a generic project type) then you 
could just add directory-sub2 to the global include path to start 
finding symbols there.

In looking through the old automake project type (the code in 
ede/project-am.el) it looks like someone added a feature where you could 
set `project-am-localvars-include-path' to a list of paths and it will 
automatically use that for your include path instead.  See the very end 
of project-am.el.   I haven't tried that, but it may work for you.  You 
may need to set them as buffer-local in a c-mode-hook so you don't 
pollute other projects.

If you are using a different EDE project type, then there are different 
ways to update your include paths.

Eric


On 10/11/2014 04:07 AM, Xaver Gerster wrote:
> Hi,
>
> I cannot get semantic to parse symbols which are included from files
> which reside outside of the directory where I currently work in.
>
> For example, say, I have an automake project with several
> subdirectories, containing projects with several targets and a minimal
> directory/project structure like this
>
> directoy-top:
>     Project.ede
>     ...
>     configure
>     AUTHORS
>     other files
>     ...
>     directory-sub1
>       Project.ede
>       ...
>       main.cc
>       Aheader.h
>       ...
>       other files
>       ...
>     directory-sub2
>       Bheader.h
>       nicelib.so
>       ...
>       other files
>
> Here,
> main.cc includes symbols from Aheader.h
> and
> Aheader.h includes symbols from Bheader.h
>
> On the level of compilation, the latter is implemented as usual by
> standard '-I ../directory-sub2' / '-L ../directory-sub2' preprocessor /
> linker CPPFLAGS / LDFLAGS flags. They are contained within the *.ede
> project configuration files.
>
> Now, when I work on main.cc or Aheader.h and do M-x
> semantic-ia-fast-jump, then, semantic *will* jump to symbols which are
> either from files in directory-sub1 or in system-wide include files.
>
> *However*, if working on Aheader.h, I want to look up a symbol which is
> contained in Bheader.h I get
>
> semantic-ia-fast-jump: Could not find suitable jump point for xyz
>
> I tried various ways of setting semanticdb roots and and include paths
> but I remain stuck with this error message.
>
> Any help would be most appreciated.
>
> Xaver
>
>
> ------------------------------------------------------------------------------
> Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
> Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
> Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
> Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
> http://p.sf.net/sfu/Zoho
> _______________________________________________
> cedet-semantic mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/cedet-semantic
>

------------------------------------------------------------------------------
Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
http://p.sf.net/sfu/Zoho