[cdt-dev] Managed Make and how you use it
I'm trying to use the Managed Make (1.2.0) for our cross-compiler toolchain (toolchain includes source code cross-compilation and resource definition compilations), but I'm running into problems right out of the gate. Examples of such are:
- Spaces in the paths for dependencies don't work
- ManagedBuildInfo schema doesn't contain listOptionValue for optionReferences
- No variable support for paths like in JDT
- Tools with other input/output extensions (in my case xrd and trc respectively) cannot be integrated because the makefiles think in terms of C and CPP source files. (The makefile generates the variable's OBJS content by replacing CPP_SRCs contents .cpp with .o, but in my case CPP_SRCS is set to a.xrd, so the result in the clean statement is my source file a.xrd is deleted.)
Some of these are addressed in CDT 2 and some in patches. But my general concern that I'm trying to grasp is the state of the Managed Make facility in terms of flexibility. Are most people finding that it fulfills their needs (it seems to be very .c/.cpp to executable centric)? Or do are a lot of people rolling their own managed make (seemed that way at EclipseCon)? Any common technique you're using for extending/reusing Managed Make (e.g. inheriting from most classes, or just rewrite your own classes)?
Any gut feelings you guys have would be helpful. Actually the most useful thing would be a best guess list of weak areas in the Managed Make facility in CDT 1.2. So if anyone sees areas where Managed Make is lacking or areas that you needed to touch, I'd appreciate knowing.
I don't want to roll my own and I'd like to leverage/modify CDT 1.2.x as much as possible, but I'm getting the impression that modifying may take a lot of effort.