#**************************************************************************** #* TAU Portable Profiling Package ** #* http://www.cs.uoregon.edu/research/tau ** #**************************************************************************** #* Copyright 1997-2002 ** #* Department of Computer and Information Science, University of Oregon ** #* Advanced Computing Laboratory, Los Alamos National Laboratory ** #**************************************************************************** ####################################################################### ## pC++/Sage++ Copyright (C) 1993,1995 ## ## Indiana University University of Oregon University of Rennes ## ####################################################################### ####################################################################### # This is a sample Makefile that contains the Profiling and Tracing # options. Makefiles of other applications and libraries (not included # in this distribution) should include this Makefile. # It defines the following variables that should be added to CFLAGS # TAU_INCLUDE - Include path for tau headers # TAU_DEFS - Defines that are needed for tracing and profiling only. # And for linking add to LIBS # TAU_LIBS - TAU Tracing and Profiling library libprof.a # # When the user needs to turn off tracing and profiling and run the # application without any runtime overhead of instrumentation, simply # remove TAUDEFS and TAULIBS from CFLAGS and LIBS respectively but keep # TAUINC. ####################################################################### ########### Automatically modified by the configure script ############ CONFIG_ARCH=xt3 TAU_ARCH=xt3 CONFIG_CC=qk-pgcc CONFIG_CXX=qk-pgCC TAU_CC_FE=$(CONFIG_CC) #BGL#TAU_CC_FE=xlc #ENDIF# #BGP#TAU_CC_FE=xlc #ENDIF# TAU_CC_FE=gcc #ENDIF##CATAMOUNT# #SC_GFORTRAN#TAU_CC_FE=gcc #ENDIF# #SC_PATHSCALE#TAU_CC_FE=gcc #ENDIF# PCXX_OPT=-g USER_OPT= EXTRADIR=/opt/pgi/6.1.4/linux86-64/6.1/bin/.. EXTRADIRCXX= TAUROOT=/usr/local/packages/TAU-2.17/tau-2.17 TULIPDIR= TAUEXTRASHLIBOPTS= TAUGCCLIBOPTS= TAUGCCLIBDIR= PCLDIR= PAPIDIR= PAPISUBDIR= CHARMDIR= PDTDIR=/usr/local/packages/TAU-2.17/tau-2.17/../pdtoolkit-3.12 PDTCOMPDIR= DYNINSTDIR= JDKDIR= SLOG2DIR= OPARIDIR= TAU_OPARI_TOOL= EPILOGDIR= EPILOGBINDIR= EPILOGINCDIR= EPILOGLIBDIR= EPILOGEXTRALINKCMD= VAMPIRTRACEDIR= KTAU_INCDIR= KTAU_INCUSERDIR= KTAU_LIB= KTAU_KALLSYMS_PATH= PYTHON_INCDIR= PYTHON_LIBDIR= PERFINCDIR= PERFLIBDIR= PERFLIBRARY= TAU_SHMEM_INC= TAU_SHMEM_LIB= TAU_CONFIG=-mpi-pdt-pgi TAU_MPI_INC=-I/opt/xt-mpt/default/mpich2-64/P2/include 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 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 TAU_MPILIB_DIR=/opt/xt-mpt/default/mpich2-64/P2/lib TAU_MPI_NOWRAP_LIB= -L/opt/xt-mpt/default/mpich2-64/P2/lib -lrt -lmpichcxx -lmpich -lrt TAU_MPI_NOWRAP_FLIB=-L/opt/xt-mpt/default/mpich2-64/P2/lib -lrt -lmpichcxx -lmpich -lrt FULL_CXX=/opt/xt-pe/1.5.47/bin/snos64/qk-pgCC FULL_CC=/opt/xt-pe/1.5.47/bin/snos64/qk-pgcc TAU_PREFIX_INSTALL_DIR=/usr/local/packages/TAU-2.17/tau-2.17 TAU_BIN_DIR=$(TAU_PREFIX_INSTALL_DIR)/$(CONFIG_ARCH)/bin TAU_INC_DIR=$(TAU_PREFIX_INSTALL_DIR)/include TAU_LIB_DIR=$(TAU_PREFIX_INSTALL_DIR)/$(CONFIG_ARCH)/lib ####################################################################### #ENABLE64BIT#ABI = -64 #ENDIF# #ENABLEN32BIT#ABI = -n32 #ENDIF# #ENABLE32BIT#ABI = -32 #ENDIF# ####################################################################### #SP1#IBM_XLC_ABI = -q32 #ENDIF# #SP1#IBM_GNU_ABI = -maix32 #ENDIF# #IBM64#IBM_XLC_ABI = -q64 #ENDIF# #IBM64#IBM_GNU_ABI = -maix64 #ENDIF# #IBM64LINUX#IBM_XLC_ABI = -q64 #ENDIF# #IBM64LINUX#IBM_GNU_ABI = -m64 #ENDIF# #SUNX86_64#SUN_GNU_ABI = -m64 #ENDIF# #SUNX86_64#SUN_CC_ABI = -xarch=amd64 #ENDIF# #MIPS32LINUX#SC_GNU_ABI = -mabi=n32 #ENDIF# #MIPS32LINUX#SC_PATH_ABI = -n32 #ENDIF# #MIPS64LINUX#SC_GNU_ABI = -mabi=64 #ENDIF# #MIPS64LINUX#SC_PATH_ABI = -64 #ENDIF# #GNU#SC_ABI = $(SC_GNU_ABI) #ENDIF# #USE_PATHCC#SC_ABI = $(SC_PATH_ABI) #ENDIF# #MIPS32#ABI = $(SC_ABI) #ENDIF# #MIPS64#ABI = $(SC_ABI) #ENDIF# #USE_IBMXLC#IBM_ABI = $(IBM_XLC_ABI) #ENDIF# #GNU#IBM_ABI = $(IBM_GNU_ABI) #ENDIF# #SP1# ABI = $(IBM_ABI) #ENDIF# #PPC64# ABI = $(IBM_ABI) #ENDIF# #SOLARIS64#SUN_GNU_ABI = -mcpu=v9 -m64 #ENDIF# #SOLARIS64#SUN_CC_ABI = -xarch=v9 -xcode=pic32 #ENDIF# #SOL2CC#SUN_ABI = $(SUN_CC_ABI) #ENDIF# #GNU#SUN_ABI = $(SUN_GNU_ABI) #ENDIF# #SOL2#ABI = $(SUN_ABI) #ENDIF# #SUNX86_64#ABI = $(SUN_ABI) #ENDIF# #FORCEIA32#ABI = -m32#ENDIF# ####################################################################### F90_ABI = $(ABI) #IBM64_FORTRAN#F90_ABI = -q64 #ENDIF# ####################################################################### ############# Standard Defines ############## TAU_CC = $(CONFIG_CC) $(ABI) $(ISA) TAU_CXX = $(CONFIG_CXX) $(ABI) $(ISA) $(USER_OPT) TAU_RUN_CC = $(FULL_CC) $(ABI) $(ISA) TAU_RUN_CXX = $(FULL_CXX) $(ABI) $(ISA) TAU_INSTALL = /bin/cp TAU_SHELL = /bin/sh LSX = .a ############################################# # JAVA DEFAULT ARCH ############################################# JDKARCH = linux #COMPAQ_ALPHA#JDKARCH = alpha #ENDIF# #SOL2#JDKARCH = solaris #ENDIF# #SGIMP#JDKARCH = irix #ENDIF# #SP1#JDKARCH = aix #ENDIF# #T3E#JDKARCH = cray #ENDIF# ############################################# # JAVA OBJECTS ############################################# #JAVA#TAU_JAVA_O = TauJava.o TauJAPI.o #ENDIF# #JAVA#TAUJAPI = Profile.class #ENDIF# ############################################# # OpenMP OBJECTS ############################################# #OPENMP#OPENMP_O = OpenMPLayer.o #ENDIF# ############################################# # Opari OBJECTS ############################################# #OPARI#OPARI_O = TauOpari.o #ENDIF# #KOJAKOPARI#OPARI_O = TauKojakOpari.o #ENDIF# #EPILOG#OPARI_O = #ENDIF# #VAMPIRTRACE#OPARI_O = #ENDIF# #GNU#OPARI_O = #ENDIF# ############################################# # CallPath OBJECTS ############################################# #PROFILECALLPATH#CALLPATH_O = TauCallPath.o #ENDIF# #PROFILEPARAM#PARAM_O = ProfileParam.o #ENDIF# ############################################# # Python Binding OBJECTS ############################################# #PYTHON#PYTHON_O = PyGroups.o PyExceptions.o PyDatabase.o PyBindings.o PyTimer.o PyTau.o #ENDIF# ############################################# # DYNINST DEFAULT ARCH ############################################# DYNINST_PLATFORM = $(PLATFORM) #PCL##include $(TAU_INC_DIR)/makefiles/PCLMakefile.stub #ENDIF# ############# OpenMP Fortran Option ######## #OPENMP#TAU_F90_OPT = -mp #ENDIF# #SOL2CC_OPENMP#TAU_F90_OPT = -xopenmp #ENDIF# #SUNCC_OPENMP#TAU_F90_OPT = -xopenmp=parallel #ENDIF# #COMPAQCXX_OPENMP#TAU_F90_OPT = -omp #ENDIF# #IBMXLC_OPENMP#TAU_F90_OPT = -qsmp=omp #ENDIF# #GUIDE#TAU_F90_OPT = #ENDIF# #PGIOPENMP#TAU_F90_OPT = -mp #ENDIF# #INTELOPENMP#TAU_F90_OPT = -openmp #ENDIF# #HITACHI_OPENMP#TAU_F90_OPT = #ENDIF# #THREADSAFE_COMPILERS#TAU_R =_r #ENDIF# ############# Fortran Compiler ############# #GNU_FORTRAN#TAU_F90 = g77 $(F90_ABI) $(TAU_F90_OPT) #ENDIF# #GNU_GFORTRAN#TAU_F90 = gfortran $(F90_ABI) $(TAU_F90_OPT) #ENDIF# #G95_FORTRAN#TAU_F90 = g95 $(F90_ABI) $(TAU_F90_OPT) #ENDIF# #SC_GFORTRAN#TAU_F90 = scgfortran $(F90_ABI) $(TAU_F90_OPT) #ENDIF# #SGI_FORTRAN#TAU_F90 = f90 $(F90_ABI) $(TAU_F90_OPT) #ENDIF# #IBM_FORTRAN#TAU_F90 = xlf90$(TAU_R) $(F90_ABI) $(TAU_F90_OPT) #ENDIF# #BGP#TAU_F90 = bgxlf90$(TAU_R) $(F90_ABI) $(TAU_F90_OPT) #ENDIF# #BGL#TAU_F90 = blrts_xlf90$(TAU_R) $(F90_ABI) $(TAU_F90_OPT) #ENDIF# #IBM64_FORTRAN#TAU_F90 = xlf90$(TAU_R) $(F90_ABI) $(TAU_F90_OPT) #ENDIF# #IBMXLFAPPLE#TAU_F90 = xlf90$(TAU_R) $(F90_ABI) $(TAU_F90_OPT) #ENDIF# #CRAY_FORTRAN#TAU_F90 = f90 $(F90_ABI) $(TAU_F90_OPT) #ENDIF# #CRAY_X1_FORTRAN#TAU_F90 = ftn $(F90_ABI) $(TAU_F90_OPT) #ENDIF# TAU_F90 = pgf90 $(F90_ABI) $(TAU_F90_OPT) #ENDIF##PGI_FORTRAN# #CRAYCNL#TAU_F90 = ftn $(F90_ABI) $(TAU_F90_OPT) #ENDIF# TAU_F90 = qk-pgf90 $(F90_ABI) $(TAU_F90_OPT) #ENDIF##PGI_CATAMOUNT# #ABSOFT_FORTRAN#TAU_F90 = f90 $(F90_ABI) $(TAU_F90_OPT) #ENDIF# #LAHEY_FORTRAN#TAU_F90 = lf95 $(F90_ABI) $(TAU_F90_OPT) #ENDIF# #LAHEY64_FORTRAN#TAU_F90 = lf95 $(F90_ABI) $(TAU_F90_OPT) #ENDIF# #NAGWARE_FORTRAN#TAU_F90 = f95 $(F90_ABI) $(TAU_F90_OPT) #ENDIF# #FUJITSU_FORTRAN#TAU_F90 = F90 $(F90_ABI) $(TAU_F90_OPT) #ENDIF# #FUJITSU_SOLARIS#TAU_F90 = f90 $(F90_ABI) $(TAU_F90_OPT) #ENDIF# #SUN_FORTRAN#TAU_F90 = f90 $(F90_ABI) $(TAU_F90_OPT) #ENDIF# #COMPAQ_FORTRAN#TAU_F90 = f90 $(F90_ABI) $(TAU_F90_OPT) #ENDIF# #KAI_FORTRAN#TAU_F90 = guidef90 $(F90_ABI) $(TAU_F90_OPT) #ENDIF# #HP_FORTRAN#TAU_F90 = f90 $(F90_ABI) $(TAU_F90_OPT) #ENDIF# #HITACHI_FORTRAN#TAU_F90 = f90 $(F90_ABI) $(TAU_F90_OPT) #ENDIF# #INTEL_FORTRAN#TAU_F90 = efc $(F90_ABI) $(TAU_F90_OPT) #ENDIF# #INTEL32_FORTRAN#TAU_F90 = ifc $(F90_ABI) $(TAU_F90_OPT) #ENDIF# #INTELIFORT#TAU_F90 = ifort $(F90_ABI) $(TAU_F90_OPT) #ENDIF# #PATHSCALE_FORTRAN#TAU_F90 = pathf90 $(F90_ABI) $(TAU_F90_OPT) #ENDIF# #SC_PATHSCALE#TAU_F90 = scpathf95 $(F90_ABI) $(TAU_F90_OPT) #ENDIF# #OPEN64ORC_FORTRAN#TAU_F90 = orf90 $(F90_ABI) $(TAU_F90_OPT) #ENDIF# #NEC_FORTRAN#TAU_F90 = f90 $(F90_ABI) $(TAU_F90_OPT) #ENDIF# ############# Portable F90 Options ############# #IBM64_FORTRAN#TAU_F90_FIXED = -qfixed #ENDIF# #IBM_FORTRAN#TAU_F90_FIXED = -qfixed #ENDIF# #IBM_FORTRAN#TAU_F90_SUFFIX = -qsuffix=f=f90 #ENDIF# #IBMXLFAPPLE#TAU_F90_FIXED = -qfixed #ENDIF# #IBMXLFAPPLE#TAU_F90_SUFFIX = -qsuffix=f=f90 #ENDIF# #IBM64_FORTRAN#TAU_F90_SUFFIX = -qsuffix=f=f90 #ENDIF# ############# Profiling Options ############# PROFILEOPT1 = -DPROFILING_ON #ENDIF##PROFILE# #PCL#PROFILEOPT3 = -DTAU_PCL -I$(PCLDIR)/include #ENDIF# #PAPI#PROFILEOPT3 = -DTAU_PAPI -I$(PAPIDIR)/src -I$(PAPIDIR)/include #ENDIF# #PCL#PCL_O = PclLayer.o #ENDIF# #PAPI#PAPI_O = PapiLayer.o #ENDIF# #MULTIPLECOUNTERS#MULT_O = MultipleCounters.o #ENDIF# #PROFILECALLS#PROFILEOPT4 = -DPROFILE_CALLS #ENDIF# #PROFILESTATS#PROFILEOPT5 = -DPROFILE_STATS #ENDIF# #DEBUGPROF#PROFILEOPT6 = -DDEBUG_PROF #ENDIF# PROFILEOPT7 = -DTAU_STDCXXLIB #ENDIF##STDCXXLIB# #CRAYX1CC#PROFILEOPT7 = #ENDIF# #CRAYCC#PROFILEOPT7 = #ENDIF# #INTELTFLOP#PROFILEOPT8 = -DPOOMA_TFLOP #ENDIF# #NORTTI#PROFILEOPT9 = -DNO_RTTI #ENDIF# #RTTI#PROFILEOPT9 = -DRTTI #ENDIF# #GNU#PROFILEOPT10 = -DTAU_GNU -DTAU_DOT_H_LESS_HEADERS -fPIC #ENDIF# #APPLECXX#PROFILEOPT10 = -DTAU_GNU -DTAU_DOT_H_LESS_HEADERS -fPIC #ENDIF# #SOL2CC#PROFILEOPT10 = -DTAU_SOL2CC -DTAU_DOT_H_LESS_HEADERS #ENDIF# #SUNCC#PROFILEOPT10 = -DTAU_SOL2CC -DTAU_DOT_H_LESS_HEADERS #ENDIF# #USE_PATHCC#PROFILEOPT10 = -DTAU_DOT_H_LESS_HEADERS -fPIC -DTAU_PATHSCALE #ENDIF# #OPEN64ORC#PROFILEOPT10 = -DTAU_DOT_H_LESS_HEADERS -DTAU_OPEN64ORC -fpic #ENDIF# #CALLSTACK#PROFILEOPT11 = -DPROFILE_CALLSTACK #ENDIF# #PGI1.7#PROFILEOPT12 = -DPGI #ENDIF# #CRAYKAI#PROFILEOPT12 = -DCRAYKAI #ENDIF# #HP_FORTRAN#PROFILEOPT12 = -DHP_FORTRAN #ENDIF# #CRAYCC#PROFILEOPT13 = -h instantiate=used -DCRAYCC -DTAU_DOT_H_LESS_HEADERS #ENDIF# #CRAYX1CC#PROFILEOPT13 = -DTAU_DOT_H_LESS_HEADERS #ENDIF# #SGICC#TAU_CXX = $(CONFIG_CXX) $(ABI) $(ISA) $(USER_OPT) -LANG:std #ENDIF# #INTELCXXLIBICC#TAU_CXX = $(CONFIG_CXX) $(ABI) $(ISA) $(USER_OPT) -cxxlib-icc #ENDIF# #PTHREAD_AVAILABLE#PROFILEOPT15 = -DPTHREADS #ENDIF# #COMPAQCXX_PTHREAD#PROFILEOPT15 = -DPTHREADS -pthread #ENDIF# #TAU_SPROC#PROFILEOPT15 = -DTAU_SPROC #ENDIF# #TAU_PAPI_THREADS#PROFILEOPT15 = -DTAU_PAPI_THREADS #ENDIF# #TULIPTHREADS#PROFILEOPT16 = -DTULIPTHREADS #ENDIF# #TRACE#TRACEOPT = -DTRACING_ON #ENDIF# #TRACE#EVENTS_O = Tracer.o #ENDIF# #KTAU#KTAU_O = TauKtau.o KtauProfiler.o KtauSymbols.o #ENDIF# #KTAU_MERGE#KTAU_MERGE_O = KtauFuncInfo.o KtauMergeInfo.o ktau_syscall.o #ENDIF# #KTAU_SHCTR#KTAU_SHCTR_O = KtauCounters.o #ENDIF# #MPITRACE#TRACEOPT = -DTAU_MPITRACE -DTRACING_ON #ENDIF# #MPITRACE#EVENTS_O = Tracer.o #ENDIF# #MUSE#MUSE_O = TauMuse.o TauMuseFilters.o TauMuseHandlers.o TauMusePackages.o #ENDIF# #MUSE_EVENT#MUSE_O = TauMuse.o TauMuseFilters.o TauMuseHandlers.o TauMusePackages.o #ENDIF# #MUSE_MULTIPLE#MUSE_O = TauMuse.o TauMuseFilters.o TauMuseHandlers.o TauMusePackages.o #ENDIF# #COMPENSATE#COMPENSATE_O = TauCompensate.o #ENDIF# #PTHREAD_AVAILABLE#THR_O = PthreadLayer.o #ENDIF# #TAU_PAPI_THREADS#THR_O = PapiThreadLayer.o #ENDIF# #TAU_SPROC#THR_O = SprocLayer.o #ENDIF# #JAVA#THR_O = JavaThreadLayer.o #ENDIF# #TULIPTHREADS#THR_O = TulipThreadLayer.o #ENDIF# #LINUXTIMERS#PLATFORM_O = TauLinuxTimers.o #ENDIF# #TULIPTHREADS#PROFILEOPT17 = -I$(TULIPDIR)/include -I$(TULIPDIR)/Tuliplib #ENDIF# #SMARTS#PROFILEOPT17 = -I$(TULIPDIR)/include -I$(TULIPDIR)/lib -I$(TULIPDIR)/machine-specific/$(HOSTTYPE) #ENDIF# #SMARTS#PROFILEOPT18 = -DSMARTS #ENDIF# #KAI#PROFILEOPT19 = -DKAI -DTAU_DOT_H_LESS_HEADERS #ENDIF# #USE_DECCXX#PROFILEOPT19 = -DTAU_DOT_H_LESS_HEADERS #ENDIF# #SGICC#PROFILEOPT19 = -DTAU_DOT_H_LESS_HEADERS #ENDIF# #USE_INTELCXX#PROFILEOPT19 = -DTAU_DOT_H_LESS_HEADERS -fPIC #ENDIF# #USE_NECCXX#PROFILEOPT19 = -DTAU_DOT_H_LESS_HEADERS #ENDIF# PROFILEOPT19 = -DTAU_DOT_H_LESS_HEADERS -fPIC #ENDIF##PGI# #ACC#PROFILEOPT19 = -AA +z -DTAU_DOT_H_LESS_HEADERS -DTAU_HPUX #ENDIF# #FUJITSU#PROFILEOPT19 = -DFUJITSU -DTAU_DOT_H_LESS_HEADERS #ENDIF# #KAINOEX#PROFILEOPT20 = --no_exceptions #ENDIF# #SGICCNOEX#PROFILEOPT20 = -LANG:exceptions=off #ENDIF# #HPGNU#PROFILEOPT21 = -fPIC #ENDIF# #HITACHI#PROFILEOPT21 = -DTAU_HITACHI #ENDIF# #SP1#PROFILEOPT21 = -D_POSIX_SOURCE -DTAU_AIX #ENDIF# #PPC64#TAU_PIC_PROFILEOPT21 = -qpic=large #ENDIF# #BGL#TAU_PIC_PROFILEOPT21 = #ENDIF# #USE_IBMXLC#PROFILEOPT21 = -DTAU_DOT_H_LESS_HEADERS -DTAU_XLC $(TAU_PIC_PROFILEOPT21) #ENDIF# #IBMXLCAPPLE#PROFILEOPT21 = -DTAU_DOT_H_LESS_HEADERS -DTAU_XLC -DTAU_APPLE_XLC #ENDIF# #PCLPTHREAD#PROFILEOPT22 = -DPCL_MUTEX_LOCK #ENDIF# #JAVA#PROFILEOPT23 = -DJAVA #ENDIF# #MONITOR#PROFILEOPT24 = -DMONITORING_ON #ENDIF# #JAVA#PROFILEOPT25 = -I$(JDKDIR)/include -I$(JDKDIR)/include/$(JDKARCH) #ENDIF# PROFILEOPT26 = -DTAU_MPI #ENDIF##MPI# PROFILEOPT26 = -DTAU_MPI -DTAU_MPI_THREADED #ENDIF##MPI_THREADED# #OPENMP#PROFILEOPT27 = -mp -DTAU_OPENMP#ENDIF# #GNU#PROFILEOPT27 = #ENDIF# #SOL2CC_OPENMP#PROFILEOPT27 = -xopenmp -DTAU_OPENMP#ENDIF# #SUNCC_OPENMP#PROFILEOPT27 = -xopenmp=parallel -DTAU_OPENMP#ENDIF# #SUNCC_OPENMP#PROFILEOPT27 = -xopenmp=parallel -DTAU_OPENMP#ENDIF# #HITACHI_OPENMP#PROFILEOPT27 = -DTAU_OPENMP#ENDIF# #COMPAQCXX_OPENMP#PROFILEOPT27 = -omp -DTAU_OPENMP#ENDIF# #IBMXLC_OPENMP#PROFILEOPT27 = -qsmp=omp -DTAU_OPENMP #ENDIF# #OPEN64_OPENMP#PROFILEOPT27 = -mp -DTAU_OPENMP #ENDIF# #GUIDE#PROFILEOPT27 = -DTAU_OPENMP #ENDIF# #PGIOPENMP#PROFILEOPT27 = -mp -D_OPENMP -DTAU_OPENMP -U_RWSTD_MULTI_THREAD -U_REENTRANT #ENDIF# #INTELOPENMP#PROFILEOPT27 = -openmp -DTAU_OPENMP #ENDIF# #GNUOPENMP#PROFILEOPT27 = -fopenmp -DTAU_OPENMP #ENDIF# #OPARI#PROFILEOPT28 = -I$(OPARIDIR)/lib -I$(OPARIDIR)/include #ENDIF# #OPARI_REGION#PROFILEOPT28 = -DTAU_OPARI_REGION -I$(OPARIDIR)/lib -I$(OPARIDIR)/include #ENDIF# #OPARI_CONSTRUCT#PROFILEOPT28 = -DTAU_OPARI_CONSTRUCT -I$(OPARIDIR)/lib -I$(OPARIDIR)/include #ENDIF# #MULTIPLECOUNTERS#PROFILEOPT29 = -DTAU_MULTIPLE_COUNTERS #ENDIF# #SGITIMERS#PROFILEOPT30 = -DSGI_TIMERS #ENDIF# #BGLTIMERS#PROFILEOPT30 = -DBGL_TIMERS -I/bgl/BlueLight/ppcfloor/bglsys/include #ENDIF# #CRAYTIMERS#PROFILEOPT30 = -DCRAY_TIMERS #ENDIF# #LINUXTIMERS#PROFILEOPT31 = -DTAU_LINUX_TIMERS #ENDIF# #ALPHATIMERS#PROFILEOPT31 = -DTAU_ALPHA_TIMERS #ENDIF# #CPUTIME#PROFILEOPT32 = -DCPU_TIME #ENDIF# #PAPIWALLCLOCK#PROFILEOPT33 = -DTAU_PAPI_WALLCLOCKTIME #ENDIF# #PAPIVIRTUAL#PROFILEOPT34 = -DTAU_PAPI_VIRTUAL #ENDIF# #SGICOUNTERS#PROFILEOPT35 = -DSGI_HW_COUNTERS #ENDIF# #EPILOG#PROFILEOPT36 = -DTAU_EPILOG -I$(EPILOGINCDIR) #ENDIF# #VAMPIRTRACEINTS#TAU_VAMPIRTRACEOPTS = -DTAU_64BITTYPES_NEEDED -DHAVE_INTTYPES_H #ENDIF# #VAMPIRTRACE#PROFILEOPT36 = -DTAU_VAMPIRTRACE -I$(VAMPIRTRACEDIR)/vtlib -I$(VAMPIRTRACEDIR)/include $(TAU_VAMPIRTRACEOPTS)#ENDIF# #PROFILECALLPATH#PROFILEOPT36 = -DTAU_CALLPATH #ENDIF# #PROFILEPHASE#PROFILEOPT36 = -DTAU_CALLPATH -DTAU_PROFILEPHASE#ENDIF# #PYTHON#PROFILEOPT37 = -I$(PYTHON_INCDIR) #ENDIF# #NOCOMM#PROFILEOPT38 = -DTAU_NOCOMM #ENDIF# #MUSE#PROFILEOPT39 = -DTAU_MUSE #ENDIF# #SETNODE0#PROFILEOPT40 = -DTAU_SETNODE0 #ENDIF# #COMPENSATE#PROFILEOPT41 = -DTAU_COMPENSATE #ENDIF# #MUSE_EVENT#PROFILEOPT42 = -DTAU_MUSE_EVENT #ENDIF# #MUSE_MULTIPLE#PROFILEOPT43 = -DTAU_MUSE_MULTIPLE #ENDIF# #DYNINST41##PROFILEOPT44 = -DTAU_DYNINST41BUGFIX #ENDIF# # DyninstAPI v4.2.1 fixes the bug, so we don't need OPT44 anymore #PROFILEMEMORY#PROFILEOPT45 = -DTAU_PROFILEMEMORY #ENDIF# PROFILEOPT46 = -DTAU_MPIGREQUEST #ENDIF##MPIGREQUEST# #MPIOREQUEST#PROFILEOPT47 = -DTAU_MPIOREQUEST #ENDIF# PROFILEOPT48 = -DTAU_MPIDATAREP #ENDIF##MPIDATAREP# PROFILEOPT49 = -DTAU_MPIERRHANDLER #ENDIF##MPIERRHANDLER# PROFILEOPT50 = -DTAU_CATAMOUNT #ENDIF##CATAMOUNT# #MPICONSTCHAR#PROFILEOPT51 = -DTAU_MPICONSTCHAR #ENDIF# PROFILEOPT52 = -DTAU_MPIATTRFUNCTION #ENDIF##MPIATTR# PROFILEOPT53 = -DTAU_MPITYPEEX #ENDIF##MPITYPEEX# PROFILEOPT54 = -DTAU_MPIADDERROR #ENDIF##MPIADDERROR# #MPINEEDSTATUSCONV#PROFILEOPT55 = -DTAU_MPI_NEEDS_STATUS #ENDIF# #DEPTHLIMIT#PROFILEOPT56 = -DTAU_DEPTH_LIMIT #ENDIF# #TAU_CHARM#PROFILEOPT57 = -DTAU_CHARM -I$(CHARMDIR)/include #ENDIF# #PROFILEHEADROOM#PROFILEOPT58 = -DTAU_PROFILEHEADROOM #ENDIF# #JAVACPUTIME#PROFILEOPT59 = -DJAVA_CPU_TIME #ENDIF# PROFILEOPT60 = -DTAU_LARGEFILE -D_LARGEFILE64_SOURCE #ENDIF##TAU_LARGEFILE# #SHMEM#PROFILEOPT61 = -DTAU_SHMEM #ENDIF# #KTAU#PROFILEOPT62 = -DTAUKTAU -DKTAU_USER_SRC_COMPILE -I$(KTAU_INCDIR) -I$(KTAU_INCUSERDIR) -DKTAU_INCUSERDIR=\"$(KTAU_INCUSERDIR)\" -DKTAU_KALLSYMS_PATH=\"$(KTAU_KALLSYMS_PATH)\" #ENDIF# #KTAU_MERGE#PROFILEOPT63 = -DTAUKTAU_MERGE -DKTAU_USER_SRC_COMPILE -I$(KTAU_INCDIR) -DKTAU_INCUSERDIR=\"$(KTAU_INCUSERDIR)\" -DKTAU_KALLSYMS_PATH=\"$(KTAU_KALLSYMS_PATH)\" #ENDIF# #FREEBSD#PROFILEOPT64 = -DTAU_FREEBSD #ENDIF# #PROFILEPARAM#PROFILEOPT65 = -DTAU_PROFILEPARAM #ENDIF# #IBMMPI#PROFILEOPT66 = -DTAU_IBM_MPI #ENDIF# PROFILEOPT67 = -DTAU_WEAK_MPI_INIT #ENDIF##WEAKMPIINIT# #LAMPI#PROFILEOPT68 = -DTAU_LAMPI #ENDIF# PROFILEOPT68 = -DMPICH_IGNORE_CXX_SEEK #ENDIF##MPICH_IGNORE_CXX_SEEK# PROFILEOPT73 = -DTAU_MPICH2_MPI_IN_PLACE #ENDIF##MPICH2_MPI_INPLACE# ############# RENCI Scalable Trace Lib Options ############# STFF_DIR= SDDF_DIR= #RENCI_STFF#PROFILEOPT69 = -DRENCI_STFF -I$(STFF_DIR)/include #ENDIF# #RENCI_STFF#TAU_LINKER_OPT11 = -L$(STFF_DIR)/lib -lstff -L$(SDDF_DIR)/lib -lPablo $(TAU_MPI_LIB) #ENDIF# #RENCI_STFF#RENCI_STFF_O = RenciSTFF.o #ENDIF# ############# KTAU (again) ############# #KTAU_SHCTR#PROFILEOPT70 = -DTAUKTAU_SHCTR -DKTAU_USER_SRC_COMPILE -I$(KTAU_INCDIR) -DKTAU_INCUSERDIR=\"$(KTAU_INCUSERDIR)\" -DKTAU_KALLSYMS_PATH=\"$(KTAU_KALLSYMS_PATH)\" #ENDIF# #KTAU#TAU_LINKER_OPT12 = -L$(KTAU_LIB) -lktau #ENDIF# #MIPS32LINUX#PROFILEOPT71 = -D_ABIN32=2 -D_MIPS_SIM=_ABIN32 #ENDIF# #BGL#PROFILEOPT72 = -DTAU_BGL -I/bgl/BlueLight/ppcfloor/bglsys/include #ENDIF# #For F90 support for all platforms FWRAPPER = TauFMpi.o MPI2EXTENSIONS = TauMpiExtensions.o #ENDIF##MPI2# #CRAYX1CC#MPI2EXTENSIONS = #ENDIF# #SGICOUNTERS#LEXTRA = -lperfex #ENDIF# #ALPHATIMERS#LEXTRA = -lrt #ENDIF# #SOL2#PCL_EXTRA_LIBS = -lcpc #ENDIF# #PCL#LEXTRA = -L$(PCLDIR)/lib -lpcl $(PCL_EXTRA_LIBS) #ENDIF# #PAPI#LEXTRA = $(PAPIDIR)/$(PAPISUBDIR)/libpapi.a #ENDIF# #IA64PAPI#LEXTRA = -L$(PAPIDIR)/$(PAPISUBDIR) -lpapi #ENDIF# #X86_64PAPI#LEXTRA = -L$(PAPIDIR)/$(PAPISUBDIR)/ -L$(PAPIDIR)/lib64/ -lpapi -lperfctr #ENDIF# #PAPIPFM#LEXTRA = -L$(PAPIDIR)/$(PAPISUBDIR) -lpfm -lpapi -lpfm #ENDIF# #SOL2PAPI#LEXTRA = $(PAPIDIR)/$(PAPISUBDIR)/libpapi.a -lcpc #ENDIF# #IBMPAPI#LEXTRA = $(PAPIDIR)/$(PAPISUBDIR)/libpapi.a -L/usr/lpp/pmtoolkit/lib -L/usr/pmapi/lib -lpmapi#ENDIF# #PPC64PAPI#LEXTRA = $(PAPIDIR)/$(PAPISUBDIR)/libpapi.a #ENDIF# #BGLPAPI_RTS#LEXTRA = $(PAPIDIR)/$(PAPISUBDIR)/libpapi.rts.a -L/bgl/BlueLight/ppcfloor/bglsys/lib -lbgl_perfctr.rts -lrts.rts -ldevices.rts #ENDIF# #BGLPAPI#LEXTRA = $(PAPIDIR)/$(PAPISUBDIR)/libpapi.a -L/bgl/BlueLight/ppcfloor/bglsys/lib -lbgl_perfctr.rts -lrts.rts -ldevices.rts #ENDIF# #BGPPAPI#LEXTRA = $(PAPIDIR)/$(PAPISUBDIR)/libpapi.a -L/bgsys/drivers/ppcfloor/runtime/SPI -lSPI.cna #ENDIF# #IBM64PAPI#LEXTRA = $(PAPIDIR)/$(PAPISUBDIR)/libpapi64.a -L/usr/lpp/pmtoolkit/lib -L/usr/pmapi/lib -lpmapi #ENDIF# #IBM64PAPILINUX#LEXTRA = $(PAPIDIR)/$(PAPISUBDIR)/libpapi.a #ENDIF# #SGI64PAPI#LEXTRA = -L$(PAPIDIR)/$(PAPISUBDIR) -lpapi64 #ENDIF# #ALPHAPAPI#LEXTRA = $(PAPIDIR)/$(PAPISUBDIR)/libpapi.a /usr/lib/dcpi/dadd.a -lclu -lrt #ENDIF# # By default make TAU_PAPI_RPATH null. Support it on a compiler by compiler basis. #PAPI###TAU_PAPI_RPATH = -rpath $(PAPIDIR)/$(PAPISUBDIR) #ENDIF# #PAPI##TAU_PAPI_RPATH = #ENDIF# #PPC64PAPI#TAU_PAPI_RPATH = #ENDIF# #BGLPAPI#TAU_PAPI_RPATH = #ENDIF# #BGPPAPI#TAU_PAPI_RPATH = #ENDIF# #USE_INTELCXX#TAU_PAPI_RPATH = #ENDIF# #CRAYX1CC#TAU_PAPI_RPATH = #ENDIF# TAU_PAPI_RPATH = -R$(PAPIDIR)/$(PAPISUBDIR) #ENDIF##PGI# #GNU#TAU_PAPI_RPATH = -Wl,-rpath $(PAPIDIR)/$(PAPISUBDIR) #ENDIF# #USE_PATHCC#TAU_PAPI_RPATH = #ENDIF# # if the user has specified -cc=gcc -c++=g++ -fortran=intel, we shouldn't use -rpath # because they are likely going to link with ifort #INTEL32_FORTRAN#TAU_PAPI_RPATH = #ENDIF# #SOL2PAPI#TAU_PAPI_RPATH = #ENDIF# #IBMPAPI#TAU_PAPI_RPATH = #ENDIF# #IBM64PAPI#TAU_PAPI_RPATH = #ENDIF# #PAPI#TAU_LINKER_OPT1 = $(TAU_PAPI_RPATH) #ENDIF# #PTHREAD_AVAILABLE#LEXTRA1 = -lpthread #ENDIF# #TULIPTHREADS#LEXTRA1 = -L$(TULIPDIR)/Tuliplib -ltulip #ENDIF# #SMARTS##include $(TAU_INC_DIR)/makefiles/GNUmakefile-$(HOSTTYPE) #ENDIF# #SMARTS#LEXTRA1 = $(LSMARTS) #ENDIF# TAU_GCCLIB = -lgcc_s #INTEL32_ON_64#TAU_GCCLIB = -lgcc #ENDIF# #FREEBSD#TAU_GCCLIB = -lgcc #ENDIF# #BGL#TAU_GCCLIB = -lgcc #ENDIF# #GNU#TAU_FORTRANLIBS = -L$(TAUGCCLIBDIR) $(TAUGCCLIBOPTS) -lstdc++ $(TAU_GCCLIB) #ENDIF# #OPEN64ORC_FORTRAN#TAU_FORTRANLIBS = -lfortran -lffio #ENDIF# #PATHSCALE_FORTRAN#TAU_FORTRANLIBS = -lpathfstart -lpathfortran #ENDIF# #SC_PATHSCALE#TAU_FORTRANLIBS = -lpathfstart -lpathfortran #ENDIF# #NAGWARE_FORTRAN#TAU_FORTRANLIBS = $(EXTRADIR)/lib/quickfit.o -L$(EXTRADIR)/lib -lf96 #ENDIF# #G95_FORTRAN#TAU_FORTRANLIBS = -L$(EXTRADIR) -lf95 #ENDIF# #GNU_FORTRAN#TAU_FORTRANLIBS = -lg2c #ENDIF# #GNU_GFORTRAN#TAU_FORTRANLIBS = -lgfortran -lgfortranbegin #ENDIF# #SC_GFORTRAN#TAU_FORTRANLIBS = -lgfortran -lgfortranbegin #ENDIF# #SGI_FORTRAN#TAU_FORTRANLIBS = -lfortran -lftn #ENDIF# #USE_IBMXLC#TAU_IBM_FORTRANLIBS = -bh:4 -bpT:0x10000000 -bpD:0x20000000 /lib/crt0.o -lxlf90 -lm -lc #ENDIF# #GNU#TAU_IBM_FORTRANLIBS = -Wl,-bh:4 -Wl,-bpT:0x10000000 -Wl,-bpD:0x20000000 /lib/crt0.o -lxlf90 -lm -lc #ENDIF# #KAI#TAU_IBM_FORTRANLIBS = --backend -bh:4 --backend -bpT:0x10000000 --backend -bpD:0x20000000 /lib/crt0.o -lxlf90 -lm -lc #ENDIF# #IBM_FORTRAN#TAU_FORTRANLIBS = $(TAU_IBM_FORTRANLIBS) #ENDIF# #USE_IBMXLC#TAU_IBM64_FORTRANLIBS = -bh:4 -bpT:0x10000000 -bpD:0x20000000 -b64 /lib/crt0_64.o -lxlf90 -lm -lc #ENDIF# #GNU#TAU_IBM64_FORTRANLIBS = -Wl,-bh:4 -Wl,-bpT:0x10000000 -Wl,-bpD:0x20000000 -Wl,-b64 /lib/crt0_64.o -lxlf90 -lm -lc #ENDIF# #KAI#TAU_IBM64_FORTRANLIBS = --backend -bh:4 --backend -bpT:0x10000000 --backend -bpD:0x20000000 --backend -b64 /lib/crt0_64.o -lxlf90 -lm -lc #ENDIF# #IBM64_FORTRAN#TAU_FORTRANLIBS = $(TAU_IBM64_FORTRANLIBS) #ENDIF# #IBM64_FORTRAN#TAU_FORLIBDIR=lib64 #ENDIF# #IBM_FORTRAN#TAU_FORLIBDIR=lib #ENDIF# #BGL#TAU_FORLIBDIR=blrts_dev_lib #ENDIF# #BGP#TAU_FORLIBDIR=bglib #ENDIF# #PPC64#TAU_FORTRANLIBS = -L$(EXTRADIR)/$(TAU_FORLIBDIR) -lxlf90 -lxlfmath -lxl #ENDIF# #BGL#TAU_FORTRANLIBS = -L$(EXTRADIR)/$(TAU_FORLIBDIR) -L$(EXTRADIR)/blrts_lib -lxlf90 -lxlfmath -lxl #ENDIF# #BGP#TAU_BGL_OMP_SERIAL= -lxlomp_ser #ENDIF# #OPENMP#TAU_BGL_OMP_SERIAL= #ENDIF# #BGP#TAU_OMP_SERIAL=$(TAU_BGL_OMP_SERIAL) #ENDIF# #BGP#TAU_FORTRANLIBS = -L$(EXTRADIR)/$(TAU_FORLIBDIR) -lxlf90 -lxlfmath $(TAU_OMP_SERIAL) #ENDIF# #IBMXLFAPPLE#TAU_FORTRANLIBS = -L$(EXTRADIR)/lib -lxlf90 -lxlfmath -lxl #ENDIF# #CRAY_FORTRAN#TAU_FORTRANLIBS = #ENDIF# #CRAY_X1_FORTRAN#TAU_FORTRANLIBS = #ENDIF# TAU_FORTRANLIBS = $(EXTRADIR)/lib/f90main.o -lpgf90 -lpgf90rtl -lpgf90_rpm1 -lpgf902 -lpgftnrtl -lrt #ENDIF##PGI_FORTRAN# #HP_FORTRAN#TAU_FORTRANLIBS = -L$(EXTRADIR)/lib/pa2.0 -lF90 -lcl #ENDIF# #INTEL_FORTRAN#TAU_FORTRANLIBS = -lcprts -lPEPCF90 #ENDIF# #INTEL32_FORTRAN#TAU_FORTRANLIBS = -lcprts -lCEPCF90 -lF90 #ENDIF# #INTELIFORT#TAU_FORTRANLIBS = -lcprts #ENDIF# #INTEL81FIX#TAU_FORTRANLIBS = -L$(TAUGCCLIBDIR) $(TAUGCCLIBOPTS) -lstdc++ $(TAU_GCCLIB) -lcxa -lunwind -L$(EXTRADIR)/lib -lifcore $(EXTRADIR)/lib/for_main.o #ENDIF# #INTEL10FIX#TAU_FORTRANLIBS = -L$(TAUGCCLIBDIR) $(TAUGCCLIBOPTS) -lstdc++ $(TAU_GCCLIB) -L$(EXTRADIR)/lib -lifcore $(EXTRADIR)/lib/for_main.o #ENDIF# #INTELCXXLIBICC#TAU_FORTRANLIBS = -lcprts -L$(EXTRADIR)/lib -lifcore $(EXTRADIR)/lib/for_main.o #ENDIF# #PGI1.7#LEXTRA = -lstd -lstrm#ENDIF# #PGI1.7#TAUHELPER = $(TAUROOT)/src/Profile/TauPGIHelper.cpp #ENDIF# # LINKER OPTIONS TAU_LINKER_OPT2 = $(LEXTRA) #ACC#TAUHELPER = -AA #ENDIF# #FUJITSU_FORTRAN#TAU_FORTRANLIBS = $(EXTRADIR)/lib/fj90rt0.o -L$(EXTRADIR)/lib -lfj9i6 -lfj9f6 -lfj9e6 #ENDIF# #FUJITSU_SOLARIS#TAU_FORTRANLIBS = $(EXTRADIR)/lib/fj90rt0.o -L$(EXTRADIR)/lib -lfj90l -lfj90f #ENDIF# #SUN_FORTRAN#TAU_FORTRANLIBS = -lfui -lfsumai -lfprodai -lfminlai -lfmaxlai -lfminvai -lfmaxvai -lfsu -lsunmath #ENDIF# #SUN_FORTRAN#TAU_FORTRANLIBS_SUN_OPTERON = -lfsu -lsunmath #ENDIF# #SUN_FORTRAN#TAU_FORTRANLIBS_SUNCC = -lfsu #ENDIF# #SUN386I#TAU_FORTRANLIBS = $(TAU_FORTRANLIBS_SUN_OPTERON) #ENDIF# #SUNX86_64#TAU_FORTRANLIBS = $(TAU_FORTRANLIBS_SUN_OPTERON) #ENDIF# #SUNCC#TAU_FORTRANLIBS = $(TAU_FORTRANLIBS_SUNCC) #ENDIF# #SOL2#EXTRALIBS = -lsocket -lnsl #ENDIF# #SUN386I#EXTRALIBS = -lsocket -lnsl -lrt #ENDIF# #SUNX86_64#EXTRALIBS = -lsocket -lnsl -lrt #ENDIF# #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# #ABSOFT_FORTRAN#TAU_FORTRANLIBS = -L$(EXTRADIR)/lib -lfio -lf90math -lU77 -lf77math -lfio #ENDIF# #LAHEY_FORTRAN#TAU_FORTRANLIBS = $(EXTRADIR)/lib/fj90rt0.o -L$(EXTRADIR)/lib -lfj9i6 -lfj9f6 -lfj9e6 -lfccx86_6a #ENDIF# #LAHEY64_FORTRAN#TAU_FORTRANLIBS = $(EXTRADIR)/lib64/fj90rt0.o -L$(EXTRADIR)/lib64 -lfj90f -lfj90i -lelf #ENDIF# #HITACHI_FORTRAN#TAU_FORTRANLIBS = -lf90 -lhf90math #ENDIF# #NEC_FORTRAN#TAU_FORTRANLIBS = -f90lib #ENDIF# #COMPAQ_GUIDEF90#TAU_FORTRANLIBS = $(EXTRADIR)/lib/cmplrs/fort90/for_main.o -lfor #ENDIF# #HITACHI#TAU_HITACHI_EXTRA = -L/usr/local/lib -llrz32 #ENDIF# ## To use the standard F90 linker instead of TAU_LINKER + TAU_FORTRANLIBS, add #GNU#TAU_CXXLIBS = -L$(TAUGCCLIBDIR) $(TAUGCCLIBOPTS) -lstdc++ $(TAU_GCCLIB) #ENDIF# #GNU#TAU_GNUCXXLIBS = -L$(TAUGCCLIBDIR) -lstdc++ $(TAU_GCCLIB) #ENDIF# #OPEN64ORC#TAU_CXXLIBS = -lstdc++ #ENDIF# #PATHSCALE_FORTRAN#TAU_CXXLIBS = -lstdc++ #ENDIF# #LAHEY_FORTRAN#TAU_CXXLIBS = $(TAU_GNUCXXLIBS) /usr/lib/libc.a #ENDIF# #NAGWARE_FORTRAN#TAU_CXXLIBS = $(TAU_GNUCXXLIBS) /usr/lib/libc.a #ENDIF# TAU_CXXLIBS = -lstd -lC #ENDIF##PGI# #CRAYCNL#TAU_CXXLIBS = -L$(EXTRADIR)/lib -lstd -lC -lpgc #ENDIF# #CRAYX1CC#TAU_CXXLIBS = -L/opt/ctl/CC/CC/lib -lC #ENDIF# TAU_SGI_INIT = /usr/lib32/c++init.o #ENABLE64BIT#TAU_SGI_INIT = /usr/lib64/c++init.o #ENDIF# #ENABLEN32BIT#TAU_SGI_INIT = /usr/lib32/c++init.o #ENDIF# #ENABLE32BIT#TAU_SGI_INIT = /usr/lib/c++init.o #ENDIF# #SGICC#TAU_CXXLIBS = $(TAU_SGI_INIT) -lC #ENDIF# #APPLECXX#TAU_CXXLIBS = -lstd -lC #ENDIF# #SOL2#TAU_CXXLIBS = -lCstd -lCrun #ENDIF# #SOL2CC#TAU_CXXLIBS_SUN_OPTERON = -lCstd -lCrun -lm #ENDIF# #SUNCC#TAU_CXXLIBS_SUNCC = -lCstd -lCrun #ENDIF# #SUN386I#TAU_CXXLIBS = $(TAU_CXXLIBS_SUN_OPTERON) #ENDIF# #SUNCC#TAU_CXXLIBS = $(TAU_CXXLIBS_SUNCC) #ENDIF# #SUNX86_64#TAU_CXXLIBS = $(TAU_CXXLIBS_SUN_OPTERON) #ENDIF# #FUJITSU_SOLARIS#TAU_CXXLIBS = -lstd -lstdm #ENDIF# #PPC64#TAU_XLCLIBS = -L$(EXTRADIRCXX)/$(TAU_FORLIBDIR) -libmc++ -lstdc++ #ENDIF# #IBMXLCAPPLE#TAU_FORLIBDIR =lib #ENDIF# #IBMXLCAPPLE#TAU_XLCLIBS = -L$(EXTRADIRCXX)/$(TAU_FORLIBDIR) -libmc++ -lstdc++ #ENDIF# #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# #BGP#TAU_XLCLIBS = -L$(EXTRADIRCXX)/bglib -libmc++ -lstdc++ #ENDIF# #SP1#TAU_XLCLIBS = -lC #ENDIF# #USE_IBMXLC#TAU_CXXLIBS = $(TAU_XLCLIBS) #ENDIF# #USE_DECCXX#TAU_CXXLIBS = -lcxxstd -lcxx #ENDIF# #USE_INTELCXX#TAU_CXXLIBS_INTEL = -lcprts -lPEPCF90 #ENDIF# #USE_INTELCXX#TAU_CXXLIBS_INTEL = -lcprts #ENDIF# #INTELIFORT#TAU_CXXLIBS_INTEL = -lcprts #ENDIF# #INTEL81FIX#TAU_CXXLIBS_INTEL = -L$(TAUGCCLIBDIR) $(TAUGCCLIBOPTS) -lstdc++ $(TAU_GCCLIB) -lcxa -lunwind#ENDIF# #INTEL10FIX#TAU_CXXLIBS_INTEL = -L$(TAUGCCLIBDIR) $(TAUGCCLIBOPTS) -lstdc++ $(TAU_GCCLIB) #ENDIF# #INTELCXXLIBICC#TAU_CXXLIBS_INTEL = -lcprts #ENDIF# #USE_INTELCXX#TAU_CXXLIBS = $(TAU_CXXLIBS_INTEL) #ENDIF# #APPLECXX#TAU_CXXLIBS = -lstdc++ -L$(TAUGCCLIBDIR) $(TAUGCCLIBOPTS) -lgcc_s.1 -lSystemStubs #ENDIF# # EXTERNAL PACKAGES: VAMPIRTRACE #VAMPIRTRACE#TAU_LINKER_OPT3 = -L$(VAMPIRTRACEDIR)/lib -L$(VAMPIRTRACEDIR)/vtlib -lvt -lotf -lz $(TAU_HITACHI_EXTRA) #ENDIF# #VAMPIRTRACEMPI#TAU_LINKER_OPT3 = -L$(VAMPIRTRACEDIR)/lib -L$(VAMPIRTRACEDIR)/vtlib -lvt.mpi -lotf -lz $(TAU_HITACHI_EXTRA) #ENDIF# #VAMPIRTRACEOMPI#TAU_LINKER_OPT3 = -L$(VAMPIRTRACEDIR)/lib -L$(VAMPIRTRACEDIR)/vtlib -lvt.ompi -lotf -lz $(TAU_HITACHI_EXTRA) #ENDIF# #VAMPIRTRACEOMP#TAU_LINKER_OPT3 = -L$(VAMPIRTRACEDIR)/lib -L$(VAMPIRTRACEDIR)/vtlib -lvt.omp -lotf -lz $(TAU_HITACHI_EXTRA) #ENDIF# # EXTERNAL PACKAGES: EPILOG #EPILOG#TAU_LINKER_OPT3 = -L$(EPILOGLIBDIR) -lelg $(EPILOGEXTRALINKCMD) $(TAU_HITACHI_EXTRA) #ENDIF# #EPILOGMPI#TAU_LINKER_OPT3 = -L$(EPILOGLIBDIR) -lelg.mpi $(EPILOGEXTRALINKCMD) $(TAU_HITACHI_EXTRA) #ENDIF# #EPILOGOMPI#TAU_LINKER_OPT3 = -L$(EPILOGLIBDIR) -lelg.ompi $(EPILOGEXTRALINKCMD) $(TAU_HITACHI_EXTRA) #ENDIF# #EPILOGOMP#TAU_LINKER_OPT3 = -L$(EPILOGLIBDIR) -lelg.omp $(EPILOGEXTRALINKCMD) $(TAU_HITACHI_EXTRA) #ENDIF# # When using shared, we don't want -lelg.mpi or -lvt.mpi showing up #FORCESHARED#TAU_LINKER_OPT3=#ENDIF# TAU_LINKER_OPT4 = $(LEXTRA1) #HITACHI_OPENMP#TAU_LINKER_OPT4 = -lcompas -lpthreads -lc_r #ENDIF# #OPENMP#TAU_LINKER_OPT5 = -mp #ENDIF# #SOL2CC_OPENMP#TAU_LINKER_OPT5 = -xopenmp #ENDIF# #SUNCC_OPENMP#TAU_LINKER_OPT5 = -xopenmp=parallel #ENDIF# #GNU#TAU_LINKER_OPT5 = #ENDIF# #COMPAQCXX_OPENMP#TAU_LINKER_OPT5 = -omp #ENDIF# #IBMXLC_OPENMP#TAU_LINKER_OPT5 = -qsmp=omp #ENDIF# #OPEN64_OPENMP#TAU_LINKER_OPT5 = -mp #ENDIF# #GUIDE#TAU_LINKER_OPT5 = #ENDIF# #PGIOPENMP#TAU_LINKER_OPT5 = -mp #ENDIF# #INTELOPENMP#TAU_LINKER_OPT5 = -openmp #ENDIF# # MALLINFO needs -lmalloc on sgi, sun #SGIMP#TAU_LINKER_OPT6 = -lmalloc #ENDIF# #SOL2#TAU_LINKER_OPT6 = #ENDIF# #SUN386I#TAU_LINKER_OPT6 = -lmalloc #ENDIF# #SUNX86_64#TAU_LINKER_OPT6 = -lmalloc #ENDIF# # We need -lCio with SGI CC 7.4+ #SGICC#TAU_LINKER_OPT7 = -lCio #ENDIF# # charm #TAU_CHARM#TAU_LINKER_OPT8 = -lconv-core #ENDIF# # extra libs #SUN386I#TAU_LINKER_OPT9 = $(EXTRALIBS) #ENDIF# #SUNX86_64#TAU_LINKER_OPT9 = $(EXTRALIBS) #ENDIF# #SOL2#TAU_LINKER_OPT9 = $(ExTRALIBS) #ENDIF# #BGL#TAU_LINKER_OPT10 = -L/bgl/BlueLight/ppcfloor/bglsys/lib -lrts.rts #ENDIF# #USE_IBMXLC#TAU_IBM_PYTHON_SHFLAG = -Wl,-bI:$(PYTHON_LIBDIR)/config/python.exp -Wl,-einitpytau#ENDIF# #GNU#TAU_IBM_PYTHON_SHFLAG = -Wl,-bI:$(PYTHON_LIBDIR)/config/python.exp -Wl,-einitpytau#ENDIF# #KAI#TAU_IBM_PYTHON_SHFLAG = --backend -Wl,-bI:$(PYTHON_LIBDIR)/config/python.exp --backend -Wl,-einitpytau#ENDIF# #ACC#TAU_HPUX_PYTHON_SHFLAG = -lstd_v2 -lCsup_v2 -lm -lcl -lc #ENDIF# #USE_IBMXLC#TAU_IBM_LD_FLAGS = -binitfini:poe_remote_main #ENDIF# #GNU#TAU_IBM_LD_FLAGS = -Wl,-binitfini:poe_remote_main #ENDIF# #KAI#TAU_IBM_LD_FLAGS = --backend -binitfini:poe_remote_main #ENDIF# #PYTHON#TAU_IBM_SHFLAGS = $(TAU_IBM_PYTHON_SHFLAG) #ENDIF# #PYTHON#TAU_HPUX_SHFLAGS = $(TAU_HPUX_PYTHON_SHFLAG) #ENDIF# #SP1#TAU_EXTRA_LIBRARY_FLAGS = $(TAU_IBM_SHFLAGS) #ENDIF# #SOL2#TAU_EXTRA_LIBRARY_FLAGS = #ENDIF# #SGIMP#TAU_EXTRA_LIBRARY_FLAGS = -lmalloc #ENDIF# #HP#TAU_EXTRA_LIBRARY_FLAGS = $(TAU_HPUX_SHFLAGS) #ENDIF# TAU_MPI_WRAPPER_LIB= -L$(TAU_LIB_DIR) -lTauMpi$(TAU_CONFIG) #ENDIF##MPI# #EPILOGMPI#TAU_MPI_WRAPPER_LIB= #ENDIF# #EPILOGOMPI#TAU_MPI_WRAPPER_LIB= #ENDIF# ############################################## # Build TAU_LINKER_SHOPTS #GNU#TAU_IBM_LINKER_SHOPTS=-Wl,-brtl -Wl,-bexpall #ENDIF# #USE_IBMXLC#TAU_IBM_LINKER_SHOPTS= -brtl -bexpall #ENDIF# #KAI#TAU_IBM_LINKER_SHOPTS= --backend -brtl #ENDIF# #SP1#TAU_LINKER_SHOPTS= $(TAU_IBM_LINKER_SHOPTS) #ENDIF# ############################################## # MPI _r suffix check (as in libmpi_r) #MPI_R_SUFFIX#TAU_MPI_R_SUFFIX=_r #ENDIF# ############################################## # Flags to build a shared object: TAU_SHFLAGS #GNU#AR_SHFLAGS = -shared #ENDIF# AR_SHFLAGS = -shared #ENDIF##PGI# #SGICC#AR_SHFLAGS = -shared #ENDIF# #APPLECXX#AR_SHFLAGS = -dynamiclib -flat_namespace -undefined suppress #ENDIF# #SOL2#AR_SHFLAGS = -G #ENDIF# #SUN386I#AR_SHFLAGS = -G #ENDIF# #SUNX86_64#AR_SHFLAGS = -G #ENDIF# #USE_IBMXLC#AR_SHFLAGS = -G #ENDIF# #USE_DECCXX#AR_SHFLAGS = -shared #ENDIF# #USE_INTELCXX#AR_SHFLAGS = -shared #ENDIF# #ACC#AR_SHFLAGS = -b #ENDIF# TAU_SHFLAGS = $(AR_SHFLAGS) -o ############# RANLIB Options ############# TAU_RANLIB = echo "Built" #APPLECXX#TAU_RANLIB = ranlib #ENDIF# #IBMXLCAPPLE#TAU_RANLIB = ranlib #ENDIF# ############################################## TAU_AR = ar #ENDIF# #SP1#TAU_AR = ar -X32 #ENDIF# #IBM64#TAU_AR = ar -X64 #ENDIF# #PPC64#TAU_AR = ar #ENDIF# #IBM64LINUX#TAU_AR = ar #ENDIF# ############################################## # PDT OPTIONS # You can specify -pdtcompdir=intel -pdtarchdir=x86_64 # If nothing is specified, PDTARCHDIR uses TAU_ARCH PDTARCHDIRORIG=$(TAU_ARCH) PDTARCHITECTURE=x86_64 PDTARCHDIRFINAL=$(PDTARCHDIRORIG) #PDTARCHITECTURE#PDTARCHDIRFINAL=$(PDTARCHITECTURE)#ENDIF# PDTARCHDIR=$(PDTARCHDIRFINAL) #PDTARCH#PDTARCHDIR=$(PDTARCHDIRFINAL)/$(PDTCOMPDIR)#ENDIF# ############################################## PROFILEOPTS = $(PROFILEOPT1) $(PROFILEOPT2) $(PROFILEOPT3) $(PROFILEOPT4) \ $(PROFILEOPT5) $(PROFILEOPT6) $(PROFILEOPT7) $(PROFILEOPT8) \ $(PROFILEOPT9) $(PROFILEOPT10) $(PROFILEOPT11) $(PROFILEOPT12) \ $(PROFILEOPT13) $(PROFILEOPT14) $(PROFILEOPT15) $(PROFILEOPT16) \ $(PROFILEOPT17) $(PROFILEOPT18) $(PROFILEOPT19) $(PROFILEOPT20) \ $(PROFILEOPT21) $(PROFILEOPT22) $(PROFILEOPT23) $(PROFILEOPT24) \ $(PROFILEOPT25) $(PROFILEOPT26) $(PROFILEOPT27) $(PROFILEOPT28) \ $(PROFILEOPT29) $(PROFILEOPT30) $(PROFILEOPT31) $(PROFILEOPT32) \ $(PROFILEOPT33) $(PROFILEOPT34) $(PROFILEOPT35) $(PROFILEOPT36) \ $(PROFILEOPT37) $(PROFILEOPT38) $(PROFILEOPT39) $(PROFILEOPT40) \ $(PROFILEOPT41) $(PROFILEOPT42) $(PROFILEOPT43) $(PROFILEOPT44) \ $(PROFILEOPT45) $(PROFILEOPT46) $(PROFILEOPT47) $(PROFILEOPT48) \ $(PROFILEOPT49) $(PROFILEOPT50) $(PROFILEOPT51) $(PROFILEOPT52) \ $(PROFILEOPT53) $(PROFILEOPT54) $(PROFILEOPT55) $(PROFILEOPT56) \ $(PROFILEOPT57) $(PROFILEOPT58) $(PROFILEOPT59) $(PROFILEOPT60) \ $(PROFILEOPT61) $(PROFILEOPT62) $(PROFILEOPT63) $(PROFILEOPT64) \ $(PROFILEOPT65) $(PROFILEOPT66) $(PROFILEOPT67) $(PROFILEOPT68) \ $(PROFILEOPT69) $(PROFILEOPT70) $(PROFILEOPT71) $(PROFILEOPT72) \ $(PROFILEOPT73) $(PROFILEOPT74) $(PROFILEOPT75) $(PROFILEOPT76) \ $(TRACEOPT) ############################################## TAU_LINKER_OPTS = $(TAU_LINKER_OPT1) $(TAU_LINKER_OPT2) $(TAU_LINKER_OPT3) \ $(TAU_LINKER_OPT4) $(TAU_LINKER_OPT5) $(TAU_LINKER_OPT6) \ $(TAU_LINKER_OPT7) $(TAU_LINKER_OPT8) $(TAU_LINKER_OPT9) \ $(TAU_LINKER_OPT10) $(TAU_LINKER_OPT11) $(TAU_LINKER_OPT12) ############################################## ############# TAU Fortran #################### TAU_LINKER=$(TAU_CXX) #INTEL_FORTRAN##TAU_LINKER=$(TAU_F90) #ENDIF# #INTEL32_FORTRAN##TAU_LINKER=$(TAU_F90) #ENDIF# # Intel efc compiler acts as a linker - NO. Let C++ be the linker. ############################################## ############# TAU Options #################### TAUDEFS = $(PROFILEOPTS) TAUINC = -I$(TAU_INC_DIR) TAULIBS = $(TAUHELPER) -L$(TAU_LIB_DIR) -ltau$(TAU_CONFIG) $(TAU_LINKER_OPTS) TAUMPILIBS = $(TAU_MPI_LIB) TAUMPIFLIBS = $(TAU_MPI_FLIB) ### ACL S/W requirement TAU_DEFS = $(TAUDEFS) TAU_INCLUDE = -I$(TAU_INC_DIR) #PERFLIB#TAU_INCLUDE = -I$(PERFINCDIR) #ENDIF# #PERFLIB#TAU_DEFS = #ENDIF# #PERFLIB#TAU_COMPILER_EXTRA_OPTIONS=-optTau=-p #ENDIF# TAU_INCLUDE_MEMORY = -I$(TAU_INC_DIR)/Memory #IBMXLCAPPLE#TAU_INCLUDE_MEMORY = -I$(TAU_INC_DIR)/MemoryWrapper #ENDIF# #APPLECXX#TAU_INCLUDE_MEMORY = -I$(TAU_INC_DIR)/MemoryWrapper #ENDIF# TAU_LIBS = $(TAUHELPER) -L$(TAU_LIB_DIR) -ltau$(TAU_CONFIG) $(TAU_LINKER_OPTS) #PERFLIB#TAU_LIBS = #ENDIF# TAU_SHLIBS = $(TAUHELPER) -L$(TAU_LIB_DIR) -lTAUsh$(TAU_CONFIG) $(TAU_LINKER_OPTS) $(TAU_LINKER_SHOPTS) $(TAU_MPI_LIB) #PERFLIB#TAU_SHLIBS = #ENDIF# TAU_EXLIBS = $(TAUHELPER) -L$(TAU_LIB_DIR) -lTAU $(TAU_LINKER_OPTS) $(TAU_LINKER_SHOPTS) $(TAU_MPI_LIB) TAU_SHLIBS_NOSHOPTS = $(TAUHELPER) -L$(TAU_LIB_DIR) -lTAUsh$(TAU_CONFIG) $(TAU_LINKER_OPTS) TAU_DISABLE = $(TAUHELPER) -L$(TAU_LIB_DIR) -lTauDisable TAU_MPI_INCLUDE = $(TAU_MPI_INC) TAU_MPI_LIBS = $(TAU_MPI_LIB) TAU_MPI_FLIBS = $(TAU_MPI_FLIB) ## TAU TRACE INPUT LIBRARY (can build a trace converter using TAU TIL) TAU_TRACE_INPUT_LIB = -L$(TAU_LIB_DIR) -lTAU_traceinput$(TAU_CONFIG) ## Don't include -lpthread or -lsmarts. Let app. do that. ############################################# ## IBM SPECIFIC CHANGES TO TAU_MPI_LIBS #SP1#TAU_MPI_LDFLAGS = $(TAU_IBM_LD_FLAGS) #ENDIF# TAU_LDFLAGS = $(TAU_MPI_LDFLAGS) #ENDIF##MPI# #SP1#TAU_IBM_MPI_LIBS = $(TAU_MPI_LIB) -L$(TAU_MPILIB_DIR)/ip -lvtd$(TAU_MPI_R_SUFFIX) #ENDIF# #SP1#TAU_IBM_FMPI_LIBS = $(TAU_MPI_FLIB) -L$(TAU_MPILIB_DIR)/ip -lvtd$(TAU_MPI_R_SUFFIX) #ENDIF# #SP1#TAU_MPI_LIBS_FLAGS= $(TAU_IBM_MPI_LIBS) #ENDIF# #SP1#TAU_MPI_FLIBS_FLAGS = $(TAU_IBM_MPI_FLIBS) #ENDIF# TAU_MPI_LIBS_FLAGS = $(TAU_MPI_LIB) #ENDIF##MPI# TAU_MPI_FLIBS_FLAGS = $(TAU_MPI_FLIB) #ENDIF##MPI# TAU_MPI_LIBS = $(TAU_MPI_LIBS_FLAGS) #ENDIF##MPI# TAU_MPI_FLIBS = $(TAU_MPI_FLIBS_FLAGS) #ENDIF##MPI# #SP1#TAUMPILIBS = $(TAU_MPI_LIBS) #ENDIF# #SP1#TAUMPIFLIBS = $(TAU_MPI_FLIBS) #ENDIF# ############################################# #SHMEM#TAU_SHMEM_OBJS = TauShmemCray.o #ENDIF# #SP1#TAU_SHMEM_OBJS = TauShmemTurbo.o #ENDIF# #GPSHMEM#TAU_SHMEM_OBJS = TauShmemGpshmem.o #ENDIF# TAU_SHMEM_INCLUDE = $(TAU_SHMEM_INC) TAU_SHMEM_LIBS = -L$(TAU_PREFIX_INSTALL_DIR)/$(CONFIG_ARCH)/ -lTauShmem$(TAU_CONFIG) $(TAU_SHMEM_LIB) ############################################# # TAU COMPILER SHELL SCRIPT OPTIONS TAUCOMPILEROPTS= -optPdtDir="$(PDTDIR)/${PDTARCHDIR}"\ -optPdtCOpts="$(TAU_INCLUDE) $(TAU_DEFS) $(TAU_MPI_INCLUDE)"\ -optPdtCxxOpts="$(TAU_INCLUDE) $(TAU_DEFS) $(TAU_MPI_INCLUDE)"\ -optTauInstr="$(TAU_BIN_DIR)/tau_instrumentor" \ -optNoMpi \ -optOpariDir="$(OPARIDIR)" -optOpariTool="$(TAU_OPARI_TOOL)" \ -optTauCC="$(TAU_CC)" \ -optTauIncludes="$(TAU_INCLUDE) $(TAU_MPI_INCLUDE)" \ -optTauDefs="$(TAU_DEFS)" \ -optTauCompile="$(TAU_INCLUDE) $(TAU_MPI_INCLUDE) $(TAU_DEFS) "\ -optLinking="$(TAU_MPI_FLIBS) $(TAU_LIBS) $(TAU_LDFLAGS) $(TAU_CXXLIBS)"\ -optSharedLinking="$(TAU_MPI_FLIBS) $(TAU_EXLIBS) $(TAU_LDFLAGS) $(TAU_CXXLIBS)"\ $(TAU_COMPILER_EXTRA_OPTIONS) \ -optIncludeMemory="$(TAU_INCLUDE_MEMORY)" ############################################# TAU_SHAREDLIBS=$(TAUHELPER) -L$(TAU_LIB_DIR) -lTAU $(TAU_LINKER_OPTS) $(TAU_LINKER_SHOPTS) SHAREDEXTRAS= #FORCESHARED#SHAREDEXTRAS=-optSharedLinkReset="$(TAU_SHAREDLIBS) $(TAU_LDFLAGS) $(TAU_CXXLIBS) $(TAU_MPI_NOWRAP_FLIB)" -optShared #ENDIF# TAU_COMPILER=$(TAU_BIN_DIR)/tau_compiler.sh $(TAUCOMPILEROPTS) $(SHAREDEXTRAS) ############################################# # These options could be included in the application Makefile as #CFLAGS = $(TAUDEFS) $(TAUINC) # #LIBS = $(TAULIBS) # # To run the application without Profiling/Tracing use #CFLAGS = $(TAUINC) # Don't use TAUDEFS but do include TAUINC # Also ignore TAULIBS when Profiling/Tracing is not used. #############################################