Announcing Alien::GSL 0.03_04 plus some Module::Build questions
This note is to announce that
Alien::GSL dev release 0.03_04 has be uploaded to CPAN and should be available shortly.
After lots of good feedback from Rob (Sisyphus) and learning lots about the warts in Module::Build, I think I have a more robust system in place now.
New features include:
- smarter warnings for missing configure_requires dependencies
- parse gsl.pc to get up-to-date compiler flag, no longer depends on hard coding things like
- rewrite gsl.pc before installing to provide correct paths relative to
gsl_pkgconfig_locationfunction provides the path to the folder containing the rewritten gsl.pc file
gsl-config.plwhich should behave like
gsl-configbut relies on
Alien::GSLand its notion of the GSL libraries (this still considered work-in-progess)
- more tests!! (required adding the ability to hook into
$Alien::GSL::share_dir, since tests happen before install, and thus before placement into the location that
Some notes on Module::Build:
- why does
ACTION_code? This is a problem when
ACTION_codedoes something time consuming. I am avoiding by checking state and skipping ahead to the
SUPER::ACTION_code, but this seems like it shouldn’t be necessary.
- There should be some way to handle configure requires dependencies better. I know it must be tricky, but perhaps a class method which can vaildate the hash which will be passed to the constructor would help.
ACTION_installbe rerun after itself for example:
- munge gsl.pc (pkg-config information) using the actual install
File::ShareDirpath rather than assuming the install location will be as expected
ACTION_installto re-install new copy of gsl.pc
Anyway I hope to hear some feedback. Assuming this version works correctly, I intend to work on some of the things in the TODO section and eventually release a stable version, then simultaneously convert
Math::GSLx::ODEIV2 to use it.
Cheers, Joel Berger
(originally sent to PDL mailing list)