Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [cdt-dev] Extending CDT for Linux desktop development

Super! Thanks, Seth.

Actually, the other day I tried to make a little gtkmm app and was wishing 
for a pkg-config integration (as opposed to entering the 12 include paths 
and 15 libraries or so by hand in the standard make dialogs!).

I think all of the items you mentioned would be something a lot of people 
would want to use and I don't think it would be an insurmountable task. 
Please feel free to take a look and let us know if you see any extension 
points or other code changes that would make your work easier.

My quick thoughts on each of the items:
1) We will have APIs that let you muck with the build settings on a 
managed build project. You could make some sort of import wizard that 
would prompt the user for a package (e.g. gtkmm-2.0) and populate the 
configurations on the selected project, or something like that.
2) There is an extension point in the core that lets you plug in such 
things. Some teams have done such a thing with other documentation systems 
(but not in the CDT core). They could give you pointers.
3) This is an area we don't have yet but realize needs to be there. There 
are a lot of project types that we could add in for various uses of the 
CDT that could generate different build settings and code templates and 
such. Maybe we can help you make this more general.
4) autoconf/automake support is one of the holy grails for the CDT but, 
unfortunately, no one has taken it on.

Cheers,
Doug Schaefer, Senior Software Developer
IBM Rational Software, Ottawa, Ontario, Canada



Seth Nickell <seth@xxxxxxxxx> 
Sent by: cdt-dev-admin@xxxxxxxxxxx
11/11/2003 05:10 PM
Please respond to
cdt-dev


To
cdt-dev@xxxxxxxxxxx
cc

Subject
[cdt-dev] Extending CDT for Linux desktop development






I recently downloaded CDT 1.2 and am really impressed by progress CDT
has made. I'm interested in extending CDT to add support for various
systems/conventions used in developing Linux desktop applications (in
particular my goal is to make a good GNOME IDE, but many changes should
be beneficial to a broader audience). In particular, I'm interested in
working on the following extensions:

1) Support specifying compile and link flags using pkg-config
(http://freedesktop.org/Software/pkgconfig). pkg-config is a
Freedesktop.org system for libraries to specify the CFLAGS (-I etc) and
link flags (-L, -l, etc) necessary to use them. It makes it *much*
easier to develop applications that rely on a fairly deep dependency
stack. For example rather than needing to specify "-L/usr/X11R6/lib
-L/usr/lib -lX11 -lXext -lglib -lgtk -lgdk...and on and on" by hand with
pkg-config you can specify a dependency on "gtk+" and all the necessary
link/cflags will be pulled in.

A cursory look suggests that adding this feature would require adding
"dependency system" extension points to the managed make plugin, and
then writing a pkg-config dependency plugin that uses that extension
point. Maybe people already have a concept of how this should work?

2) Support gtk-doc for inline help on functions and types. Very similar
to javadoc support in JDT.

3) Add plugins for basic skeleton code project types for doing a desktop
library, GNOME application, etc.

4) Something that would be good long term but I doubt I'll have time to
work on in the short term is to add full GNU autoconf/automake support.
This would benefit a lot of *nix projects that might consider using CDT
but want to retain a standard build system.

Thoughts, comments, and warnings of dire failure appreciated ;-)

-Seth

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




Back to the top