freebsd-ports/biology/mapm3/files/patch-mapm-maps.c
Rong-En Fan 7e14529975 MAPMAKER/EXP is a linkage analysis package designed to help construct primary
linkage maps of markers segregating in experimental crosses. MAPMAKER/EXP
performs full multipoint linkage analysis (simultaneous estimation of all
recombination fractions from the primary data) for dominant, recessive, and co-
dominant (e.g.  RFLP-like) markers.  MAPMAKER/EXP is an experimental-cross-only
successor to the original MAPMAKER program.

MAPMAKER/QTL is a companion program to MAPMAKER/EXP which allows one to map
genes controlling polygenic quantitative traits in F2 intercrosses and BC1
backcrosses relative to a genetic linkage map. More information on MAPMAKER/QTL
can be found in the technical report (included with MAPMAKER/QTL).

WWW: http://www.broad.mit.edu/ftp/distribution/software/mapmaker3/

PR:		ports/122452
Submitted by:	Tassilo Philipp <tphilipp at potion-studios.com>
2008-04-06 04:49:05 +00:00

72 lines
2.1 KiB
C

--- mapm/maps.c.orig 2008-04-04 20:05:29.000000000 +0000
+++ mapm/maps.c 2008-03-23 15:39:56.000000000 +0000
@@ -592,7 +592,7 @@
clean_map(map);
- fgetln(fp);
+ fgetln_(fp);
if (!nstoken(&ln,sREQUIRED,name,NAME_LEN+1) || name[0]!='*' ||
sscanf(ln,"%d %d %d %d %lf",&num_loci,&unlink,&sex,&errors,&like)!=5)
baddata("expected *chrom-name # # # #");
@@ -603,31 +603,31 @@
strcpy(map->map_name,name+1); map->allow_errors= errors;
map->num_loci=num_loci; map->log_like=like;
- fgetln(fp);
+ fgetln_(fp);
for (i=0; i<num_loci; i++) {
- if (nullstr(ln)) fgetln(fp);
+ if (nullstr(ln)) fgetln_(fp);
if (!itoken(&ln,iREQUIRED,&num)) send(CRASH);
map->locus[i]=num;
}
- fgetln(fp);
+ fgetln_(fp);
for (i=0; i<num_loci-1; i++) {
- if (nullstr(ln)) fgetln(fp);
+ if (nullstr(ln)) fgetln_(fp);
if (!rtoken(&ln,rREQUIRED,&rnum)) send(CRASH);
map->rec_frac[i][MALE]=rnum;
}
if (raw.data_type==CEPH && sex) {
- fgetln(fp);
+ fgetln_(fp);
for(i=0; i<num_loci-1; i++) {
- if (nullstr(ln)) fgetln(fp);
+ if (nullstr(ln)) fgetln_(fp);
if (!rtoken(&ln,rREQUIRED,&rnum)) send(CRASH);
map->rec_frac[i][FEMALE]=rnum;
}
} else for (i=0; i<num_loci-1; i++) map->rec_frac[i][FEMALE]=0.0;
- fgetln(fp);
+ fgetln_(fp);
for(i=0; i<num_loci-1; i++) {
- if (nullstr(ln)) fgetln(fp);
+ if (nullstr(ln)) fgetln_(fp);
if (!itoken(&ln,iREQUIRED,&num)) send(CRASH);
map->fix_interval[i]=num;
}
@@ -637,7 +637,7 @@
matrix(map->error_lod,map->max_loci,raw.data.f2.num_indivs,real);
}
for (i=0; i<map->num_loci; i++) {
- fgetln(fp);
+ fgetln_(fp);
if (!stoken(&ln,sREQUIRED,str) || !streq(str,"errors"))
send(CRASH);
if (!rtoken(&ln,rREQUIRED,&rnum)) send(CRASH);
@@ -646,9 +646,9 @@
for(j=0; j<raw.data.f2.num_indivs; j++)
map->error_lod[i][j]= 0.0;
} else {
- fgetln(fp);
+ fgetln_(fp);
for (j=0; j<raw.data.f2.num_indivs; j++) {
- if (nullstr(ln)) fgetln(fp);
+ if (nullstr(ln)) fgetln_(fp);
if (!rtoken(&ln,rREQUIRED,&rnum)) send(CRASH);
map->error_lod[i][j]=rnum;
}