mirror of
https://git.FreeBSD.org/ports.git
synced 2025-01-10 07:04:03 +00:00
7e14529975
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>
79 lines
4.0 KiB
C
79 lines
4.0 KiB
C
--- lib/iolib.h.orig 2008-04-04 20:05:29.000000000 +0000
|
|
+++ lib/iolib.h 2008-04-03 20:00:49.000000000 +0000
|
|
@@ -53,9 +53,9 @@
|
|
conditions. Assume its really only one (or maybe 2-3) lines. ps_ is similar,
|
|
but for internal use only by the functions in this library.
|
|
|
|
-Ln is a global input string side-effected by getln() and fgetln().
|
|
+Ln is a global input string side-effected by getln() and fgetln_().
|
|
The pointer ln itself may be side-effected, (eg: by the token parsing
|
|
-routines) as it is reset during each call to getln() or fgetln().
|
|
+routines) as it is reset during each call to getln() or fgetln_().
|
|
However, the string space used to hold the input line is reused, and
|
|
any pointers into the ln string which you saved may point to trash
|
|
after one of these calls. Ln is alloced for 2K chars, leaving lots of
|
|
@@ -66,7 +66,7 @@
|
|
word breaks, converting tabs to spaces (every 8 chars), buffering
|
|
output (perhaps multiple lines!) and more. The do_fwrite() function does
|
|
not do this. Similarly, the getln() function despace()es,
|
|
-lowercase()es, and filter()s its input, while fgetln(), input(), and
|
|
+lowercase()es, and filter()s its input, while fgetln_(), input(), and
|
|
finput() functions do not [yes, it's a somewhat odd inconsistancy, but
|
|
it's handy].
|
|
|
|
@@ -254,6 +254,14 @@
|
|
files! (The obvious exception is logging and input redirection, for which
|
|
you should use the rather carefuly crafted routines described above!) */
|
|
|
|
+/* Mimics 'writable string' behaviour which wasn't problematic in some old
|
|
+ pre '89 code. GCC supported it for a long time via the -fwritable-strings
|
|
+ option. However, as of version 3.4, it was declared deprecated, and removed
|
|
+ in later versions. A lot of the code depends on this questionable behaviour,
|
|
+ so the following macro is used throughout this *BSD port. */
|
|
+#define WRS(s) (char[]){(s)}
|
|
+
|
|
+
|
|
bool make_filename(); /* args: char *name; int mode; char *extension;
|
|
This turns name into a perfectly valid file name, and returns TRUE if this
|
|
was possible. The name may include a directory specification - otherwise it
|
|
@@ -277,7 +285,7 @@
|
|
#define APPEND "a"
|
|
void close_file(); /* args: FILE *fp; */
|
|
|
|
-bool end_of_file(); /* args: FILE *fp; returns TRUE if finput() or fgetln()
|
|
+bool end_of_file(); /* args: FILE *fp; returns TRUE if finput() or fgetln_()
|
|
will be able to grab a new line from the file. */
|
|
bool end_of_text(); /* args: FILE *fp; Like an end-of-file test, except it also
|
|
returns TRUE if rest of the file is white. As a side-effect, it will step
|
|
@@ -289,17 +297,17 @@
|
|
|
|
#define fpr(fp) fprint(fp,ps)
|
|
#define fwp(fp) fwrite(fp,ps)
|
|
-#define fnl(fp) fwrite(fp,"\n")
|
|
+#define fnl(fp) fwrite(fp,WRS("\n"))
|
|
|
|
void finput(); /* args: FILE *fp; char *str; int max_input_chars; */
|
|
-void fgetln(); /* args: FILE *fp; side-effects global char *ln;
|
|
- Finput() and fgetln() both return a filter()ed line, and on end-of-file, the
|
|
+void fgetln_(); /* args: FILE *fp; side-effects global char *ln;
|
|
+ Finput() and fgetln_() both return a filter()ed line, and on end-of-file, the
|
|
ENDOFILE message is sent. Str must have room for max_input_chars+1 chars,
|
|
and only max_input_chars-1 chars can usually be read, as a '\n' may be read
|
|
in at the end and then deleted from the string. */
|
|
|
|
void fgetdataln(); /* args: FILE *fp; int *count; side-effects global ln;
|
|
- Like fgetln(), although this skips null (white) and comment lines (those
|
|
+ Like fgetln_(), although this skips null (white) and comment lines (those
|
|
beginning with a '#' in the leftmost position. Also, each time any line is
|
|
read from the file (data, null, or comment), *count is incremented. */
|
|
|
|
@@ -329,7 +337,7 @@
|
|
|
|
extern char *ps_, *ln_; /* input and output strings for the library only */
|
|
extern char *linebuf; /* tty output buffer */
|
|
-extern char *gotln, *lnptr; /* input line for getln(), fgetln() */
|
|
+extern char *gotln, *lnptr; /* input line for getln(), fgetln_() */
|
|
|
|
extern FILE **in_fp; /* the "stack" of input files for redirecting input */
|
|
extern int redirs;
|