diff --git a/detectors/cds/bin/do_exonerate.csh b/detectors/cds/bin/do_exonerate.csh index 9962ebb..dfa46fa 100755 --- a/detectors/cds/bin/do_exonerate.csh +++ b/detectors/cds/bin/do_exonerate.csh @@ -107,25 +107,6 @@ endif set base = $OutDir/$GenoName.$ProtName -# -# Alias the genome filename to a short name -# to circumvent a bug in exonerate - -echo $GenoFile | grep '^/' > /dev/null -if ( $status == 1 ) then - set AbsGenoFile = `pwd`/$GenoFile - set DirGenoFile = `dirname $AbsGenoFile` - set DirGenoFile = `(cd $DirGenoFile;pwd)` - set AbsGenoFile = $DirGenoFile/`basename $AbsGenoFile` -else - set AbsGenoFile = $GenoFile -endif - -set ShortDir = `mktemp -d` -set ShortLink = $ShortDir/genome.fasta -ln -s $AbsGenoFile $ShortLink -Notify " Building input shortcut $AbsGenoFile --> $ShortLink" - # # skip exonerate calculations if already done # @@ -141,7 +122,7 @@ endif if ($PASS1_SPEEDUP != 0) then - tcsh -f $PROG_DIR/do_filterbx.csh $ShortLink $ProtFile \ + tcsh -f $PROG_DIR/do_filterbx.csh $GenoFile $ProtFile \ $PASS1_BLASTX_FILTER_IDMIN \ $PASS1_BLASTX_FILTER_NBMIN \ $PASS1_BLASTX_FILTER_NBMAX > D_$$ @@ -187,7 +168,7 @@ exonerate \ --refineboundary 5000 \ --singlepass FALSE \ --dpmemory 1024 \ - $DbFile $ShortLink > $base.exo.raw + $DbFile $GenoFile > $base.exo.raw CheckAbort 20 "exonerate failure" # @@ -211,7 +192,7 @@ egrep "^$ProtName " $ProtDir/Annot.lst | $AwkCmd '{print "c annot", $0}' > T_$$ # $AwkCmd -f $LIB_DIR/libutil.awk -f $LIB_DIR/extend.awk \ - -v FASTA=$ShortLink \ + -v FASTA=$GenoFile \ -v START_MODEL=$STARTMODEL \ -v STOP_MODEL=$STOPMODEL \ -v START_WALK=$PASS1_START_WALK \ @@ -223,14 +204,14 @@ $AwkCmd -f $LIB_DIR/libutil.awk -f $LIB_DIR/extend.awk \ echo "c pass pass1 $ProtType" > $base.iff -$AwkCmd -v FASTA=$ShortLink -f $LIB_DIR/libutil.awk \ +$AwkCmd -v FASTA=$GenoFile -f $LIB_DIR/libutil.awk \ -f $LIB_DIR/translate.awk T_$$ >> $base.iff # # extract CDS # -$AwkCmd -v FASTA=$ShortLink -f $LIB_DIR/libutil.awk \ +$AwkCmd -v FASTA=$GenoFile -f $LIB_DIR/libutil.awk \ -f $LIB_DIR/cds.awk T_$$ >> $OutDir/$GenoName.cds.fasta @@ -245,8 +226,6 @@ $AwkCmd -f $LIB_DIR/toEmbl.awk $base.iff |\ # end # -rm -rf $ShortDir - Notify " output file: $base.res" (\rm -f ?_$$) >> /dev/null diff --git a/detectors/cds/bin/go_cds.csh b/detectors/cds/bin/go_cds.csh index e5f7fd2..ecfe64b 100755 --- a/detectors/cds/bin/go_cds.csh +++ b/detectors/cds/bin/go_cds.csh @@ -43,12 +43,32 @@ NeedDir $DbRoot/models # run everything into temporary place # -set temp = $Genome.tmp +set temp = `hostname`.$$.Genome.tmp if (! -d $temp) then Notify "making directory $temp" mkdir $temp endif +# +# find the absolute path of the fasta genome file +# +echo $Fasta | grep '^/' > /dev/null +if ( $status == 1 ) then + set AbsGenoFile = `pwd`/$Fasta + set DirGenoFile = `dirname $AbsGenoFile` + set DirGenoFile = `(cd $DirGenoFile;pwd)` + set AbsGenoFile = $DirGenoFile/`basename $AbsGenoFile` +else + set AbsGenoFile = $Fasta +endif + +pushd $temp +ln -s $AbsGenoFile genome.fasta +popd + +set Fasta = $temp/genome.fasta + + # # pass1: run exonerate # @@ -63,7 +83,7 @@ foreach dir ("core" "shell" "dust") endif end -cp $temp/ $Genome.cds.fasta $Genome.cds.fasta +cp $temp/$Genome.cds.fasta $Genome.cds.fasta # # pass2: transsplicing