Open rehsack opened 10 years ago
On 17/09/14, 18:56, Jens Rehsack wrote:
Today while hacking on _check_produce_loadable_xsbuild @ribasushi https://github.com/ribasushi and myself detected once again the limitations of use of ExtUtils::CBuilder (@dagolden https://github.com/dagolden talked with lot's of people 4-5 years ago to improve the situation and noone find his/her superman costume). Because of Perl-Toolchain-Gang/ExtUtils-MakeMaker#45 https://github.com/Perl-Toolchain-Gang/ExtUtils-MakeMaker/pull/45 it's probably an idea to meet with @Tux https://github.com/Tux and @Leont https://github.com/Leont once or twice in coming autumn to improve quickly and in a way usable in EU::CB and ExtUtils::MakeMaker.
It might be relevant to include parts of ExtUtils::LibBuilder in EU::CB.
The basic plan is to break the entire vertical toolchain design into horizontal one - read a layer below EU::MM and M::B (whatsover) to detect the proper tools and build the Makefile/Build by delivering necessary variables set as in http://www.gnu.org/software/autoconf/manual/autoconf.html#Output-Variable-Index (we can discuss naming - not idea of the variables). The way how they're guessed, checked, proved etc. is not so important in first shot as their API relevance.
one of the problems is that the chain can change completely based on what parts are chosen in the chain.
e.g. there are situations on older GNU gcc on HP-UX that require the native loader (ld) instead of the GNU ld version to work at all. This implies that detection a tool-part is present and runs might not be enough a trigger to accept it in the required set of tools.
Another problem/snake-pit is the mix of C++ and C, where the found C compiler is the native OS one, and the C++ happens to be the GNU compiler. They will require a different set of libraries (and probably library path's) and maybe even different linker and or linker options.
All above things are more or less easy to manage with some kind of profiles (on X do Y), as lt does. We just have to improve our tooling :)
Because of Perl-Toolchain-Gang/ExtUtils-MakeMaker#45 it's probably an idea to meet with @Tux and @Leont once or twice in coming autumn to improve quickly and in a way usable in EU::CB and ExtUtils::MakeMaker.
Yeah, that would be a good idea. I've been working on ExtUtils::Builder, but it probably needs a major refactor (starting with weaning it off Moo) to be more useful.
Today while hacking on check_produce_loadable_xs_build @ribasushi and myself detected once again the limitations of use of ExtUtils::CBuilder (@dagolden talked with lot's of people 4-5 years ago to improve the situation and noone find his/her superman costume). Because of https://github.com/Perl-Toolchain-Gang/ExtUtils-MakeMaker/pull/45 it's probably an idea to meet with @Tux and @Leont once or twice in coming autumn to improve quickly and in a way usable in EU::CB and ExtUtils::MakeMaker.