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