File: SLmake.inc

package info (click to toggle)
scalapack 1.7-5
  • links: PTS
  • area: main
  • in suites: woody
  • size: 33,956 kB
  • ctags: 30,434
  • sloc: fortran: 309,685; ansic: 64,027; makefile: 1,836; sh: 4
file content (145 lines) | stat: -rw-r--r-- 4,101 bytes parent folder | download | duplicates (2)
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
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
############################################################################
#
#  Program:         ScaLAPACK
#
#  Module:          SLmake.inc
#
#  Purpose:         Top-level Definitions
#
#  Creation date:   February 15, 2000
#
#  Modified:
#
#  Send bug reports, comments or suggestions to scalapack@cs.utk.edu
#
############################################################################
#
SHELL         = /bin/sh
#
#  The complete path to the top level of ScaLAPACK directory, usually
#  $(HOME)/SCALAPACK
#
home          = $(BASEDIR)
#
#  The platform identifier to suffix to the end of library names
#
PLAT          = LINUX
#
#  BLACS setup.  All version need the debug level (0 or 1),
#  and the directory where the BLACS libraries are
#
BLACSDBGLVL   = 0
BLACSdir      = /usr/lib
#
#  MPI setup; tailor to your system if using MPIBLACS
#
ifeq ($(MPI),lam)
USEMPI        = -DUsingMpiBlacs
ifeq ($(BUILD),static)
SMPLIB        = -lmpi
BLACSFINIT    = /usr/lib/libblacsF77init-lam.a
BLACSCINIT    = /usr/lib/libblacsCinit-lam.a
BLACSLIB      = /usr/lib/libblacs-lam.a
else
SMPLIB        = -lmpi
BLACSFINIT    = -lblacsF77init-lam
BLACSCINIT    = -lblacsCinit-lam
BLACSLIB      = -lblacs-lam
endif
TESTINGdir    = $(home)/TESTING
endif
ifeq ($(MPI),mpich)
USEMPI        = -DUsingMpiBlacs
ifeq ($(BUILD),static)
SMPLIB        = /usr/lib/mpich/lib/libmpich.a
BLACSFINIT    = /usr/lib/libblacsF77init-mpich.a
BLACSCINIT    = /usr/lib/libblacsCinit-mpich.a
BLACSLIB      = /usr/lib/libblacs-mpich.a
else
SMPLIB        = /usr/lib/mpich/lib/libmpich.a
BLACSFINIT    = -lblacsF77init-mpich
BLACSCINIT    = -lblacsCinit-mpich
BLACSLIB      = -lblacs-mpich
endif
TESTINGdir    = $(home)/TESTING
endif
ifeq ($(MPI),pvm)
USEMPI        =
ifeq ($(BUILD),static)
SMPLIB        = /usr/lib/libpvm3.a
BLACSFINIT    =
BLACSCINIT    =
BLACSLIB      = /usr/lib/libblacs-pvm.a
else
SMPLIB        = -lpvm3
BLACSFINIT    =
BLACSCINIT    =
BLACSLIB      = -lblacs-pvm
endif
#TESTINGdir    = $(HOME)/pvm3/bin/$(PLAT)
TESTINGdir    = $(home)/TESTING
endif

CBLACSLIB     = $(BLACSCINIT) $(BLACSLIB) $(BLACSCINIT)
FBLACSLIB     = $(BLACSFINIT) $(BLACSLIB) $(BLACSFINIT)

#
#  The directories to find the various pieces of ScaLapack
#
PBLASdir      = $(home)/PBLAS
SRCdir        = $(home)/SRC
TESTdir       = $(home)/TESTING
PBLASTSTdir   = $(TESTINGdir)
TOOLSdir      = $(home)/TOOLS
REDISTdir     = $(home)/REDIST
REDISTTSTdir  = $(TESTINGdir)
#
#  The fortran and C compilers, loaders, and their flags
#
F77           = g77
#F77           = /usr/local/pgi/linux86/bin/pgf77
CC            = gcc
NOOPT         = -w -fno-globals -fno-f90 -fugly-complex $(FPIC)
F77FLAGS      = -Wall -O6 -funroll-all-loops -ffast-math $(NOOPT)
CCFLAGS       = -Wall $(FPIC) -O6 -funroll-all-loops -ffast-math
SRCFLAG       =
F77LOADER     = $(F77)
ifeq ($(MPI),mpich)
CCLOADER      = $(F77)
SYSLIBS       = -lm
else
CCLOADER      = $(CC)
SYSLIBS       = -lf2c -lm
endif
F77LOADFLAGS  =
CCLOADFLAGS   =
#
#  C preprocessor defs for compilation 
#  (-DNoChange, -DAdd_, -DUpCase, or -Df77IsF2C)
#
CDEFS         = -Df77IsF2C -DNO_IEEE $(USEMPI)
#
#  The archiver and the flag(s) to use when building archive (library)
#  Also the ranlib routine.  If your system has no ranlib, set RANLIB = echo
#
ARCH          = ar
ARCHFLAGS     = cr
RANLIB        = ranlib
#
#  The name of the libraries to be created/linked to
#
SCALAPACKLIB  = $(home)/scalapack_$(MPI).a
BLASLIB       = -llapack -lblas
# BLASLIB       = /usr/local/lib/libf77blas.a /usr/local/lib/libatlas.a
#
ifeq ($(BUILD),static)
PBLIBS        = $(SCALAPACKLIB) $(FBLACSLIB) $(BLASLIB) $(SMPLIB)
PRLIBS        = $(SCALAPACKLIB) $(CBLACSLIB) $(SMPLIB) $(BLASLIB) $(SYSLIBS)
RLIBS         = $(SCALAPACKLIB) $(FBLACSLIB) $(CBLACSLIB) $(BLASLIB) $(SMPLIB)
LIBS          = $(PBLIBS)
else
PBLIBS        = -L $(BASEDIR) -lscalapack-$(MPI) $(FBLACSLIB) $(BLASLIB) $(SMPLIB)
PRLIBS        = -L $(BASEDIR) -lscalapack-$(MPI) $(CBLACSLIB) $(SMPLIB) $(BLASLIB) $(SYSLIBS)
RLIBS         = -L $(BASEDIR) -lscalapack-$(MPI) $(FBLACSLIB) $(CBLACSLIB) $(BLASLIB) $(SMPLIB)
LIBS          = $(PBLIBS)
endif