Project type per build target

CodeLite installation/troubleshooting forum
iarwain
CodeLite Curious
Posts: 4
Joined: Mon Jun 09, 2008 9:17 pm
Location: Montreal
Contact:

Project type per build target

Post by iarwain »

Hi,

First of all, congratulations for the good work. I've recently discovered CodeLite in my quest for the perfect IDE, and it looks like a good candidate for my needs.

Yet I haven't be able to use it so far because of a single issue which is really annoying to me. In the project settings dialog, for every configuration type there are a lot of options including the project type (exe, static or dynamic library).
However this setting looks like a global one and not a specific one for a given configuration type (from what I've seen in the dialog behavior and in the project xml tree), so, for example, I can't specify for one project 2 configurations outputing a dynamic library and 2 others outputing a static one (ie. StaticDebug & StaticRelease => static library / DynamicDebug & DynamicRelease => dynamic library).
This is pretty useful when you're maintaining libraries that come in both flavours.

Am i doing something wrong or is this a design choice? If so, is there a fast work around (without duplicating the project, which isn't a good solution, for project dependencies sake and source file maintenance)?

Thanks in advance, and sorry for my average english.

iarwain
User avatar
eranif
CodeLite Plugin
Posts: 6375
Joined: Wed Feb 06, 2008 9:29 pm
Genuine User: Yes
IDE Question: C++
Contact:

Re: Project type per build target

Post by eranif »

This is currently a limitation that the project type is bound to the project settings and not one per configuration type.
The only workaround I can think of, is creating 2 workspaces - one containing all the Dll configurations and second, contains all the static ones.

If you will submit this as a feature a request I will give it a first priority.
http://sourceforge.net/tracker/?group_i ... tid=979963

Eran
Make sure you have read the HOW TO POST thread
User avatar
eranif
CodeLite Plugin
Posts: 6375
Joined: Wed Feb 06, 2008 9:29 pm
Genuine User: Yes
IDE Question: C++
Contact:

Re: Project type per build target

Post by eranif »

Ok, I took a look at the sources, and I compiled a new version of CodeLite which separates the 'Project Type' from the settings, and moves it to the 'Project Configuration' level (of course with backward compatibility in mind).

So, it is now possible to separate the 'Type' and associate it per 'configuration' (i.e. same project can produce static library, dll and executable). Let me know if you want to wait a few days for the next build, or I can upload you a new installer (Btw, you did not mention which OS you are using).

Eran
Make sure you have read the HOW TO POST thread
iarwain
CodeLite Curious
Posts: 4
Joined: Mon Jun 09, 2008 9:17 pm
Location: Montreal
Contact:

Re: Project type per build target

Post by iarwain »

Hi Eran,

Thank you for your fast answer and action. I can wait a few days with no problem as I'm currently on vacation (I just had some spare time today so I played a bit with the project configurations and wrote you about it, but I won't probably be able to code for the next 10 days or so).

I'll be using CodeLite on Windows XP SP2 and Linux (Ubuntu 8.04 / Fedora Core 7). I'll also recommand people working with me that run Gentoo to give it a try. No need to put an installer for me right away then, and I will still be able to build CodeLite from its SVN if I really can't wait. =)

Thanks again for the blazingly fast answer/action, this actually puts CodeLite in my favourite IDE top list provided it suits my needs (which it should from what I've seen so far).

I still have another question, a bit out of topic: is there a workspace build (or even a batch build) command I haven't found yet?

Thanks again!

iarwain

PS: If you need some "official" testers, I'd be happy to help as CodeLite sounds very promising to me.
User avatar
eranif
CodeLite Plugin
Posts: 6375
Joined: Wed Feb 06, 2008 9:29 pm
Genuine User: Yes
IDE Question: C++
Contact:

Re: Project type per build target

Post by eranif »

iarwain wrote:I still have another question, a bit out of topic: is there a workspace build (or even a batch build) command I haven't found yet?
No. The reason is simlpe: in which order should CodeLite build it? a workspace is just a collection of projects. If you want to build all projects, just "link them" together. For example:
In one of your projects, just right click on it -> and select "Build Order...", check all projects, you can also move up/down their order, and whenever you want to build all workspace, just build that project.
iarwain wrote:PS: If you need some "official" testers, I'd be happy to help as CodeLite sounds very promising to me.
Sure, I could use all the help I can get. I myself, am using as "Windows Tester" since I am developing CodeLite with CodeLite, so I quickly notice if something is missing/broken. However, there are things that the developer misses (which probably seems obvious to me) and I could use an outsider to tell me about them.

So, in short -> yes I need an "official tester".

PS: I visited your site http://www.arcallians.org (unfortunately I don't speak french) and it looks very nice! did you create the web site? I could use a new web site, I need some guidance in doing that.

Eran
Make sure you have read the HOW TO POST thread
iarwain
CodeLite Curious
Posts: 4
Joined: Mon Jun 09, 2008 9:17 pm
Location: Montreal
Contact:

Re: Project type per build target

Post by iarwain »

eranif wrote:No. The reason is simlpe: in which order should CodeLite build it? a workspace is just a collection of projects. If you want to build all projects, just "link them" together. For example:
In one of your projects, just right click on it -> and select "Build Order...", check all projects, you can also move up/down their order, and whenever you want to build all workspace, just build that project.
I totally understand your point, though, as I think it's implemented in some other IDEs, it gets all the build roots (ie. all the projects that no other depends on), and build their dependencies (only once for cross dependencies) then finish by building the roots themselve.

Actually in a worskpace where you maintain a lot of different libraries, which are not always interconnected, it's nice to be able to build the current library you're working on and its dependencies during the debug phasis and when you want to publish a new package, rebuild everything by a single click.

It's the same when you have many different build configuration: when you want to build all the versions (often during the process of publishing a new package), a batch build is useful instead of having to build all configurations manually.

It's clearly not a no-go feature, but it's still a user friendly one that could make the difference.

I'll reply in pm for the website and testing stuff. =)
User avatar
eranif
CodeLite Plugin
Posts: 6375
Joined: Wed Feb 06, 2008 9:29 pm
Genuine User: Yes
IDE Question: C++
Contact:

Re: Project type per build target

Post by eranif »

iarwain wrote:It's clearly not a no-go feature, but it's still a user friendly one that could make the difference.
I agree.

It is not that it is hard to implement using the current design, but simply i did not find it useful (but hey, this is just me). Again, if this is something that you think that CodeLite should have, please post a feature request for this one.

Eran
Make sure you have read the HOW TO POST thread
iarwain
CodeLite Curious
Posts: 4
Joined: Mon Jun 09, 2008 9:17 pm
Location: Montreal
Contact:

Re: Project type per build target

Post by iarwain »

eranif wrote:Again, if this is something that you think that CodeLite should have, please post a feature request for this one.
Done!
Post Reply