Hi!
I'm trying to generate a CodeBlocks workspace+projects from Autotools scripts.
It works fine for the "basic" cases, but if one have a more complex project, some Autotools "features" are quite difficult to translate:
1/ Autotools convenience libraries:
To simulate the convenience libraries (ie: non distributed static libraries used during the compilation process, for example to compile differents modules), I'm using the project's dependencies system of C::B.
For example, I've the following project:
myproject depends on libmyproject
libmyproject depends on core, graphic, audio
Each module is a project in C::B with dependencies.
Each subproject creates a static library.
The main project is linked against the static libraries which are produced by the sub-projects.
The problem is the following: when I modify a source file from a subproject, the static libraries are rebuilt but the main program is not relinked (ie: the binary is not updated).
I have to rebuilt the entire project to regenerate the binary which is very slow.
Is there a workaround to fix this problem?
2/ LIBADD
Autotools offers the possibility to merge several libraries with LIBADD.
With the previous example, it allows me to generate a libmyproject.a which contains the sublibraries.
This is a major issue because it solves a lot of problems due to mutual dependencies of the static libraries.
Is there a way to do it with CodeBlocks?
3/ Will be any effort to use Autotools instead of a simple Makefile in C::B?
It would be /IMHO/ a better solution to reuse the Autotools (libtool...) instead of developing yet-another-build-system. In my mind, a compilation chain and an IDE are two independant subjects.
Thank you!