added source code
[unres.git] / source / unres / src_MD-M / Makefile.tau-mpi-pdt-pgi.org
1 #****************************************************************************
2 #*                      TAU Portable Profiling Package                     **
3 #*                      http://www.cs.uoregon.edu/research/tau             **
4 #****************************************************************************
5 #*    Copyright 1997-2002                                                  **
6 #*    Department of Computer and Information Science, University of Oregon **
7 #*    Advanced Computing Laboratory, Los Alamos National Laboratory        **
8 #****************************************************************************
9 #######################################################################
10 ##                  pC++/Sage++  Copyright (C) 1993,1995             ##
11 ##  Indiana University  University of Oregon  University of Rennes   ##
12 #######################################################################
13  
14 #######################################################################
15 # This is a sample Makefile that contains the Profiling and Tracing 
16 # options. Makefiles of other applications and libraries (not included 
17 # in this distribution) should include this Makefile.
18 # It defines the following variables that should be added to CFLAGS
19 # TAU_INCLUDE   -  Include path for tau headers
20 # TAU_DEFS      -  Defines that are needed for tracing and profiling only.
21 # And for linking add to LIBS 
22 # TAU_LIBS      -  TAU Tracing and Profiling library libprof.a 
23
24 # When the user needs to turn off tracing and profiling and run the 
25 # application without any runtime overhead of instrumentation, simply
26 # remove TAUDEFS and TAULIBS from CFLAGS and LIBS respectively but keep
27 # TAUINC.
28 #######################################################################
29
30 ########### Automatically modified by the configure script ############
31 CONFIG_ARCH=xt3
32 TAU_ARCH=xt3
33 CONFIG_CC=qk-pgcc
34 CONFIG_CXX=qk-pgCC
35 TAU_CC_FE=$(CONFIG_CC)
36 #BGL#TAU_CC_FE=xlc #ENDIF#
37 #BGP#TAU_CC_FE=xlc #ENDIF#
38 TAU_CC_FE=gcc #ENDIF##CATAMOUNT#
39 #SC_GFORTRAN#TAU_CC_FE=gcc #ENDIF#
40 #SC_PATHSCALE#TAU_CC_FE=gcc #ENDIF#
41 PCXX_OPT=-g
42 USER_OPT=
43 EXTRADIR=/opt/pgi/6.1.4/linux86-64/6.1/bin/..
44 EXTRADIRCXX=
45 TAUROOT=/usr/local/packages/TAU-2.17/tau-2.17
46 TULIPDIR=
47 TAUEXTRASHLIBOPTS=
48 TAUGCCLIBOPTS=
49 TAUGCCLIBDIR=
50 PCLDIR=
51 PAPIDIR=
52 PAPISUBDIR=
53 CHARMDIR=
54 PDTDIR=/usr/local/packages/TAU-2.17/tau-2.17/../pdtoolkit-3.12
55 PDTCOMPDIR=
56 DYNINSTDIR=
57 JDKDIR=
58 SLOG2DIR=
59 OPARIDIR=
60 TAU_OPARI_TOOL=
61 EPILOGDIR=
62 EPILOGBINDIR=
63 EPILOGINCDIR=
64 EPILOGLIBDIR=
65 EPILOGEXTRALINKCMD=
66 VAMPIRTRACEDIR=
67 KTAU_INCDIR=
68 KTAU_INCUSERDIR=
69 KTAU_LIB=
70 KTAU_KALLSYMS_PATH=
71 PYTHON_INCDIR=
72 PYTHON_LIBDIR=
73 PERFINCDIR=
74 PERFLIBDIR=
75 PERFLIBRARY=
76 TAU_SHMEM_INC=
77 TAU_SHMEM_LIB=
78 TAU_CONFIG=-mpi-pdt-pgi
79 TAU_MPI_INC=-I/opt/xt-mpt/default/mpich2-64/P2/include
80 TAU_MPI_LIB=/usr/local/packages/TAU-2.17/tau-2.17/xt3/lib/libTauMpi$(TAU_CONFIG).a -L/opt/xt-mpt/default/mpich2-64/P2/lib -lrt -lmpichcxx -lmpich -lrt
81 TAU_MPI_FLIB=-L/opt/xt-mpt/default/mpich2-64/P2/lib -L/usr/local/packages/TAU-2.17/tau-2.17/xt3/lib/libTauMpi$(TAU_CONFIG).a -lrt -lmpichcxx -lmpich -lrt
82 TAU_MPILIB_DIR=/opt/xt-mpt/default/mpich2-64/P2/lib
83 TAU_MPI_NOWRAP_LIB= -L/opt/xt-mpt/default/mpich2-64/P2/lib -lrt -lmpichcxx -lmpich -lrt
84 TAU_MPI_NOWRAP_FLIB=-L/opt/xt-mpt/default/mpich2-64/P2/lib  -lrt -lmpichcxx -lmpich -lrt
85 FULL_CXX=/opt/xt-pe/1.5.47/bin/snos64/qk-pgCC
86 FULL_CC=/opt/xt-pe/1.5.47/bin/snos64/qk-pgcc
87 TAU_PREFIX_INSTALL_DIR=/usr/local/packages/TAU-2.17/tau-2.17
88
89 TAU_BIN_DIR=$(TAU_PREFIX_INSTALL_DIR)/$(CONFIG_ARCH)/bin
90 TAU_INC_DIR=$(TAU_PREFIX_INSTALL_DIR)/include
91 TAU_LIB_DIR=$(TAU_PREFIX_INSTALL_DIR)/$(CONFIG_ARCH)/lib
92
93 #######################################################################
94  
95 #ENABLE64BIT#ABI             = -64                #ENDIF#
96 #ENABLEN32BIT#ABI            = -n32               #ENDIF#
97 #ENABLE32BIT#ABI             = -32                #ENDIF#
98
99 #######################################################################
100 #SP1#IBM_XLC_ABI             = -q32               #ENDIF#
101 #SP1#IBM_GNU_ABI             = -maix32            #ENDIF#
102 #IBM64#IBM_XLC_ABI           = -q64               #ENDIF#
103 #IBM64#IBM_GNU_ABI           = -maix64            #ENDIF#
104 #IBM64LINUX#IBM_XLC_ABI      = -q64               #ENDIF#
105 #IBM64LINUX#IBM_GNU_ABI      = -m64               #ENDIF#
106 #SUNX86_64#SUN_GNU_ABI       = -m64               #ENDIF#
107 #SUNX86_64#SUN_CC_ABI        = -xarch=amd64       #ENDIF#
108 #MIPS32LINUX#SC_GNU_ABI      = -mabi=n32          #ENDIF#
109 #MIPS32LINUX#SC_PATH_ABI     = -n32               #ENDIF#
110 #MIPS64LINUX#SC_GNU_ABI      = -mabi=64           #ENDIF#
111 #MIPS64LINUX#SC_PATH_ABI     = -64               #ENDIF#
112 #GNU#SC_ABI                  = $(SC_GNU_ABI)      #ENDIF#
113 #USE_PATHCC#SC_ABI           = $(SC_PATH_ABI)     #ENDIF#
114 #MIPS32#ABI                  = $(SC_ABI)          #ENDIF#
115 #MIPS64#ABI                  = $(SC_ABI)          #ENDIF#
116
117 #USE_IBMXLC#IBM_ABI          = $(IBM_XLC_ABI)     #ENDIF#
118 #GNU#IBM_ABI                 = $(IBM_GNU_ABI)     #ENDIF#
119 #SP1# ABI                    = $(IBM_ABI)         #ENDIF#
120 #PPC64# ABI                  = $(IBM_ABI)         #ENDIF#
121 #SOLARIS64#SUN_GNU_ABI       = -mcpu=v9 -m64      #ENDIF#
122 #SOLARIS64#SUN_CC_ABI        = -xarch=v9 -xcode=pic32     #ENDIF#
123 #SOL2CC#SUN_ABI              = $(SUN_CC_ABI)      #ENDIF#
124 #GNU#SUN_ABI                 = $(SUN_GNU_ABI)     #ENDIF#
125 #SOL2#ABI                    = $(SUN_ABI)         #ENDIF#
126 #SUNX86_64#ABI               = $(SUN_ABI)         #ENDIF#
127 #FORCEIA32#ABI               = -m32#ENDIF#
128 #######################################################################
129 F90_ABI = $(ABI) 
130 #IBM64_FORTRAN#F90_ABI       = -q64               #ENDIF#
131 #######################################################################
132
133 ############# Standard Defines ##############
134 TAU_CC = $(CONFIG_CC) $(ABI) $(ISA)
135 TAU_CXX = $(CONFIG_CXX) $(ABI) $(ISA) $(USER_OPT)
136 TAU_RUN_CC = $(FULL_CC) $(ABI) $(ISA)
137 TAU_RUN_CXX = $(FULL_CXX) $(ABI) $(ISA)
138 TAU_INSTALL = /bin/cp
139 TAU_SHELL = /bin/sh
140 LSX = .a
141 #############################################
142 # JAVA DEFAULT ARCH 
143 #############################################
144 JDKARCH                 = linux
145 #COMPAQ_ALPHA#JDKARCH   = alpha      #ENDIF#
146 #SOL2#JDKARCH           = solaris    #ENDIF#
147 #SGIMP#JDKARCH          = irix       #ENDIF#
148 #SP1#JDKARCH            = aix        #ENDIF#
149 #T3E#JDKARCH            = cray       #ENDIF#
150 #############################################
151 # JAVA OBJECTS
152 #############################################
153 #JAVA#TAU_JAVA_O        = TauJava.o TauJAPI.o  #ENDIF#
154 #JAVA#TAUJAPI   = Profile.class        #ENDIF#
155
156
157 #############################################
158 # OpenMP OBJECTS
159 #############################################
160 #OPENMP#OPENMP_O        = OpenMPLayer.o #ENDIF#
161
162 #############################################
163 # Opari OBJECTS
164 #############################################
165 #OPARI#OPARI_O  = TauOpari.o #ENDIF#
166 #KOJAKOPARI#OPARI_O     = TauKojakOpari.o #ENDIF#
167 #EPILOG#OPARI_O         =  #ENDIF#
168 #VAMPIRTRACE#OPARI_O    =  #ENDIF#
169 #GNU#OPARI_O    = #ENDIF#
170
171 #############################################
172 # CallPath OBJECTS
173 #############################################
174 #PROFILECALLPATH#CALLPATH_O  = TauCallPath.o #ENDIF#
175 #PROFILEPARAM#PARAM_O  = ProfileParam.o #ENDIF#
176
177 #############################################
178 # Python Binding OBJECTS
179 #############################################
180 #PYTHON#PYTHON_O  = PyGroups.o PyExceptions.o PyDatabase.o PyBindings.o PyTimer.o PyTau.o #ENDIF#
181
182 #############################################
183 # DYNINST DEFAULT ARCH
184 #############################################
185 DYNINST_PLATFORM        = $(PLATFORM)
186
187
188 #PCL##include $(TAU_INC_DIR)/makefiles/PCLMakefile.stub   #ENDIF#
189
190 ############# OpenMP Fortran Option ########
191 #OPENMP#TAU_F90_OPT = -mp                   #ENDIF#
192 #SOL2CC_OPENMP#TAU_F90_OPT = -xopenmp       #ENDIF#
193 #SUNCC_OPENMP#TAU_F90_OPT = -xopenmp=parallel       #ENDIF#
194 #COMPAQCXX_OPENMP#TAU_F90_OPT = -omp        #ENDIF#
195 #IBMXLC_OPENMP#TAU_F90_OPT = -qsmp=omp      #ENDIF#
196 #GUIDE#TAU_F90_OPT =                        #ENDIF#
197 #PGIOPENMP#TAU_F90_OPT = -mp                #ENDIF#
198 #INTELOPENMP#TAU_F90_OPT = -openmp          #ENDIF#
199 #HITACHI_OPENMP#TAU_F90_OPT =               #ENDIF#
200
201 #THREADSAFE_COMPILERS#TAU_R         =_r     #ENDIF#
202
203 ############# Fortran Compiler #############
204 #GNU_FORTRAN#TAU_F90         = g77              $(F90_ABI) $(TAU_F90_OPT)   #ENDIF#
205 #GNU_GFORTRAN#TAU_F90         = gfortran              $(F90_ABI) $(TAU_F90_OPT)   #ENDIF#
206 #G95_FORTRAN#TAU_F90         = g95              $(F90_ABI) $(TAU_F90_OPT)   #ENDIF#
207 #SC_GFORTRAN#TAU_F90         = scgfortran              $(F90_ABI) $(TAU_F90_OPT)   #ENDIF#
208 #SGI_FORTRAN#TAU_F90         = f90              $(F90_ABI) $(TAU_F90_OPT)   #ENDIF#
209 #IBM_FORTRAN#TAU_F90         = xlf90$(TAU_R)    $(F90_ABI) $(TAU_F90_OPT)   #ENDIF#
210 #BGP#TAU_F90         = bgxlf90$(TAU_R)    $(F90_ABI) $(TAU_F90_OPT)   #ENDIF#
211 #BGL#TAU_F90         = blrts_xlf90$(TAU_R)    $(F90_ABI) $(TAU_F90_OPT)   #ENDIF#
212 #IBM64_FORTRAN#TAU_F90       = xlf90$(TAU_R)    $(F90_ABI) $(TAU_F90_OPT)   #ENDIF#
213 #IBMXLFAPPLE#TAU_F90       = xlf90$(TAU_R)    $(F90_ABI) $(TAU_F90_OPT)   #ENDIF#
214 #CRAY_FORTRAN#TAU_F90        = f90              $(F90_ABI) $(TAU_F90_OPT)   #ENDIF#
215 #CRAY_X1_FORTRAN#TAU_F90     = ftn              $(F90_ABI) $(TAU_F90_OPT)   #ENDIF#
216 TAU_F90         = pgf90            $(F90_ABI) $(TAU_F90_OPT)   #ENDIF##PGI_FORTRAN#
217 #CRAYCNL#TAU_F90         = ftn            $(F90_ABI) $(TAU_F90_OPT)   #ENDIF#
218 TAU_F90         = qk-pgf90         $(F90_ABI) $(TAU_F90_OPT) #ENDIF##PGI_CATAMOUNT#
219 #ABSOFT_FORTRAN#TAU_F90      = f90              $(F90_ABI) $(TAU_F90_OPT)   #ENDIF#
220 #LAHEY_FORTRAN#TAU_F90      = lf95              $(F90_ABI) $(TAU_F90_OPT)   #ENDIF#
221 #LAHEY64_FORTRAN#TAU_F90      = lf95              $(F90_ABI) $(TAU_F90_OPT)   #ENDIF#
222 #NAGWARE_FORTRAN#TAU_F90      = f95              $(F90_ABI) $(TAU_F90_OPT)   #ENDIF#
223 #FUJITSU_FORTRAN#TAU_F90     = F90              $(F90_ABI) $(TAU_F90_OPT)   #ENDIF#
224 #FUJITSU_SOLARIS#TAU_F90     = f90              $(F90_ABI) $(TAU_F90_OPT)   #ENDIF#
225 #SUN_FORTRAN#TAU_F90         = f90              $(F90_ABI) $(TAU_F90_OPT)   #ENDIF#
226 #COMPAQ_FORTRAN#TAU_F90      = f90              $(F90_ABI)  $(TAU_F90_OPT)  #ENDIF#
227 #KAI_FORTRAN#TAU_F90         = guidef90         $(F90_ABI) $(TAU_F90_OPT)   #ENDIF#
228 #HP_FORTRAN#TAU_F90          = f90              $(F90_ABI) $(TAU_F90_OPT)   #ENDIF#
229 #HITACHI_FORTRAN#TAU_F90     = f90              $(F90_ABI) $(TAU_F90_OPT)   #ENDIF#
230 #INTEL_FORTRAN#TAU_F90       = efc              $(F90_ABI) $(TAU_F90_OPT)   #ENDIF#
231 #INTEL32_FORTRAN#TAU_F90     = ifc              $(F90_ABI) $(TAU_F90_OPT)   #ENDIF#
232 #INTELIFORT#TAU_F90     = ifort                 $(F90_ABI) $(TAU_F90_OPT)   #ENDIF#
233 #PATHSCALE_FORTRAN#TAU_F90     = pathf90         $(F90_ABI) $(TAU_F90_OPT)   #ENDIF#
234 #SC_PATHSCALE#TAU_F90     = scpathf95         $(F90_ABI) $(TAU_F90_OPT)   #ENDIF#
235 #OPEN64ORC_FORTRAN#TAU_F90     = orf90         $(F90_ABI) $(TAU_F90_OPT)   #ENDIF#
236 #NEC_FORTRAN#TAU_F90         = f90              $(F90_ABI) $(TAU_F90_OPT)   #ENDIF#
237
238
239 ############# Portable F90 Options #############
240 #IBM64_FORTRAN#TAU_F90_FIXED      = -qfixed  #ENDIF#
241 #IBM_FORTRAN#TAU_F90_FIXED      = -qfixed  #ENDIF#
242 #IBM_FORTRAN#TAU_F90_SUFFIX     = -qsuffix=f=f90  #ENDIF#
243 #IBMXLFAPPLE#TAU_F90_FIXED      = -qfixed  #ENDIF#
244 #IBMXLFAPPLE#TAU_F90_SUFFIX     = -qsuffix=f=f90  #ENDIF#
245 #IBM64_FORTRAN#TAU_F90_SUFFIX     = -qsuffix=f=f90  #ENDIF#
246
247 ############# Profiling Options #############
248 PROFILEOPT1           = -DPROFILING_ON        #ENDIF##PROFILE#
249 #PCL#PROFILEOPT3               = -DTAU_PCL -I$(PCLDIR)/include #ENDIF#
250 #PAPI#PROFILEOPT3              = -DTAU_PAPI -I$(PAPIDIR)/src -I$(PAPIDIR)/include #ENDIF#
251 #PCL#PCL_O                     = PclLayer.o            #ENDIF#
252 #PAPI#PAPI_O                   = PapiLayer.o           #ENDIF#
253 #MULTIPLECOUNTERS#MULT_O       = MultipleCounters.o    #ENDIF#
254 #PROFILECALLS#PROFILEOPT4      = -DPROFILE_CALLS       #ENDIF#
255 #PROFILESTATS#PROFILEOPT5      = -DPROFILE_STATS       #ENDIF#
256 #DEBUGPROF#PROFILEOPT6         = -DDEBUG_PROF          #ENDIF#
257 PROFILEOPT7         = -DTAU_STDCXXLIB       #ENDIF##STDCXXLIB#
258 #CRAYX1CC#PROFILEOPT7         = #ENDIF#
259 #CRAYCC#PROFILEOPT7         = #ENDIF#
260 #INTELTFLOP#PROFILEOPT8        = -DPOOMA_TFLOP         #ENDIF#
261 #NORTTI#PROFILEOPT9            = -DNO_RTTI             #ENDIF#
262 #RTTI#PROFILEOPT9              = -DRTTI             #ENDIF#
263 #GNU#PROFILEOPT10              = -DTAU_GNU  -DTAU_DOT_H_LESS_HEADERS -fPIC #ENDIF#
264 #APPLECXX#PROFILEOPT10              = -DTAU_GNU  -DTAU_DOT_H_LESS_HEADERS -fPIC #ENDIF#
265 #SOL2CC#PROFILEOPT10              = -DTAU_SOL2CC  -DTAU_DOT_H_LESS_HEADERS #ENDIF#
266 #SUNCC#PROFILEOPT10              = -DTAU_SOL2CC  -DTAU_DOT_H_LESS_HEADERS #ENDIF#
267 #USE_PATHCC#PROFILEOPT10       = -DTAU_DOT_H_LESS_HEADERS -fPIC -DTAU_PATHSCALE #ENDIF#
268 #OPEN64ORC#PROFILEOPT10       = -DTAU_DOT_H_LESS_HEADERS -DTAU_OPEN64ORC -fpic  #ENDIF#
269 #CALLSTACK#PROFILEOPT11        = -DPROFILE_CALLSTACK   #ENDIF#
270 #PGI1.7#PROFILEOPT12           = -DPGI                 #ENDIF#
271 #CRAYKAI#PROFILEOPT12          = -DCRAYKAI             #ENDIF#
272 #HP_FORTRAN#PROFILEOPT12       = -DHP_FORTRAN          #ENDIF#
273 #CRAYCC#PROFILEOPT13           = -h instantiate=used -DCRAYCC -DTAU_DOT_H_LESS_HEADERS  #ENDIF#
274 #CRAYX1CC#PROFILEOPT13         = -DTAU_DOT_H_LESS_HEADERS #ENDIF#
275 #SGICC#TAU_CXX = $(CONFIG_CXX) $(ABI) $(ISA) $(USER_OPT) -LANG:std  #ENDIF#
276 #INTELCXXLIBICC#TAU_CXX = $(CONFIG_CXX) $(ABI) $(ISA) $(USER_OPT) -cxxlib-icc #ENDIF#
277 #PTHREAD_AVAILABLE#PROFILEOPT15 = -DPTHREADS           #ENDIF#
278 #COMPAQCXX_PTHREAD#PROFILEOPT15 = -DPTHREADS -pthread  #ENDIF#
279 #TAU_SPROC#PROFILEOPT15         = -DTAU_SPROC          #ENDIF#
280 #TAU_PAPI_THREADS#PROFILEOPT15  = -DTAU_PAPI_THREADS           #ENDIF#
281 #TULIPTHREADS#PROFILEOPT16 = -DTULIPTHREADS            #ENDIF#
282 #TRACE#TRACEOPT                = -DTRACING_ON          #ENDIF#
283 #TRACE#EVENTS_O                = Tracer.o              #ENDIF#
284 #KTAU#KTAU_O                    = TauKtau.o KtauProfiler.o KtauSymbols.o  #ENDIF#
285 #KTAU_MERGE#KTAU_MERGE_O        = KtauFuncInfo.o KtauMergeInfo.o ktau_syscall.o  #ENDIF#
286 #KTAU_SHCTR#KTAU_SHCTR_O        = KtauCounters.o  #ENDIF#
287 #MPITRACE#TRACEOPT       = -DTAU_MPITRACE -DTRACING_ON #ENDIF#
288 #MPITRACE#EVENTS_O                = Tracer.o              #ENDIF#
289 #MUSE#MUSE_O                  = TauMuse.o TauMuseFilters.o TauMuseHandlers.o TauMusePackages.o #ENDIF#
290 #MUSE_EVENT#MUSE_O                  = TauMuse.o TauMuseFilters.o TauMuseHandlers.o TauMusePackages.o #ENDIF#
291 #MUSE_MULTIPLE#MUSE_O                  = TauMuse.o TauMuseFilters.o TauMuseHandlers.o TauMusePackages.o #ENDIF#
292 #COMPENSATE#COMPENSATE_O      = TauCompensate.o #ENDIF#
293 #PTHREAD_AVAILABLE#THR_O       = PthreadLayer.o        #ENDIF#
294 #TAU_PAPI_THREADS#THR_O       = PapiThreadLayer.o        #ENDIF#
295 #TAU_SPROC#THR_O               = SprocLayer.o        #ENDIF#
296 #JAVA#THR_O                    = JavaThreadLayer.o     #ENDIF#
297 #TULIPTHREADS#THR_O       = TulipThreadLayer.o         #ENDIF#
298 #LINUXTIMERS#PLATFORM_O       = TauLinuxTimers.o       #ENDIF#
299 #TULIPTHREADS#PROFILEOPT17  = -I$(TULIPDIR)/include -I$(TULIPDIR)/Tuliplib   #ENDIF#
300 #SMARTS#PROFILEOPT17  = -I$(TULIPDIR)/include -I$(TULIPDIR)/lib -I$(TULIPDIR)/machine-specific/$(HOSTTYPE)  #ENDIF#
301 #SMARTS#PROFILEOPT18  = -DSMARTS   #ENDIF#
302 #KAI#PROFILEOPT19              = -DKAI  -DTAU_DOT_H_LESS_HEADERS #ENDIF#
303 #USE_DECCXX#PROFILEOPT19               = -DTAU_DOT_H_LESS_HEADERS   #ENDIF#
304 #SGICC#PROFILEOPT19            = -DTAU_DOT_H_LESS_HEADERS   #ENDIF#
305 #USE_INTELCXX#PROFILEOPT19     = -DTAU_DOT_H_LESS_HEADERS   -fPIC #ENDIF#
306 #USE_NECCXX#PROFILEOPT19     = -DTAU_DOT_H_LESS_HEADERS   #ENDIF#
307 PROFILEOPT19           = -DTAU_DOT_H_LESS_HEADERS   -fPIC #ENDIF##PGI#
308 #ACC#PROFILEOPT19              = -AA +z -DTAU_DOT_H_LESS_HEADERS -DTAU_HPUX #ENDIF#
309 #FUJITSU#PROFILEOPT19          = -DFUJITSU -DTAU_DOT_H_LESS_HEADERS   #ENDIF#
310 #KAINOEX#PROFILEOPT20          = --no_exceptions   #ENDIF#
311 #SGICCNOEX#PROFILEOPT20                = -LANG:exceptions=off  #ENDIF#
312 #HPGNU#PROFILEOPT21            = -fPIC #ENDIF#
313 #HITACHI#PROFILEOPT21          = -DTAU_HITACHI #ENDIF#
314 #SP1#PROFILEOPT21              = -D_POSIX_SOURCE -DTAU_AIX #ENDIF#
315 #PPC64#TAU_PIC_PROFILEOPT21           = -qpic=large #ENDIF#
316 #BGL#TAU_PIC_PROFILEOPT21           = #ENDIF#
317 #USE_IBMXLC#PROFILEOPT21               = -DTAU_DOT_H_LESS_HEADERS -DTAU_XLC $(TAU_PIC_PROFILEOPT21) #ENDIF#
318 #IBMXLCAPPLE#PROFILEOPT21              = -DTAU_DOT_H_LESS_HEADERS -DTAU_XLC -DTAU_APPLE_XLC #ENDIF#
319 #PCLPTHREAD#PROFILEOPT22               = -DPCL_MUTEX_LOCK #ENDIF#
320 #JAVA#PROFILEOPT23             = -DJAVA                 #ENDIF#
321 #MONITOR#PROFILEOPT24          = -DMONITORING_ON        #ENDIF#
322 #JAVA#PROFILEOPT25 = -I$(JDKDIR)/include -I$(JDKDIR)/include/$(JDKARCH) #ENDIF#
323 PROFILEOPT26 = -DTAU_MPI #ENDIF##MPI#
324 PROFILEOPT26 = -DTAU_MPI -DTAU_MPI_THREADED #ENDIF##MPI_THREADED#
325 #OPENMP#PROFILEOPT27 = -mp -DTAU_OPENMP#ENDIF#
326 #GNU#PROFILEOPT27 = #ENDIF#
327 #SOL2CC_OPENMP#PROFILEOPT27 = -xopenmp -DTAU_OPENMP#ENDIF#
328 #SUNCC_OPENMP#PROFILEOPT27 = -xopenmp=parallel -DTAU_OPENMP#ENDIF#
329 #SUNCC_OPENMP#PROFILEOPT27 = -xopenmp=parallel -DTAU_OPENMP#ENDIF#
330 #HITACHI_OPENMP#PROFILEOPT27 = -DTAU_OPENMP#ENDIF#
331 #COMPAQCXX_OPENMP#PROFILEOPT27 = -omp -DTAU_OPENMP#ENDIF#
332 #IBMXLC_OPENMP#PROFILEOPT27 = -qsmp=omp -DTAU_OPENMP #ENDIF#
333 #OPEN64_OPENMP#PROFILEOPT27 = -mp -DTAU_OPENMP #ENDIF#
334 #GUIDE#PROFILEOPT27 = -DTAU_OPENMP #ENDIF#
335 #PGIOPENMP#PROFILEOPT27 = -mp -D_OPENMP -DTAU_OPENMP -U_RWSTD_MULTI_THREAD -U_REENTRANT #ENDIF#
336 #INTELOPENMP#PROFILEOPT27 = -openmp -DTAU_OPENMP #ENDIF#
337 #GNUOPENMP#PROFILEOPT27 = -fopenmp -DTAU_OPENMP #ENDIF#
338 #OPARI#PROFILEOPT28 = -I$(OPARIDIR)/lib -I$(OPARIDIR)/include #ENDIF#
339 #OPARI_REGION#PROFILEOPT28 = -DTAU_OPARI_REGION -I$(OPARIDIR)/lib -I$(OPARIDIR)/include #ENDIF#
340 #OPARI_CONSTRUCT#PROFILEOPT28 = -DTAU_OPARI_CONSTRUCT -I$(OPARIDIR)/lib -I$(OPARIDIR)/include #ENDIF#
341 #MULTIPLECOUNTERS#PROFILEOPT29 = -DTAU_MULTIPLE_COUNTERS #ENDIF#
342 #SGITIMERS#PROFILEOPT30         = -DSGI_TIMERS          #ENDIF#
343 #BGLTIMERS#PROFILEOPT30         = -DBGL_TIMERS -I/bgl/BlueLight/ppcfloor/bglsys/include #ENDIF#
344 #CRAYTIMERS#PROFILEOPT30         = -DCRAY_TIMERS          #ENDIF#
345 #LINUXTIMERS#PROFILEOPT31       = -DTAU_LINUX_TIMERS    #ENDIF#
346 #ALPHATIMERS#PROFILEOPT31       = -DTAU_ALPHA_TIMERS    #ENDIF#
347 #CPUTIME#PROFILEOPT32           = -DCPU_TIME          #ENDIF#
348 #PAPIWALLCLOCK#PROFILEOPT33     = -DTAU_PAPI_WALLCLOCKTIME    #ENDIF#
349 #PAPIVIRTUAL#PROFILEOPT34       = -DTAU_PAPI_VIRTUAL    #ENDIF#
350 #SGICOUNTERS#PROFILEOPT35      = -DSGI_HW_COUNTERS     #ENDIF#
351 #EPILOG#PROFILEOPT36           = -DTAU_EPILOG -I$(EPILOGINCDIR) #ENDIF#
352 #VAMPIRTRACEINTS#TAU_VAMPIRTRACEOPTS = -DTAU_64BITTYPES_NEEDED -DHAVE_INTTYPES_H #ENDIF#
353 #VAMPIRTRACE#PROFILEOPT36              = -DTAU_VAMPIRTRACE -I$(VAMPIRTRACEDIR)/vtlib -I$(VAMPIRTRACEDIR)/include $(TAU_VAMPIRTRACEOPTS)#ENDIF#
354 #PROFILECALLPATH#PROFILEOPT36  = -DTAU_CALLPATH #ENDIF#
355 #PROFILEPHASE#PROFILEOPT36  = -DTAU_CALLPATH -DTAU_PROFILEPHASE#ENDIF#
356 #PYTHON#PROFILEOPT37  = -I$(PYTHON_INCDIR) #ENDIF#
357 #NOCOMM#PROFILEOPT38  = -DTAU_NOCOMM #ENDIF#
358 #MUSE#PROFILEOPT39  = -DTAU_MUSE #ENDIF#
359 #SETNODE0#PROFILEOPT40  = -DTAU_SETNODE0 #ENDIF#
360 #COMPENSATE#PROFILEOPT41  = -DTAU_COMPENSATE #ENDIF#
361 #MUSE_EVENT#PROFILEOPT42  = -DTAU_MUSE_EVENT #ENDIF#
362 #MUSE_MULTIPLE#PROFILEOPT43  = -DTAU_MUSE_MULTIPLE #ENDIF#
363 #DYNINST41##PROFILEOPT44  = -DTAU_DYNINST41BUGFIX #ENDIF#
364 # DyninstAPI v4.2.1 fixes the bug, so we don't need OPT44 anymore
365 #PROFILEMEMORY#PROFILEOPT45  = -DTAU_PROFILEMEMORY   #ENDIF#
366 PROFILEOPT46  = -DTAU_MPIGREQUEST   #ENDIF##MPIGREQUEST#
367 #MPIOREQUEST#PROFILEOPT47  = -DTAU_MPIOREQUEST   #ENDIF#
368 PROFILEOPT48  = -DTAU_MPIDATAREP   #ENDIF##MPIDATAREP#
369 PROFILEOPT49  = -DTAU_MPIERRHANDLER  #ENDIF##MPIERRHANDLER#
370 PROFILEOPT50  = -DTAU_CATAMOUNT  #ENDIF##CATAMOUNT#
371 #MPICONSTCHAR#PROFILEOPT51  = -DTAU_MPICONSTCHAR  #ENDIF#
372 PROFILEOPT52  = -DTAU_MPIATTRFUNCTION   #ENDIF##MPIATTR#
373 PROFILEOPT53  = -DTAU_MPITYPEEX   #ENDIF##MPITYPEEX#
374 PROFILEOPT54  = -DTAU_MPIADDERROR   #ENDIF##MPIADDERROR#
375 #MPINEEDSTATUSCONV#PROFILEOPT55  = -DTAU_MPI_NEEDS_STATUS   #ENDIF#
376
377 #DEPTHLIMIT#PROFILEOPT56      = -DTAU_DEPTH_LIMIT       #ENDIF#
378 #TAU_CHARM#PROFILEOPT57 = -DTAU_CHARM -I$(CHARMDIR)/include #ENDIF#
379 #PROFILEHEADROOM#PROFILEOPT58  = -DTAU_PROFILEHEADROOM   #ENDIF#
380 #JAVACPUTIME#PROFILEOPT59           = -DJAVA_CPU_TIME          #ENDIF#
381 PROFILEOPT60           = -DTAU_LARGEFILE -D_LARGEFILE64_SOURCE     #ENDIF##TAU_LARGEFILE#
382 #SHMEM#PROFILEOPT61           = -DTAU_SHMEM #ENDIF#
383 #KTAU#PROFILEOPT62  = -DTAUKTAU -DKTAU_USER_SRC_COMPILE -I$(KTAU_INCDIR) -I$(KTAU_INCUSERDIR) -DKTAU_INCUSERDIR=\"$(KTAU_INCUSERDIR)\" -DKTAU_KALLSYMS_PATH=\"$(KTAU_KALLSYMS_PATH)\" #ENDIF#
384 #KTAU_MERGE#PROFILEOPT63  = -DTAUKTAU_MERGE -DKTAU_USER_SRC_COMPILE -I$(KTAU_INCDIR) -DKTAU_INCUSERDIR=\"$(KTAU_INCUSERDIR)\" -DKTAU_KALLSYMS_PATH=\"$(KTAU_KALLSYMS_PATH)\" #ENDIF#
385 #FREEBSD#PROFILEOPT64  = -DTAU_FREEBSD #ENDIF#
386 #PROFILEPARAM#PROFILEOPT65  = -DTAU_PROFILEPARAM #ENDIF#
387 #IBMMPI#PROFILEOPT66  = -DTAU_IBM_MPI #ENDIF#
388 PROFILEOPT67  = -DTAU_WEAK_MPI_INIT   #ENDIF##WEAKMPIINIT#
389 #LAMPI#PROFILEOPT68 = -DTAU_LAMPI #ENDIF#
390 PROFILEOPT68 = -DMPICH_IGNORE_CXX_SEEK #ENDIF##MPICH_IGNORE_CXX_SEEK#
391 PROFILEOPT73 = -DTAU_MPICH2_MPI_IN_PLACE #ENDIF##MPICH2_MPI_INPLACE#
392
393
394 ############# RENCI Scalable Trace Lib Options #############
395 STFF_DIR=
396 SDDF_DIR=
397 #RENCI_STFF#PROFILEOPT69 = -DRENCI_STFF -I$(STFF_DIR)/include #ENDIF#
398 #RENCI_STFF#TAU_LINKER_OPT11 = -L$(STFF_DIR)/lib -lstff -L$(SDDF_DIR)/lib -lPablo $(TAU_MPI_LIB) #ENDIF#
399 #RENCI_STFF#RENCI_STFF_O = RenciSTFF.o    #ENDIF#
400
401 ############# KTAU (again) #############
402 #KTAU_SHCTR#PROFILEOPT70  = -DTAUKTAU_SHCTR -DKTAU_USER_SRC_COMPILE -I$(KTAU_INCDIR) -DKTAU_INCUSERDIR=\"$(KTAU_INCUSERDIR)\" -DKTAU_KALLSYMS_PATH=\"$(KTAU_KALLSYMS_PATH)\" #ENDIF#
403 #KTAU#TAU_LINKER_OPT12 = -L$(KTAU_LIB) -lktau #ENDIF#
404
405 #MIPS32LINUX#PROFILEOPT71 =  -D_ABIN32=2 -D_MIPS_SIM=_ABIN32 #ENDIF#
406
407 #BGL#PROFILEOPT72 = -DTAU_BGL -I/bgl/BlueLight/ppcfloor/bglsys/include #ENDIF#
408
409 #For F90 support for all platforms
410 FWRAPPER               = TauFMpi.o       
411 MPI2EXTENSIONS         = TauMpiExtensions.o       #ENDIF##MPI2#
412 #CRAYX1CC#MPI2EXTENSIONS               =        #ENDIF#
413
414 #SGICOUNTERS#LEXTRA            = -lperfex              #ENDIF#
415 #ALPHATIMERS#LEXTRA            = -lrt          #ENDIF#
416 #SOL2#PCL_EXTRA_LIBS = -lcpc #ENDIF#
417 #PCL#LEXTRA                    = -L$(PCLDIR)/lib -lpcl $(PCL_EXTRA_LIBS)      #ENDIF#
418 #PAPI#LEXTRA                   = $(PAPIDIR)/$(PAPISUBDIR)/libpapi.a #ENDIF#
419 #IA64PAPI#LEXTRA               = -L$(PAPIDIR)/$(PAPISUBDIR) -lpapi #ENDIF#
420 #X86_64PAPI#LEXTRA  = -L$(PAPIDIR)/$(PAPISUBDIR)/ -L$(PAPIDIR)/lib64/ -lpapi -lperfctr #ENDIF#
421 #PAPIPFM#LEXTRA        = -L$(PAPIDIR)/$(PAPISUBDIR) -lpfm -lpapi -lpfm #ENDIF#
422 #SOL2PAPI#LEXTRA               = $(PAPIDIR)/$(PAPISUBDIR)/libpapi.a -lcpc #ENDIF#
423 #IBMPAPI#LEXTRA  = $(PAPIDIR)/$(PAPISUBDIR)/libpapi.a -L/usr/lpp/pmtoolkit/lib -L/usr/pmapi/lib -lpmapi#ENDIF#
424 #PPC64PAPI#LEXTRA  = $(PAPIDIR)/$(PAPISUBDIR)/libpapi.a #ENDIF#
425 #BGLPAPI_RTS#LEXTRA  = $(PAPIDIR)/$(PAPISUBDIR)/libpapi.rts.a -L/bgl/BlueLight/ppcfloor/bglsys/lib -lbgl_perfctr.rts -lrts.rts -ldevices.rts #ENDIF#
426 #BGLPAPI#LEXTRA  = $(PAPIDIR)/$(PAPISUBDIR)/libpapi.a -L/bgl/BlueLight/ppcfloor/bglsys/lib -lbgl_perfctr.rts -lrts.rts -ldevices.rts #ENDIF#
427 #BGPPAPI#LEXTRA  = $(PAPIDIR)/$(PAPISUBDIR)/libpapi.a  -L/bgsys/drivers/ppcfloor/runtime/SPI -lSPI.cna #ENDIF#
428 #IBM64PAPI#LEXTRA = $(PAPIDIR)/$(PAPISUBDIR)/libpapi64.a -L/usr/lpp/pmtoolkit/lib  -L/usr/pmapi/lib -lpmapi #ENDIF#
429 #IBM64PAPILINUX#LEXTRA = $(PAPIDIR)/$(PAPISUBDIR)/libpapi.a #ENDIF#
430 #SGI64PAPI#LEXTRA  = -L$(PAPIDIR)/$(PAPISUBDIR) -lpapi64 #ENDIF#
431 #ALPHAPAPI#LEXTRA                      = $(PAPIDIR)/$(PAPISUBDIR)/libpapi.a /usr/lib/dcpi/dadd.a -lclu -lrt #ENDIF#
432
433
434
435 # By default make TAU_PAPI_RPATH null. Support it on a compiler by compiler basis.
436 #PAPI###TAU_PAPI_RPATH  = -rpath $(PAPIDIR)/$(PAPISUBDIR) #ENDIF#
437 #PAPI##TAU_PAPI_RPATH   =  #ENDIF#
438 #PPC64PAPI#TAU_PAPI_RPATH = #ENDIF#
439 #BGLPAPI#TAU_PAPI_RPATH = #ENDIF#
440 #BGPPAPI#TAU_PAPI_RPATH = #ENDIF#
441 #USE_INTELCXX#TAU_PAPI_RPATH    =  #ENDIF#
442 #CRAYX1CC#TAU_PAPI_RPATH = #ENDIF#
443 TAU_PAPI_RPATH  = -R$(PAPIDIR)/$(PAPISUBDIR) #ENDIF##PGI#
444 #GNU#TAU_PAPI_RPATH     = -Wl,-rpath $(PAPIDIR)/$(PAPISUBDIR) #ENDIF#
445 #USE_PATHCC#TAU_PAPI_RPATH      = #ENDIF#
446
447 # if the user has specified -cc=gcc -c++=g++ -fortran=intel, we shouldn't use -rpath
448 # because they are likely going to link with ifort
449 #INTEL32_FORTRAN#TAU_PAPI_RPATH =  #ENDIF#
450 #SOL2PAPI#TAU_PAPI_RPATH        = #ENDIF#
451 #IBMPAPI#TAU_PAPI_RPATH = #ENDIF#
452 #IBM64PAPI#TAU_PAPI_RPATH       = #ENDIF#
453 #PAPI#TAU_LINKER_OPT1 = $(TAU_PAPI_RPATH) #ENDIF#
454
455 #PTHREAD_AVAILABLE#LEXTRA1     = -lpthread             #ENDIF#
456 #TULIPTHREADS#LEXTRA1     = -L$(TULIPDIR)/Tuliplib  -ltulip            #ENDIF#
457 #SMARTS##include $(TAU_INC_DIR)/makefiles/GNUmakefile-$(HOSTTYPE)  #ENDIF#
458 #SMARTS#LEXTRA1     = $(LSMARTS)        #ENDIF#
459
460 TAU_GCCLIB      = -lgcc_s 
461 #INTEL32_ON_64#TAU_GCCLIB       = -lgcc #ENDIF#
462 #FREEBSD#TAU_GCCLIB     = -lgcc #ENDIF#
463 #BGL#TAU_GCCLIB = -lgcc #ENDIF#
464 #GNU#TAU_FORTRANLIBS       = -L$(TAUGCCLIBDIR) $(TAUGCCLIBOPTS) -lstdc++ $(TAU_GCCLIB) #ENDIF#
465 #OPEN64ORC_FORTRAN#TAU_FORTRANLIBS       = -lfortran -lffio #ENDIF#
466 #PATHSCALE_FORTRAN#TAU_FORTRANLIBS       = -lpathfstart -lpathfortran #ENDIF#
467 #SC_PATHSCALE#TAU_FORTRANLIBS       = -lpathfstart -lpathfortran #ENDIF#
468 #NAGWARE_FORTRAN#TAU_FORTRANLIBS                = $(EXTRADIR)/lib/quickfit.o -L$(EXTRADIR)/lib -lf96 #ENDIF#
469 #G95_FORTRAN#TAU_FORTRANLIBS           = -L$(EXTRADIR) -lf95 #ENDIF#
470 #GNU_FORTRAN#TAU_FORTRANLIBS           = -lg2c       #ENDIF#
471 #GNU_GFORTRAN#TAU_FORTRANLIBS          = -lgfortran -lgfortranbegin       #ENDIF#
472 #SC_GFORTRAN#TAU_FORTRANLIBS           = -lgfortran -lgfortranbegin       #ENDIF#
473 #SGI_FORTRAN#TAU_FORTRANLIBS           = -lfortran -lftn       #ENDIF#
474 #USE_IBMXLC#TAU_IBM_FORTRANLIBS        =  -bh:4 -bpT:0x10000000 -bpD:0x20000000 /lib/crt0.o -lxlf90 -lm -lc #ENDIF#
475 #GNU#TAU_IBM_FORTRANLIBS               =  -Wl,-bh:4 -Wl,-bpT:0x10000000 -Wl,-bpD:0x20000000 /lib/crt0.o -lxlf90 -lm -lc #ENDIF#
476 #KAI#TAU_IBM_FORTRANLIBS               =  --backend -bh:4 --backend -bpT:0x10000000 --backend -bpD:0x20000000 /lib/crt0.o -lxlf90 -lm -lc #ENDIF#
477 #IBM_FORTRAN#TAU_FORTRANLIBS = $(TAU_IBM_FORTRANLIBS) #ENDIF#
478
479 #USE_IBMXLC#TAU_IBM64_FORTRANLIBS      =  -bh:4 -bpT:0x10000000 -bpD:0x20000000 -b64 /lib/crt0_64.o -lxlf90 -lm -lc #ENDIF#
480 #GNU#TAU_IBM64_FORTRANLIBS      =  -Wl,-bh:4 -Wl,-bpT:0x10000000 -Wl,-bpD:0x20000000 -Wl,-b64 /lib/crt0_64.o -lxlf90 -lm -lc #ENDIF#
481 #KAI#TAU_IBM64_FORTRANLIBS      =  --backend -bh:4 --backend -bpT:0x10000000 --backend -bpD:0x20000000 --backend -b64 /lib/crt0_64.o -lxlf90 -lm -lc #ENDIF#
482 #IBM64_FORTRAN#TAU_FORTRANLIBS = $(TAU_IBM64_FORTRANLIBS) #ENDIF#
483 #IBM64_FORTRAN#TAU_FORLIBDIR=lib64 #ENDIF#
484 #IBM_FORTRAN#TAU_FORLIBDIR=lib #ENDIF#
485 #BGL#TAU_FORLIBDIR=blrts_dev_lib #ENDIF#
486 #BGP#TAU_FORLIBDIR=bglib #ENDIF#
487 #PPC64#TAU_FORTRANLIBS = -L$(EXTRADIR)/$(TAU_FORLIBDIR) -lxlf90 -lxlfmath -lxl #ENDIF#
488 #BGL#TAU_FORTRANLIBS = -L$(EXTRADIR)/$(TAU_FORLIBDIR) -L$(EXTRADIR)/blrts_lib -lxlf90 -lxlfmath -lxl #ENDIF#
489
490 #BGP#TAU_BGL_OMP_SERIAL= -lxlomp_ser #ENDIF#
491 #OPENMP#TAU_BGL_OMP_SERIAL= #ENDIF#
492 #BGP#TAU_OMP_SERIAL=$(TAU_BGL_OMP_SERIAL) #ENDIF#
493 #BGP#TAU_FORTRANLIBS = -L$(EXTRADIR)/$(TAU_FORLIBDIR) -lxlf90 -lxlfmath $(TAU_OMP_SERIAL) #ENDIF#
494
495 #IBMXLFAPPLE#TAU_FORTRANLIBS           = -L$(EXTRADIR)/lib -lxlf90 -lxlfmath -lxl      #ENDIF#
496
497 #CRAY_FORTRAN#TAU_FORTRANLIBS          =        #ENDIF#
498 #CRAY_X1_FORTRAN#TAU_FORTRANLIBS               =        #ENDIF#
499 TAU_FORTRANLIBS        = $(EXTRADIR)/lib/f90main.o -lpgf90 -lpgf90rtl -lpgf90_rpm1 -lpgf902 -lpgftnrtl -lrt #ENDIF##PGI_FORTRAN#
500 #HP_FORTRAN#TAU_FORTRANLIBS            = -L$(EXTRADIR)/lib/pa2.0 -lF90 -lcl        #ENDIF#
501 #INTEL_FORTRAN#TAU_FORTRANLIBS         = -lcprts -lPEPCF90   #ENDIF#
502 #INTEL32_FORTRAN#TAU_FORTRANLIBS       = -lcprts -lCEPCF90 -lF90 #ENDIF#
503 #INTELIFORT#TAU_FORTRANLIBS       = -lcprts #ENDIF#
504 #INTEL81FIX#TAU_FORTRANLIBS       = -L$(TAUGCCLIBDIR) $(TAUGCCLIBOPTS) -lstdc++ $(TAU_GCCLIB) -lcxa -lunwind -L$(EXTRADIR)/lib -lifcore $(EXTRADIR)/lib/for_main.o #ENDIF#
505 #INTEL10FIX#TAU_FORTRANLIBS       = -L$(TAUGCCLIBDIR) $(TAUGCCLIBOPTS) -lstdc++ $(TAU_GCCLIB) -L$(EXTRADIR)/lib -lifcore $(EXTRADIR)/lib/for_main.o #ENDIF#
506 #INTELCXXLIBICC#TAU_FORTRANLIBS       = -lcprts -L$(EXTRADIR)/lib -lifcore $(EXTRADIR)/lib/for_main.o #ENDIF#
507 #PGI1.7#LEXTRA = -lstd -lstrm#ENDIF#
508 #PGI1.7#TAUHELPER = $(TAUROOT)/src/Profile/TauPGIHelper.cpp #ENDIF#
509 # LINKER OPTIONS
510 TAU_LINKER_OPT2 = $(LEXTRA)
511
512
513 #ACC#TAUHELPER = -AA #ENDIF#
514 #FUJITSU_FORTRAN#TAU_FORTRANLIBS               = $(EXTRADIR)/lib/fj90rt0.o -L$(EXTRADIR)/lib -lfj9i6 -lfj9f6 -lfj9e6        #ENDIF#
515 #FUJITSU_SOLARIS#TAU_FORTRANLIBS               = $(EXTRADIR)/lib/fj90rt0.o -L$(EXTRADIR)/lib -lfj90l -lfj90f #ENDIF#
516 #SUN_FORTRAN#TAU_FORTRANLIBS           = -lfui -lfsumai -lfprodai -lfminlai -lfmaxlai -lfminvai -lfmaxvai -lfsu -lsunmath        #ENDIF#
517 #SUN_FORTRAN#TAU_FORTRANLIBS_SUN_OPTERON   = -lfsu -lsunmath #ENDIF#
518 #SUN_FORTRAN#TAU_FORTRANLIBS_SUNCC   = -lfsu #ENDIF#
519 #SUN386I#TAU_FORTRANLIBS               = $(TAU_FORTRANLIBS_SUN_OPTERON) #ENDIF#
520 #SUNX86_64#TAU_FORTRANLIBS             = $(TAU_FORTRANLIBS_SUN_OPTERON) #ENDIF#
521 #SUNCC#TAU_FORTRANLIBS         = $(TAU_FORTRANLIBS_SUNCC) #ENDIF#
522 #SOL2#EXTRALIBS = -lsocket -lnsl      #ENDIF#
523 #SUN386I#EXTRALIBS = -lsocket -lnsl -lrt     #ENDIF#
524 #SUNX86_64#EXTRALIBS = -lsocket -lnsl -lrt     #ENDIF#
525 #COMPAQ_FORTRAN#TAU_FORTRANLIBS =  $(EXTRADIR)/lib/cmplrs/fort90/for_main.o -L$(EXTRADIR)/lib -L$(EXTRADIR)/lib/cmplrs/fort90 -L$(EXTRADIR)/lib/cmplrs/fort90 -lUfor -lfor -lFutil -lm -lmld -lexc -lc #ENDIF#
526 #ABSOFT_FORTRAN#TAU_FORTRANLIBS =  -L$(EXTRADIR)/lib -lfio -lf90math -lU77 -lf77math -lfio #ENDIF#
527 #LAHEY_FORTRAN#TAU_FORTRANLIBS         = $(EXTRADIR)/lib/fj90rt0.o -L$(EXTRADIR)/lib -lfj9i6 -lfj9f6 -lfj9e6 -lfccx86_6a #ENDIF#
528 #LAHEY64_FORTRAN#TAU_FORTRANLIBS             = $(EXTRADIR)/lib64/fj90rt0.o -L$(EXTRADIR)/lib64  -lfj90f -lfj90i -lelf #ENDIF#
529 #HITACHI_FORTRAN#TAU_FORTRANLIBS =  -lf90 -lhf90math #ENDIF#
530 #NEC_FORTRAN#TAU_FORTRANLIBS =  -f90lib #ENDIF#
531 #COMPAQ_GUIDEF90#TAU_FORTRANLIBS = $(EXTRADIR)/lib/cmplrs/fort90/for_main.o -lfor #ENDIF#
532
533
534 #HITACHI#TAU_HITACHI_EXTRA      =  -L/usr/local/lib -llrz32 #ENDIF#
535
536 ## To use the standard F90 linker instead of TAU_LINKER + TAU_FORTRANLIBS, add
537 #GNU#TAU_CXXLIBS                = -L$(TAUGCCLIBDIR)  $(TAUGCCLIBOPTS) -lstdc++ $(TAU_GCCLIB) #ENDIF#
538 #GNU#TAU_GNUCXXLIBS             = -L$(TAUGCCLIBDIR) -lstdc++ $(TAU_GCCLIB) #ENDIF#
539 #OPEN64ORC#TAU_CXXLIBS          = -lstdc++ #ENDIF#
540 #PATHSCALE_FORTRAN#TAU_CXXLIBS          = -lstdc++ #ENDIF#
541 #LAHEY_FORTRAN#TAU_CXXLIBS              = $(TAU_GNUCXXLIBS) /usr/lib/libc.a #ENDIF#
542 #NAGWARE_FORTRAN#TAU_CXXLIBS            = $(TAU_GNUCXXLIBS) /usr/lib/libc.a #ENDIF#
543 TAU_CXXLIBS             = -lstd -lC       #ENDIF##PGI#
544 #CRAYCNL#TAU_CXXLIBS            = -L$(EXTRADIR)/lib -lstd -lC -lpgc     #ENDIF#
545 #CRAYX1CC#TAU_CXXLIBS           = -L/opt/ctl/CC/CC/lib -lC       #ENDIF#
546
547 TAU_SGI_INIT = /usr/lib32/c++init.o 
548 #ENABLE64BIT#TAU_SGI_INIT  = /usr/lib64/c++init.o #ENDIF#
549 #ENABLEN32BIT#TAU_SGI_INIT = /usr/lib32/c++init.o #ENDIF#
550 #ENABLE32BIT#TAU_SGI_INIT  = /usr/lib/c++init.o   #ENDIF#
551
552 #SGICC#TAU_CXXLIBS              = $(TAU_SGI_INIT) -lC #ENDIF#
553 #APPLECXX#TAU_CXXLIBS           = -lstd -lC #ENDIF#
554 #SOL2#TAU_CXXLIBS               = -lCstd -lCrun #ENDIF#
555 #SOL2CC#TAU_CXXLIBS_SUN_OPTERON   = -lCstd -lCrun -lm #ENDIF#
556 #SUNCC#TAU_CXXLIBS_SUNCC   = -lCstd -lCrun #ENDIF#
557 #SUN386I#TAU_CXXLIBS   = $(TAU_CXXLIBS_SUN_OPTERON) #ENDIF#
558 #SUNCC#TAU_CXXLIBS   = $(TAU_CXXLIBS_SUNCC) #ENDIF#
559 #SUNX86_64#TAU_CXXLIBS   = $(TAU_CXXLIBS_SUN_OPTERON) #ENDIF#
560 #FUJITSU_SOLARIS#TAU_CXXLIBS               = -lstd -lstdm #ENDIF#
561 #PPC64#TAU_XLCLIBS         = -L$(EXTRADIRCXX)/$(TAU_FORLIBDIR) -libmc++ -lstdc++       #ENDIF#
562 #IBMXLCAPPLE#TAU_FORLIBDIR =lib       #ENDIF#
563 #IBMXLCAPPLE#TAU_XLCLIBS         = -L$(EXTRADIRCXX)/$(TAU_FORLIBDIR) -libmc++ -lstdc++       #ENDIF#
564 #BGL#TAU_XLCLIBS         = -L$(EXTRADIRCXX)/blrts_dev_lib -L$(EXTRADIRCXX)/blrts_lib -libmc++ -L/bgl/BlueLight/ppcfloor/blrts-gnu/powerpc-bgl-blrts-gnu/lib -lstdc++      #ENDIF#
565 #BGP#TAU_XLCLIBS         = -L$(EXTRADIRCXX)/bglib -libmc++ -lstdc++      #ENDIF#
566 #SP1#TAU_XLCLIBS         = -lC            #ENDIF#
567 #USE_IBMXLC#TAU_CXXLIBS         = $(TAU_XLCLIBS) #ENDIF#
568 #USE_DECCXX#TAU_CXXLIBS         = -lcxxstd -lcxx #ENDIF#
569 #USE_INTELCXX#TAU_CXXLIBS_INTEL        = -lcprts -lPEPCF90 #ENDIF#
570 #USE_INTELCXX#TAU_CXXLIBS_INTEL        = -lcprts #ENDIF#
571 #INTELIFORT#TAU_CXXLIBS_INTEL        = -lcprts #ENDIF#
572 #INTEL81FIX#TAU_CXXLIBS_INTEL        = -L$(TAUGCCLIBDIR) $(TAUGCCLIBOPTS) -lstdc++ $(TAU_GCCLIB) -lcxa -lunwind#ENDIF#
573 #INTEL10FIX#TAU_CXXLIBS_INTEL        = -L$(TAUGCCLIBDIR) $(TAUGCCLIBOPTS) -lstdc++ $(TAU_GCCLIB) #ENDIF#
574 #INTELCXXLIBICC#TAU_CXXLIBS_INTEL        = -lcprts #ENDIF#
575 #USE_INTELCXX#TAU_CXXLIBS        = $(TAU_CXXLIBS_INTEL) #ENDIF#
576 #APPLECXX#TAU_CXXLIBS           = -lstdc++ -L$(TAUGCCLIBDIR)  $(TAUGCCLIBOPTS) -lgcc_s.1 -lSystemStubs #ENDIF#
577
578 # EXTERNAL PACKAGES: VAMPIRTRACE
579 #VAMPIRTRACE#TAU_LINKER_OPT3    =  -L$(VAMPIRTRACEDIR)/lib -L$(VAMPIRTRACEDIR)/vtlib -lvt -lotf -lz $(TAU_HITACHI_EXTRA) #ENDIF#
580 #VAMPIRTRACEMPI#TAU_LINKER_OPT3         =  -L$(VAMPIRTRACEDIR)/lib -L$(VAMPIRTRACEDIR)/vtlib -lvt.mpi -lotf -lz  $(TAU_HITACHI_EXTRA) #ENDIF#
581 #VAMPIRTRACEOMPI#TAU_LINKER_OPT3        =  -L$(VAMPIRTRACEDIR)/lib -L$(VAMPIRTRACEDIR)/vtlib -lvt.ompi -lotf -lz $(TAU_HITACHI_EXTRA) #ENDIF#
582 #VAMPIRTRACEOMP#TAU_LINKER_OPT3         =  -L$(VAMPIRTRACEDIR)/lib -L$(VAMPIRTRACEDIR)/vtlib -lvt.omp  -lotf -lz $(TAU_HITACHI_EXTRA) #ENDIF#
583
584 # EXTERNAL PACKAGES: EPILOG
585 #EPILOG#TAU_LINKER_OPT3         =  -L$(EPILOGLIBDIR) -lelg $(EPILOGEXTRALINKCMD) $(TAU_HITACHI_EXTRA) #ENDIF#
586 #EPILOGMPI#TAU_LINKER_OPT3      =  -L$(EPILOGLIBDIR) -lelg.mpi $(EPILOGEXTRALINKCMD) $(TAU_HITACHI_EXTRA) #ENDIF#
587 #EPILOGOMPI#TAU_LINKER_OPT3     =  -L$(EPILOGLIBDIR) -lelg.ompi $(EPILOGEXTRALINKCMD) $(TAU_HITACHI_EXTRA) #ENDIF#
588 #EPILOGOMP#TAU_LINKER_OPT3      =  -L$(EPILOGLIBDIR) -lelg.omp $(EPILOGEXTRALINKCMD) $(TAU_HITACHI_EXTRA) #ENDIF#
589
590 # When using shared, we don't want -lelg.mpi or -lvt.mpi showing up
591 #FORCESHARED#TAU_LINKER_OPT3=#ENDIF#
592
593 TAU_LINKER_OPT4 = $(LEXTRA1)
594 #HITACHI_OPENMP#TAU_LINKER_OPT4 = -lcompas -lpthreads -lc_r #ENDIF#
595 #OPENMP#TAU_LINKER_OPT5 = -mp #ENDIF#
596 #SOL2CC_OPENMP#TAU_LINKER_OPT5 = -xopenmp #ENDIF#
597 #SUNCC_OPENMP#TAU_LINKER_OPT5 = -xopenmp=parallel #ENDIF#
598 #GNU#TAU_LINKER_OPT5 = #ENDIF#
599 #COMPAQCXX_OPENMP#TAU_LINKER_OPT5 = -omp #ENDIF#
600 #IBMXLC_OPENMP#TAU_LINKER_OPT5 = -qsmp=omp #ENDIF#
601 #OPEN64_OPENMP#TAU_LINKER_OPT5 = -mp #ENDIF#
602 #GUIDE#TAU_LINKER_OPT5 = #ENDIF#
603 #PGIOPENMP#TAU_LINKER_OPT5 = -mp #ENDIF#
604 #INTELOPENMP#TAU_LINKER_OPT5 = -openmp #ENDIF#
605
606 # MALLINFO needs -lmalloc on sgi, sun 
607 #SGIMP#TAU_LINKER_OPT6 = -lmalloc #ENDIF#
608 #SOL2#TAU_LINKER_OPT6 = #ENDIF#
609 #SUN386I#TAU_LINKER_OPT6 = -lmalloc #ENDIF#
610 #SUNX86_64#TAU_LINKER_OPT6 = -lmalloc #ENDIF#
611
612 # We need -lCio with SGI CC 7.4+
613 #SGICC#TAU_LINKER_OPT7 = -lCio #ENDIF#
614
615 # charm
616 #TAU_CHARM#TAU_LINKER_OPT8 = -lconv-core #ENDIF#
617
618 # extra libs
619 #SUN386I#TAU_LINKER_OPT9 = $(EXTRALIBS) #ENDIF#
620 #SUNX86_64#TAU_LINKER_OPT9 = $(EXTRALIBS) #ENDIF#
621 #SOL2#TAU_LINKER_OPT9 = $(ExTRALIBS)    #ENDIF#
622
623 #BGL#TAU_LINKER_OPT10 = -L/bgl/BlueLight/ppcfloor/bglsys/lib -lrts.rts #ENDIF#
624
625 #USE_IBMXLC#TAU_IBM_PYTHON_SHFLAG = -Wl,-bI:$(PYTHON_LIBDIR)/config/python.exp -Wl,-einitpytau#ENDIF#
626 #GNU#TAU_IBM_PYTHON_SHFLAG = -Wl,-bI:$(PYTHON_LIBDIR)/config/python.exp -Wl,-einitpytau#ENDIF#
627 #KAI#TAU_IBM_PYTHON_SHFLAG = --backend -Wl,-bI:$(PYTHON_LIBDIR)/config/python.exp --backend -Wl,-einitpytau#ENDIF#
628 #ACC#TAU_HPUX_PYTHON_SHFLAG = -lstd_v2 -lCsup_v2 -lm -lcl -lc #ENDIF#
629
630 #USE_IBMXLC#TAU_IBM_LD_FLAGS = -binitfini:poe_remote_main #ENDIF#
631 #GNU#TAU_IBM_LD_FLAGS = -Wl,-binitfini:poe_remote_main #ENDIF#
632 #KAI#TAU_IBM_LD_FLAGS = --backend -binitfini:poe_remote_main #ENDIF#
633
634
635 #PYTHON#TAU_IBM_SHFLAGS = $(TAU_IBM_PYTHON_SHFLAG) #ENDIF#
636 #PYTHON#TAU_HPUX_SHFLAGS = $(TAU_HPUX_PYTHON_SHFLAG) #ENDIF#
637 #SP1#TAU_EXTRA_LIBRARY_FLAGS = $(TAU_IBM_SHFLAGS)  #ENDIF#
638 #SOL2#TAU_EXTRA_LIBRARY_FLAGS = #ENDIF#
639 #SGIMP#TAU_EXTRA_LIBRARY_FLAGS = -lmalloc  #ENDIF#
640 #HP#TAU_EXTRA_LIBRARY_FLAGS  = $(TAU_HPUX_SHFLAGS) #ENDIF#
641
642 TAU_MPI_WRAPPER_LIB= -L$(TAU_LIB_DIR) -lTauMpi$(TAU_CONFIG) #ENDIF##MPI#
643 #EPILOGMPI#TAU_MPI_WRAPPER_LIB= #ENDIF#
644 #EPILOGOMPI#TAU_MPI_WRAPPER_LIB= #ENDIF#
645
646 ##############################################
647 # Build TAU_LINKER_SHOPTS
648 #GNU#TAU_IBM_LINKER_SHOPTS=-Wl,-brtl -Wl,-bexpall #ENDIF#
649 #USE_IBMXLC#TAU_IBM_LINKER_SHOPTS= -brtl -bexpall #ENDIF#
650 #KAI#TAU_IBM_LINKER_SHOPTS= --backend -brtl #ENDIF#
651 #SP1#TAU_LINKER_SHOPTS= $(TAU_IBM_LINKER_SHOPTS) #ENDIF#
652
653 ##############################################
654 # MPI _r suffix check (as in libmpi_r)
655 #MPI_R_SUFFIX#TAU_MPI_R_SUFFIX=_r    #ENDIF#
656
657 ##############################################
658 # Flags to build a shared object: TAU_SHFLAGS
659 #GNU#AR_SHFLAGS                 = -shared       #ENDIF#
660 AR_SHFLAGS                 = -shared       #ENDIF##PGI#
661 #SGICC#AR_SHFLAGS               = -shared       #ENDIF#
662 #APPLECXX#AR_SHFLAGS = -dynamiclib -flat_namespace -undefined suppress #ENDIF#
663 #SOL2#AR_SHFLAGS                = -G            #ENDIF#
664 #SUN386I#AR_SHFLAGS                = -G            #ENDIF#
665 #SUNX86_64#AR_SHFLAGS                = -G            #ENDIF#
666 #USE_IBMXLC#AR_SHFLAGS          = -G                #ENDIF#
667 #USE_DECCXX#AR_SHFLAGS          = -shared               #ENDIF#
668 #USE_INTELCXX#AR_SHFLAGS        = -shared               #ENDIF#
669 #ACC#AR_SHFLAGS                 = -b            #ENDIF#
670 TAU_SHFLAGS = $(AR_SHFLAGS) -o
671
672 ############# RANLIB Options #############
673 TAU_RANLIB = echo "Built" 
674 #APPLECXX#TAU_RANLIB      = ranlib  #ENDIF#
675 #IBMXLCAPPLE#TAU_RANLIB      = ranlib  #ENDIF#
676
677 ##############################################
678 TAU_AR                 = ar             #ENDIF#
679 #SP1#TAU_AR            = ar -X32        #ENDIF#
680 #IBM64#TAU_AR          = ar -X64        #ENDIF#
681 #PPC64#TAU_AR          = ar             #ENDIF#
682 #IBM64LINUX#TAU_AR     = ar             #ENDIF#
683
684
685 ##############################################
686 # PDT OPTIONS
687 # You can specify -pdtcompdir=intel -pdtarchdir=x86_64
688 # If nothing is specified, PDTARCHDIR uses TAU_ARCH
689 PDTARCHDIRORIG=$(TAU_ARCH)
690 PDTARCHITECTURE=x86_64
691 PDTARCHDIRFINAL=$(PDTARCHDIRORIG)
692 #PDTARCHITECTURE#PDTARCHDIRFINAL=$(PDTARCHITECTURE)#ENDIF#
693 PDTARCHDIR=$(PDTARCHDIRFINAL)
694 #PDTARCH#PDTARCHDIR=$(PDTARCHDIRFINAL)/$(PDTCOMPDIR)#ENDIF#
695
696
697 ##############################################
698
699 PROFILEOPTS = $(PROFILEOPT1)  $(PROFILEOPT2)  $(PROFILEOPT3)  $(PROFILEOPT4)  \
700               $(PROFILEOPT5)  $(PROFILEOPT6)  $(PROFILEOPT7)  $(PROFILEOPT8)  \
701               $(PROFILEOPT9)  $(PROFILEOPT10) $(PROFILEOPT11) $(PROFILEOPT12) \
702               $(PROFILEOPT13) $(PROFILEOPT14) $(PROFILEOPT15) $(PROFILEOPT16) \
703               $(PROFILEOPT17) $(PROFILEOPT18) $(PROFILEOPT19) $(PROFILEOPT20) \
704               $(PROFILEOPT21) $(PROFILEOPT22) $(PROFILEOPT23) $(PROFILEOPT24) \
705               $(PROFILEOPT25) $(PROFILEOPT26) $(PROFILEOPT27) $(PROFILEOPT28) \
706               $(PROFILEOPT29) $(PROFILEOPT30) $(PROFILEOPT31) $(PROFILEOPT32) \
707               $(PROFILEOPT33) $(PROFILEOPT34) $(PROFILEOPT35) $(PROFILEOPT36) \
708               $(PROFILEOPT37) $(PROFILEOPT38) $(PROFILEOPT39) $(PROFILEOPT40) \
709               $(PROFILEOPT41) $(PROFILEOPT42) $(PROFILEOPT43) $(PROFILEOPT44) \
710               $(PROFILEOPT45) $(PROFILEOPT46) $(PROFILEOPT47) $(PROFILEOPT48) \
711               $(PROFILEOPT49) $(PROFILEOPT50) $(PROFILEOPT51) $(PROFILEOPT52) \
712               $(PROFILEOPT53) $(PROFILEOPT54) $(PROFILEOPT55) $(PROFILEOPT56) \
713               $(PROFILEOPT57) $(PROFILEOPT58) $(PROFILEOPT59) $(PROFILEOPT60) \
714               $(PROFILEOPT61) $(PROFILEOPT62) $(PROFILEOPT63) $(PROFILEOPT64) \
715               $(PROFILEOPT65) $(PROFILEOPT66) $(PROFILEOPT67) $(PROFILEOPT68) \
716               $(PROFILEOPT69) $(PROFILEOPT70) $(PROFILEOPT71) $(PROFILEOPT72) \
717               $(PROFILEOPT73) $(PROFILEOPT74) $(PROFILEOPT75) $(PROFILEOPT76) \
718               $(TRACEOPT)
719
720 ##############################################
721
722 TAU_LINKER_OPTS = $(TAU_LINKER_OPT1) $(TAU_LINKER_OPT2) $(TAU_LINKER_OPT3) \
723                   $(TAU_LINKER_OPT4) $(TAU_LINKER_OPT5) $(TAU_LINKER_OPT6) \
724                   $(TAU_LINKER_OPT7) $(TAU_LINKER_OPT8) $(TAU_LINKER_OPT9) \
725                   $(TAU_LINKER_OPT10) $(TAU_LINKER_OPT11) $(TAU_LINKER_OPT12)
726
727 ##############################################
728
729 ############# TAU Fortran ####################
730 TAU_LINKER=$(TAU_CXX)
731 #INTEL_FORTRAN##TAU_LINKER=$(TAU_F90) #ENDIF#
732 #INTEL32_FORTRAN##TAU_LINKER=$(TAU_F90) #ENDIF#
733 # Intel efc compiler acts as a linker - NO. Let C++ be the linker. 
734
735 ##############################################
736 ############# TAU Options ####################
737 TAUDEFS         = $(PROFILEOPTS) 
738
739 TAUINC          = -I$(TAU_INC_DIR)
740
741 TAULIBS         = $(TAUHELPER) -L$(TAU_LIB_DIR) -ltau$(TAU_CONFIG)  $(TAU_LINKER_OPTS)
742
743 TAUMPILIBS      = $(TAU_MPI_LIB)
744
745 TAUMPIFLIBS     = $(TAU_MPI_FLIB)
746
747 ### ACL S/W requirement
748 TAU_DEFS        = $(TAUDEFS)
749
750 TAU_INCLUDE     = -I$(TAU_INC_DIR)
751 #PERFLIB#TAU_INCLUDE = -I$(PERFINCDIR) #ENDIF#
752 #PERFLIB#TAU_DEFS = #ENDIF#
753 #PERFLIB#TAU_COMPILER_EXTRA_OPTIONS=-optTau=-p #ENDIF#
754
755 TAU_INCLUDE_MEMORY = -I$(TAU_INC_DIR)/Memory
756 #IBMXLCAPPLE#TAU_INCLUDE_MEMORY = -I$(TAU_INC_DIR)/MemoryWrapper #ENDIF#
757 #APPLECXX#TAU_INCLUDE_MEMORY = -I$(TAU_INC_DIR)/MemoryWrapper #ENDIF#
758
759 TAU_LIBS        = $(TAUHELPER) -L$(TAU_LIB_DIR) -ltau$(TAU_CONFIG)   $(TAU_LINKER_OPTS) 
760 #PERFLIB#TAU_LIBS = #ENDIF#
761
762 TAU_SHLIBS      = $(TAUHELPER) -L$(TAU_LIB_DIR) -lTAUsh$(TAU_CONFIG) $(TAU_LINKER_OPTS) $(TAU_LINKER_SHOPTS) $(TAU_MPI_LIB)
763 #PERFLIB#TAU_SHLIBS = #ENDIF#
764 TAU_EXLIBS      = $(TAUHELPER) -L$(TAU_LIB_DIR) -lTAU $(TAU_LINKER_OPTS) $(TAU_LINKER_SHOPTS) $(TAU_MPI_LIB)
765
766 TAU_SHLIBS_NOSHOPTS = $(TAUHELPER) -L$(TAU_LIB_DIR) -lTAUsh$(TAU_CONFIG) $(TAU_LINKER_OPTS)
767
768 TAU_DISABLE     = $(TAUHELPER) -L$(TAU_LIB_DIR) -lTauDisable
769
770 TAU_MPI_INCLUDE = $(TAU_MPI_INC)
771
772 TAU_MPI_LIBS    = $(TAU_MPI_LIB)
773
774 TAU_MPI_FLIBS   = $(TAU_MPI_FLIB)
775
776 ## TAU TRACE INPUT LIBRARY (can build a trace converter using TAU TIL)
777 TAU_TRACE_INPUT_LIB = -L$(TAU_LIB_DIR) -lTAU_traceinput$(TAU_CONFIG)
778
779 ## Don't include -lpthread or -lsmarts. Let app. do that. 
780 #############################################
781 ## IBM SPECIFIC CHANGES TO TAU_MPI_LIBS
782 #SP1#TAU_MPI_LDFLAGS  = $(TAU_IBM_LD_FLAGS) #ENDIF#
783 TAU_LDFLAGS  = $(TAU_MPI_LDFLAGS) #ENDIF##MPI#
784 #SP1#TAU_IBM_MPI_LIBS    = $(TAU_MPI_LIB)  -L$(TAU_MPILIB_DIR)/ip  -lvtd$(TAU_MPI_R_SUFFIX) #ENDIF#
785 #SP1#TAU_IBM_FMPI_LIBS    = $(TAU_MPI_FLIB)  -L$(TAU_MPILIB_DIR)/ip  -lvtd$(TAU_MPI_R_SUFFIX) #ENDIF#
786 #SP1#TAU_MPI_LIBS_FLAGS= $(TAU_IBM_MPI_LIBS) #ENDIF#
787 #SP1#TAU_MPI_FLIBS_FLAGS   = $(TAU_IBM_MPI_FLIBS) #ENDIF#
788 TAU_MPI_LIBS_FLAGS = $(TAU_MPI_LIB) #ENDIF##MPI#
789 TAU_MPI_FLIBS_FLAGS  = $(TAU_MPI_FLIB) #ENDIF##MPI#
790 TAU_MPI_LIBS = $(TAU_MPI_LIBS_FLAGS) #ENDIF##MPI#
791 TAU_MPI_FLIBS  = $(TAU_MPI_FLIBS_FLAGS) #ENDIF##MPI#
792
793 #SP1#TAUMPILIBS      = $(TAU_MPI_LIBS)  #ENDIF#
794 #SP1#TAUMPIFLIBS     = $(TAU_MPI_FLIBS) #ENDIF#
795 #############################################
796 #SHMEM#TAU_SHMEM_OBJS                = TauShmemCray.o     #ENDIF#
797 #SP1#TAU_SHMEM_OBJS                  = TauShmemTurbo.o    #ENDIF#
798 #GPSHMEM#TAU_SHMEM_OBJS              = TauShmemGpshmem.o  #ENDIF#
799
800 TAU_SHMEM_INCLUDE       = $(TAU_SHMEM_INC)
801
802 TAU_SHMEM_LIBS  = -L$(TAU_PREFIX_INSTALL_DIR)/$(CONFIG_ARCH)/ -lTauShmem$(TAU_CONFIG) $(TAU_SHMEM_LIB)
803 #############################################
804 # TAU COMPILER SHELL SCRIPT OPTIONS
805 TAUCOMPILEROPTS=  -optPdtDir="$(PDTDIR)/${PDTARCHDIR}"\
806         -optPdtCOpts="$(TAU_INCLUDE) $(TAU_DEFS) $(TAU_MPI_INCLUDE)"\
807         -optPdtCxxOpts="$(TAU_INCLUDE) $(TAU_DEFS) $(TAU_MPI_INCLUDE)"\
808         -optTauInstr="$(TAU_BIN_DIR)/tau_instrumentor" \
809         -optNoMpi \
810         -optOpariDir="$(OPARIDIR)" -optOpariTool="$(TAU_OPARI_TOOL)" \
811         -optTauCC="$(TAU_CC)" \
812         -optTauIncludes="$(TAU_INCLUDE) $(TAU_MPI_INCLUDE)" \
813         -optTauDefs="$(TAU_DEFS)" \
814         -optTauCompile="$(TAU_INCLUDE) $(TAU_MPI_INCLUDE) $(TAU_DEFS) "\
815         -optLinking="$(TAU_MPI_FLIBS) $(TAU_LIBS) $(TAU_LDFLAGS) $(TAU_CXXLIBS)"\
816         -optSharedLinking="$(TAU_MPI_FLIBS) $(TAU_EXLIBS) $(TAU_LDFLAGS) $(TAU_CXXLIBS)"\
817         $(TAU_COMPILER_EXTRA_OPTIONS) \
818         -optIncludeMemory="$(TAU_INCLUDE_MEMORY)"
819 #############################################
820
821 TAU_SHAREDLIBS=$(TAUHELPER) -L$(TAU_LIB_DIR) -lTAU $(TAU_LINKER_OPTS) $(TAU_LINKER_SHOPTS)
822 SHAREDEXTRAS=
823 #FORCESHARED#SHAREDEXTRAS=-optSharedLinkReset="$(TAU_SHAREDLIBS) $(TAU_LDFLAGS) $(TAU_CXXLIBS) $(TAU_MPI_NOWRAP_FLIB)" -optShared #ENDIF#
824 TAU_COMPILER=$(TAU_BIN_DIR)/tau_compiler.sh $(TAUCOMPILEROPTS) $(SHAREDEXTRAS)
825 #############################################
826 # These options could be included in the application Makefile as 
827 #CFLAGS         = $(TAUDEFS) $(TAUINC)
828 #
829 #LIBS           = $(TAULIBS)
830 #
831 # To run the application without Profiling/Tracing use
832 #CFLAGS         = $(TAUINC)   
833 # Don't use TAUDEFS but do include TAUINC
834 # Also ignore TAULIBS when Profiling/Tracing is not used.
835 #############################################
836