14 @ISA = qw(Module::Build);
17 sub process_script_files {
19 my $files = $self->find_script_files();
20 return unless keys %$files;
22 my $script_dir = File::Spec->catdir($self->blib, 'script');
23 my $demo_dir = File::Spec->catdir($self->blib, 'demo');
24 File::Path::mkpath( $script_dir );
25 File::Path::mkpath( $demo_dir );
27 foreach my $file (keys %$files) {
28 my $dest_dir = $file =~ /_demo$/ ? $demo_dir : $script_dir ;
29 my $result = $self->copy_if_modified($file, $dest_dir, 'flatten') or next;
30 $self->fix_shebang_line($result) if $self->is_unixish();
31 $self->make_executable($result);
32 my $demo_run_dir = File::Spec->catdir($self->base_dir(), 'demo');
33 if ( $result =~ /(?:run_stem$)|(?:_demo$)/ ) {
34 my $result2 = $self->copy_if_modified($result, $demo_run_dir, 'flatten') or next;
35 $self->add_to_cleanup($result2);
41 sub process_conf_files {
43 my $files = $self->_find_file_by_type('stem','conf');
44 return unless keys %$files;
46 my $conf_dir = File::Spec->catdir($self->blib, 'conf');
47 File::Path::mkpath( $conf_dir );
49 foreach my $file (keys %$files) {
50 my $result = $self->copy_if_modified($file, $conf_dir, 'flatten') or next;
51 $self->fix_shebang_line($result) if $self->is_unixish();
57 my ( $self, $prog ) = @_ ;
58 if ( $self->do_system( "which $prog >/dev/null" ) ) {
59 return `which $prog` ;