1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
|
diff --git a/Makefile.std b/Makefile.std
index e204486..ca65bd3 100644
--- a/Makefile.std
+++ b/Makefile.std
@@ -1,64 +1,23 @@
# General-purpose Makefile for PLINK 1.90
#
-# Compilation options:
-# Do not link to LAPACK NO_LAPACK
-# Leave blank after "=" to disable; put "= 1" to enable
-# (when enabled, "#define NOLAPACK" must be uncommented in plink_common.h)
-NO_LAPACK =
+# CFLAGS=-Wall -O2
+# BLASFLAGS=-lblas -llapack -latlas
+LINKFLAGS=-lm -lpthread -lopenblas -llapack -latlas -lstdc++
+ZLIB=-lz
+SRC = plink.c plink_assoc.c plink_calc.c plink_cluster.c plink_cnv.c plink_common.c plink_data.c plink_dosage.c plink_family.c plink_filter.c plink_glm.c plink_help.c plink_homozyg.c plink_lasso.c plink_ld.c plink_matrix.c plink_misc.c plink_perm.c plink_rserve.c plink_set.c plink_stats.c SFMT.c dcdflib.c pigz.c yarn.c Rconnection.cc hfile.c bgzf.c
-# should autodetect system
-SYS = UNIX
-ifdef SystemRoot
- SYS = WIN
-else
- UNAME := $(shell uname)
- ifeq ($(UNAME), Darwin)
- SYS = MAC
- endif
-endif
-
-CFLAGS=-Wall -O2
-BLASFLAGS=-L/usr/lib64/atlas -llapack -lcblas -latlas
-LINKFLAGS=-lm -lpthread -ldl
-ZLIB=zlib-1.2.8/libz.so.1.2.8
-
-ifeq ($(SYS), MAC)
- GCC_GTEQ_43 := $(shell expr `g++ -dumpversion | sed -e 's/\.\([0-9][0-9]\)/\1/g' -e 's/\.\([0-9]\)/0\1/g' -e 's/^[0-9]\{3,4\}$$/&00/'` \>= 40300)
- ifeq "$(GCC_GTEQ_43)" "1"
- CFLAGS=-Wall -O2 -flax-vector-conversions
- endif
- BLASFLAGS=-framework Accelerate
- LINKFLAGS=-ldl
- ZLIB=zlib-1.2.8/libz.1.2.8.dylib
-endif
-
-ifeq ($(SYS), WIN)
-# Note that, unlike the Linux and Mac build processes, this STATICALLY links
-# LAPACK, since we have not gotten around to trying dynamically-linked LAPACK
-# on Windows.
-# If you don't already have LAPACK built, you'll probably want to turn on
-# NO_LAPACK.
- BLASFLAGS=-L. lapack/liblapack.a -L. lapack/librefblas.a
- LINKFLAGS=-lm -static-libgcc
- ZLIB=zlib-1.2.8/libz.a
-endif
+OBJ = plink.o plink_assoc.o plink_calc.o plink_cluster.o plink_cnv.o plink_common.o plink_data.o plink_dosage.o plink_family.o plink_filter.o plink_glm.o plink_help.o plink_homozyg.o plink_lasso.o plink_ld.o plink_matrix.o plink_misc.o plink_perm.o plink_rserve.o plink_set.o plink_stats.o SFMT.o dcdflib.o pigz.o yarn.o Rconnection.o hfile.o bgzf.o
-ifdef NO_LAPACK
- BLASFLAGS=
-endif
-SRC = plink.c plink_assoc.c plink_calc.c plink_cluster.c plink_cnv.c plink_common.c plink_data.c plink_dosage.c plink_family.c plink_filter.c plink_glm.c plink_help.c plink_homozyg.c plink_lasso.c plink_ld.c plink_matrix.c plink_misc.c plink_perm.c plink_rserve.c plink_set.c plink_stats.c SFMT.c dcdflib.c pigz.c yarn.c Rconnection.cc hfile.c bgzf.c
+# In the likely event that you are concurrently using PLINK 1.07, we suggest
+# either renaming that binary to "plink1" or this one to "plink2".
-# In the event that you are still concurrently using PLINK 1.07, we suggest
-# renaming that binary to "plink107" and "plink1". (Previously,
-# "plink1"/"plink2" was suggested here; that also works for now, but it may
-# lead to minor problems when PLINK 2.0 is released.)
+# plink: $(SRC)
+# g++ $(CFLAGS) $(SRC) -o plink $(BLASFLAGS) $(LINKFLAGS) -L. $(ZLIB)
plink: $(SRC)
- g++ $(CFLAGS) $(SRC) -o plink $(BLASFLAGS) $(LINKFLAGS) -L. $(ZLIB)
-
-plinkw: $(SRC)
g++ $(CFLAGS) $(SRC) -c
- gfortran -O2 $(OBJ) -o plink -Wl,-Bstatic $(BLASFLAGS) $(LINKFLAGS) -L. $(ZLIB)
+ gfortran $(OBJ) -o plink2 $(BLASFLAGS) $(LINKFLAGS) -L. $(ZLIB)
+ # gfortran $^ -o plink2 -Wl,-Bstatic $(BLASFLAGS) $(LINKFLAGS) -L. $(ZLIB)
diff --git a/dose2plink.c b/dose2plink.c
index dc1f33a..ca2d31c 100644
--- a/dose2plink.c
+++ b/dose2plink.c
@@ -96,7 +96,7 @@
#endif
#endif
-#include "zlib-1.2.8/zlib.h"
+#include "zlib.h"
#ifdef __APPLE__
#include <sys/sysctl.h>
diff --git a/pigz.c b/pigz.c
index 46b0525..3ce9a6b 100644
--- a/pigz.c
+++ b/pigz.c
@@ -297,7 +297,7 @@
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
-#include "zlib-1.2.8/zlib.h"
+#include "zlib.h"
#include "pigz.h"
@@ -513,7 +513,7 @@ int32_t flex_pzwrite_close_null(Pigz_state* ps_ptr, char* writep) {
# include <sys/pstat.h>
#endif
-#include "zlib-1.2.8/zlib.h" /* deflateInit2(), deflateReset(), deflate(), */
+#include "zlib.h" /* deflateInit2(), deflateReset(), deflate(), */
/* deflateEnd(), deflateSetDictionary(), crc32(),
inflateBackInit(), inflateBack(), inflateBackEnd(),
Z_DEFAULT_COMPRESSION, Z_DEFAULT_STRATEGY,
diff --git a/plink_common.h b/plink_common.h
index 84eb929..e0b5cca 100644
--- a/plink_common.h
+++ b/plink_common.h
@@ -177,7 +177,7 @@
#define VEC_BITS (VEC_BYTES * 8)
#define VEC_BITS_M1 (VEC_BITS - 1)
-#include "zlib-1.2.8/zlib.h"
+#include "zlib.h"
#include "SFMT.h"
// 64MB of non-workspace memory guaranteed for now.
|