build_requires will be resolved too late to be of any help. build_requires are resolved by *after* Makefile.PL has already been executed by cpan/cpanp/cpanm etc.
CONFIGURE_REQUIRES on the other hand are a list of prereqs that must be resolved *before* Makefile.PL is executed.
- CONFIGURE_REQUIRES - modules required by Makefile.PL/Build.PL
- BUILD_REQUIRES - modules required only during the build process
- PREREQ_PM - modules required to run your module
WriteMakefile(
CONFIGURE_REQUIRES => {
'B' => 0,
},
PREREQ_PM => {
'B' => 0,
},
)
We require the 'B' module during configuration and at runtime in the above example.