On Sep 26, 2008, at 09:28, Eric Wilhelm wrote:

/usr/local/perl/5.10.0/lib/5.10.0/Module/Build/Base.pm line 3679.
Can someone report the proper line number? In svn, 3679 is this:

That is probably 0.2808_01, which shipped in perl 5.10.0.  From there,
one can find the code in question and correlate that to trunk.

It's the call to install_sets() here:

sub prefix_relative {
  my ($self, $type) = @_;
  my $installdirs = $self->installdirs;

  my $relpath = $self->install_sets($installdirs)->{$type};

  return $self->_prefixify($relpath,
                           $self->original_prefix($installdirs),
                           $type,
                          );
}

I think that what would be needed is a way to validate properties. install_sets is created like so:

__PACKAGE__->add_property($_ => {}) for qw(
  get_options
  install_base_relpaths
  install_path
  install_sets
  meta_add
  meta_merge
  original_prefix
  prefix_relpaths
  configure_requires
);

Currently, you can specify a default value for a property, but nothing else.

Now, a while back, I subclassed Module::Build and added a lot more functionality to add_property(), including validation, by allowing a list of key/value pairs to be passed to add_property(). Would folks be interested in seeing that added to M::B?

Best,

David

Reply via email to