Changeset 244

Show
Ignore:
Timestamp:
08/21/09 16:52:11 (3 months ago)
Author:
cholt
Message:

bug in repeat mask cause by prok upgrade

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • INSTALL

    r238 r244  
    154154 
    155155  a.  See installation documentation. 
     156 
     1574. GeneMarkS.  Used for prokaryotic genomes only. 
     158   Download from http://exon.biology.gatech.edu 
     159 
     160  a.  See installation documentation. 
  • MPI/mpi_evaluator

    r198 r244  
    7171use FileHandle; 
    7272use File::Path; 
    73 use Getopt::Long
     73use Getopt::Long qw(:config no_ignore_case)
    7474use File::Temp qw(tempfile tempdir); 
    7575use Bio::DB::Fasta; 
  • MPI/mpi_maker

    r236 r244  
    6969use FileHandle; 
    7070use File::Path; 
    71 use Getopt::Long
     71use Getopt::Long qw(:config no_ignore_case)
    7272use File::Temp qw(tempfile tempdir); 
    7373use Bio::DB::Fasta; 
  • README

    r227 r244  
    1111many steps and programs to produce final annotations.  For this 
    1212reason, you must first install a number of programs that MAKER depends 
    13 on. 
     13on.  MAKER works on both eukaryotic and prokaryotic genomes. 
    1414 
    1515 
     
    3636    *GeneMark-ES (exon.biology.gatech.edu) 
    3737    *FGENESH 2.6 or higher (www.softberry.com) - requires licence 
     38    *GeneMarkS for prokaryotic genomes (exon.biology.gatech.edu) 
    3839 
    3940To install mpi_maker, you must have an mpi package installed, try the 
     
    122123    1. Install standard MAKER and verify that it runs. 
    123124    2. Install MPICH2 with the --enable-sharedlibs flag set to the 
    124        appropriate value (See MPICH2 documentation) 
     125       appropriate value for your OS (See MPICH2 documentation) 
    125126    3. Use cd to change to the MPI subdirectory in the MAKER 
    126127       instalation folder (i.e. maker/MPI/) 
  • bin/maker

    r236 r244  
    5656use FileHandle; 
    5757use File::Path; 
    58 use Getopt::Long
     58use Getopt::Long qw(:config no_ignore_case)
    5959use File::Temp qw(tempfile tempdir); 
    6060use Bio::DB::Fasta; 
  • lib/GI.pm

    r242 r244  
    785785 
    786786   #genemark sometimes fails if called directly so I built a wrapper 
    787    my $exe = "$FindBin::Bin/../lib/Widget/genemark/gmhmm_wrap"; 
    788    my $gm  = $CTL_OPT->{organism_type} eq 'eukaryotic' ? $CTL_OPT->{gmhmme3} : $CTL_OPT->{gmhmmp}; #genemark 
     787   my $wrap = "$FindBin::Bin/../lib/Widget/genemark/gmhmm_wrap"; 
     788   my $exe  = $CTL_OPT->{organism_type} eq 'eukaryotic' ? $CTL_OPT->{gmhmme3} : $CTL_OPT->{gmhmmp}; #genemark 
    789789   my $pro = $CTL_OPT->{probuild}; #helper exe 
    790790   my $hmm = $CTL_OPT->{gmhmm}; 
     
    798798 
    799799 
    800    my $command  = $exe
     800   my $command  = $wrap
    801801   $command .= " -m $hmm"; 
    802    $command .= " -g $gm"; 
     802   $command .= " -g $exe"; 
    803803   $command .= " -p $pro"; 
    804804   $command .= " -o $out_file"; 
     805   $command .= " -t $TMP"; 
    805806   $command .= " $in_file"; 
    806807 
     
    883884   my $LOG         = shift; 
    884885 
     886   my $wrap = "$FindBin::Bin/../lib/Widget/fgenesh/fgenesh_wrap"; #fgenesh wrapper 
    885887   my $exe = $CTL_OPT->{fgenesh}; 
    886888   my $org = $CTL_OPT->{fgenesh_par_file}; 
     
    893895   $LOG->add_entry("STARTED", $out_file, "");  
    894896 
    895    my $command  = $exe; 
     897   my $command  = "$wrap $exe"; 
     898   $command .= " -tmp $TMP"; 
    896899   $command .= " $org"; 
    897900   $command .= " $in_file"; 
  • lib/PhatHit_utils.pm

    r243 r244  
    255255        my $hit = shift; 
    256256 
    257         my $ref = ref($hit->[0]); 
     257        my $ref = ref($hit); 
    258258 
    259259        my @new_hits; 
  • lib/Widget/fgenesh.pm

    r222 r244  
    77use lib '/data1/hao/projects/MAKER-fgenesh/lib'; 
    88 
    9 use vars qw/@ISA/
     9use vars qw(@ISA $TMP)
    1010use PostData; 
    1111use FileHandle; 
     
    280280        my $command    = shift; 
    281281 
     282         
     283        my $wrap = "$FindBin::Bin/../lib/Widget/fgenesh/fgenesh_wrap"; #fgenesh wrapper 
     284 
    282285        my $file_name = "$the_void/$seq_id\.auto_annotator\.$offset\.fgenesh.fasta"; 
    283286        my $o_file    = "$the_void/$seq_id\.$offset\.auto_annotator\.fgenesh"; 
     
    288291                             
    289292        FastaFile::writeFile(\$fasta, $file_name); 
    290          
     293        $command = $wrap . " $command"; #prepend wrapper 
    291294        $command .= " $file_name"; 
    292                              
     295       $command .= " -tmp $TMP";                         
    293296        $command .= ' -exon_table:'.$xdef_file if -e $xdef_file; 
    294297                            
  • lib/Widget/genemark/gmhmm_wrap

    r242 r244  
    55use lib "$FindBin::Bin/../../"; 
    66use File::Spec; 
    7 use File::Temp qw(tempdir); 
     7use File::Temp qw(tempdir tempfile); 
    88use Iterator::Fasta; 
    99use Fasta; 
     
    2626     -g  <executable>  gmhmme3/gmhmmp executable (part of GeneMark). 
    2727     -p  <executable>  probuild executable (part of GeneMark). 
     28     -t  <directory>   Temporary directory to use. /tmp is default. 
    2829 
    2930     -help|?           prints this usage statement. 
     
    3738my $probuild; 
    3839my $outfile; 
     40my $tmp; 
    3941 
    4042#find gmhmme3 
     
    6062           "p=s" => \$probuild, 
    6163           "o=s" => \$outfile, 
     64           "t=s" => \$tmp, 
    6265           "help|?" => sub {print $usage; exit(0)} 
    6366           ); 
     67 
     68die "ERROR: The temporary directroy \'$tmp\' does not exist\n" if($tmp && ! -d $tmp); 
    6469 
    6570#get arguments off the command line 
     
    6974$mod      = Cwd::abs_path($mod) if($mod && Cwd::abs_path($mod)); 
    7075$infile   = Cwd::abs_path($infile) if($infile && Cwd::abs_path($infile)); 
    71 $gmhmm  = Cwd::abs_path($gmhmm) if($gmhmm && Cwd::abs_path($gmhmm)); 
     76$gmhmm    = Cwd::abs_path($gmhmm) if($gmhmm && Cwd::abs_path($gmhmm)); 
    7277$probuild = Cwd::abs_path($probuild) if($probuild && Cwd::abs_path($probuild)); 
    7378$outfile  = Cwd::abs_path($outfile) if($outfile && Cwd::abs_path($outfile)); 
     
    124129 
    125130#make temp dir to work in 
    126 my $tempdir = tempdir(CLEANUP => 1); 
     131my $tempdir = ($tmp) ? tempdir(CLEANUP => 1, DIR=>$tmp) : tempdir(CLEANUP => 1); 
     132my (undef, $tname) = tempfile(DIR => $tempdir); 
     133 
     134#make symbolic links (for some reason long file names mess up on some systems) 
     135my $s_mod = "$tname\_mod"; 
     136my $s_in = "$tname\_in"; 
     137symlink($mod, $s_mod); 
     138symlink($infile, $s_in); 
    127139 
    128140#split fastas on runs of NNN because Genemark can't handle it 
    129141my $command  = "cd $tempdir \n"; 
    130    $command .= " $probuild --split gm_dna.fa --seq $infile --MIN_SPLIT_SIZE 100". 
     142   $command .= " $probuild --split gm_dna.fa --seq $s_in --MIN_SPLIT_SIZE 100". 
    131143               " --letters_per_line 100 --max_nnn_substring 49 --nnn_margin 3"; 
    132144 
     
    141153foreach my $file (@files){ 
    142154    my $out = "$tempdir/".File::Spec->splitpath( $file ) . ".lst"; 
    143     $command = "$gmhmm -m $mod -o $out"; 
     155    $command = "$gmhmm -m $s_mod -o $out"; 
    144156    $command .= " -b /dev/null" if($euk); 
    145157    $command .= " $file";