use Module::Build; my $build = Module::Build->new( module_name => 'YourName', # ... script_files => [ qw( your scripts here ) ], #... ); $build->create_build_script; #### my $subclass = Module::Build->subclass( class => 'My::Builder', code => &_custom_code(), ); my $build = $subclass->new( module_name => 'YourName', script_files => [ qw( same as above ) ], #... ); $build->create_build_script; sub _custom_code { return <<'EO_CODE'; sub ACTION_install { # do whatever you want at the end of install } EO_CODE }