Code::Blocks Forums
User forums => General (but related to Code::Blocks) => Topic started by: grunerite on January 17, 2006, 02:54:53 am
-
SVN rev 1751 and newer
WinXP
I have a workspace with several projects, where each project builds a different library. I have to date set up the projects to build with 1 compiler, gcc, with Code::Blocks handling all make orchestration. Project setup looks something like this:
Project1_Lib1
-Target1_gcc_344_Release
-Target2_gcc_344_Debug
-Target3_gcc_342_Release
-Target4_gcc_342_Debug
Project2_Lib2
-Target1_gcc_344_Release
-Target2_gcc_344_Debug
-Target3_gcc_342_Release
-Target4_gcc_342_Debug
... and so on
This is fantastic, I can even use different compilers with the same project. However, now, I want to add new targets to the same projects, but this time I want to add targets that use a 'Custom Makefile'. So, I want some targets to use Custom Makefiles, and some targets to use a C::B orchestrated build, all in the same project.
Can this be done?
The problem I see with achieving this is that the 'Custom Makefile' is specified at the Project level, not the target level. However, I also note that under Project Build Options, there is a "Make Commands" tab page [presumable changeable at the target level] with some info that can be filled in, but I don't quite understand how to use it. Perhaps changes there would make this possible?
If there is a way to achieve what I want, I would greatly appreciate any hints.
Thanks
-
The custom makefile option is really project wide. I think it would complicate things unnecessarily if it were at target level (even for the user)...
-
The custom makefile option is really project wide. I think it would complicate things unnecessarily if it were at target level (even for the user)...
The only complication for the user that I see is really semantic in nature only. Yes, traditionally 'targets' are specified in a makefile, and 'targets' aren't a superset of makefiles. But, the beauty of Code::Blocks is it has broken traditional approaches, allowing use of multiple compilers to be associated with a project. So, why limit multi-compiler approach by only allowing 'Custom Makefile' only OR C::B orchestrated builds only?
Perhaps it is overly difficult to do, but it would be more powerful if you could use a "Target Custom Makefile" for some targets, and C::B controlled builds for other targets. And, this would allow retention of "Custome Makefile" for the whole project if that is what the user desires.
Cheers