Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 153712 - Kdevelop 3.3.5 requires ctags 5.6
Summary: Kdevelop 3.3.5 requires ctags 5.6
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Development (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo KDE team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-11-01 10:08 UTC by Paulo J. Matos
Modified: 2007-01-27 17:44 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Paulo J. Matos 2006-11-01 10:08:19 UTC
kdevelop 3.3.5 requires ctags 5.6. 
Trying to build a ctags database for a C++ project I get from kdevelop: ctags -R --c++-types=+px --excmd=pattern --exclude=Makefile --exclude=.
ctags: unrecognized option `--c++-types=+px`

seems that --c++-types is a 5.6 flag.

Problem is that there's no ebuild yet for 5.6! :-/
Comment 1 Michael Kers 2006-12-06 15:39:02 UTC
Yeah, this is totally retarded.

It is caused by kdevelop hard-coding the binary "ctags".  However, that points to(at least on my system) a ctags from the Emacs package...

root@willbtop ctags2 :) $ equery belongs ctags
[ Searching for file(s) ctags in *... ]
app-editors/xemacs-21.4.17 (/usr/bin/ctags)

Whereas, the file I want is "exuberant-ctags", that belongs to the "ctags" package:

root@willbtop ctags2 :) $ equery files ctags
[ Searching for packages matching ctags... ]
* Contents of dev-util/ctags-5.5.4-r2:
/usr
/usr/bin
/usr/bin/exuberant-ctags

Problem is... There is no "configuration" method I have found of telling kdevelop to use "exuberant-ctags" instead of "ctags".  This breaks code complete on my version also (kdevelop-3.3.2).

But a patch can be had... The file ctags2_part.cpp in the kdevelop project can be patched like so:

--- ctags2_part.cpp     2005-09-10 02:21:56.000000000 -0600
+++ ctags2_part.cpp.bak 2006-12-06 16:27:19.000000000 -0700
@@ -132,9 +132,9 @@
 */
        KConfig * config = kapp->config();
        config->setGroup( "CTAGS" );
-       QString ctagsBinary = config->readEntry( "ctags binary", "ctags" ).stripWhiteSpace();
+       //      QString ctagsBinary = config->readEntry( "ctags binary", "ctags" ).stripWhiteSpace();
        if ( ctagsBinary.isEmpty() ) 
-               ctagsBinary = "ctags";
+               ctagsBinary = "exuberant-ctags";
 
        QString argsDefault = "-R --c++-types=+px --excmd=pattern --exclude=Makefile --exclude=.";

And added to the kdevelop-ebuild-dohicky.
Comment 2 Michael Kers 2006-12-06 15:42:14 UTC
Actually, that is a lousy way of doing it (too much burn out)... How about this instead: 

--- ctags2_part.cpp     2005-09-10 02:21:56.000000000 -0600
+++ ctags2_part.cpp.bak 2006-12-06 16:41:47.000000000 -0700
@@ -132,9 +132,10 @@
 */
        KConfig * config = kapp->config();
        config->setGroup( "CTAGS" );
-       QString ctagsBinary = config->readEntry( "ctags binary", "ctags" ).stripWhiteSpace();
+       //      QString ctagsBinary = config->readEntry( "ctags binary", "ctags" ).stripWhiteSpace();
+       QString ctagsBinary;
        if ( ctagsBinary.isEmpty() ) 
-               ctagsBinary = "ctags";
+               ctagsBinary = "exuberant-ctags";
 
        QString argsDefault = "-R --c++-types=+px --excmd=pattern --exclude=Makefile --exclude=.";
Comment 3 Diego Elio Pettenò (RETIRED) gentoo-dev 2007-01-27 16:12:28 UTC
Will fix in 3.4.0.
Comment 4 Diego Elio Pettenò (RETIRED) gentoo-dev 2007-01-27 17:44:01 UTC
Fixed in 3.4.0, the default for new installs will be exuberant-ctags.