make.def_sun_mpich 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166
  1. #---------------------------------------------------------------------------
  2. #
  3. # SITE- AND/OR PLATFORM-SPECIFIC DEFINITIONS.
  4. #
  5. #---------------------------------------------------------------------------
  6. #---------------------------------------------------------------------------
  7. # Items in this file will need to be changed for each platform.
  8. # (Note these definitions are inconsistent with NPB2.1.)
  9. #---------------------------------------------------------------------------
  10. #---------------------------------------------------------------------------
  11. # Parallel Fortran:
  12. #
  13. # For CG, EP, FT, MG, LU, SP and BT, which are in Fortran, the following must
  14. # be defined:
  15. #
  16. # MPIF77 - Fortran compiler
  17. # FFLAGS - Fortran compilation arguments
  18. # FMPI_INC - any -I arguments required for compiling MPI/Fortran
  19. # FLINK - Fortran linker
  20. # FLINKFLAGS - Fortran linker arguments
  21. # FMPI_LIB - any -L and -l arguments required for linking MPI/Fortran
  22. #
  23. # compilations are done with $(MPIF77) $(FMPI_INC) $(FFLAGS) or
  24. # $(MPIF77) $(FFLAGS)
  25. # linking is done with $(FLINK) $(FMPI_LIB) $(FLINKFLAGS)
  26. #---------------------------------------------------------------------------
  27. #---------------------------------------------------------------------------
  28. # This is the fortran compiler used for MPI programs
  29. #---------------------------------------------------------------------------
  30. MPIF77 = mpif77
  31. # This links MPI fortran programs; usually the same as ${MPIF77}
  32. FLINK = $(MPIF77)
  33. #---------------------------------------------------------------------------
  34. # These macros are passed to the linker to help link with MPI correctly
  35. #---------------------------------------------------------------------------
  36. FMPI_LIB =
  37. #---------------------------------------------------------------------------
  38. # These macros are passed to the compiler to help find 'mpif.h'
  39. #---------------------------------------------------------------------------
  40. FMPI_INC =
  41. #---------------------------------------------------------------------------
  42. # Global *compile time* flags for Fortran programs
  43. #---------------------------------------------------------------------------
  44. FFLAGS = -fast
  45. # FFLAGS = -g
  46. #---------------------------------------------------------------------------
  47. # Global *link time* flags. Flags for increasing maximum executable
  48. # size usually go here.
  49. #---------------------------------------------------------------------------
  50. FLINKFLAGS = -fast
  51. #---------------------------------------------------------------------------
  52. # Parallel C:
  53. #
  54. # For IS, which is in C, the following must be defined:
  55. #
  56. # MPICC - C compiler
  57. # CFLAGS - C compilation arguments
  58. # CMPI_INC - any -I arguments required for compiling MPI/C
  59. # CLINK - C linker
  60. # CLINKFLAGS - C linker flags
  61. # CMPI_LIB - any -L and -l arguments required for linking MPI/C
  62. #
  63. # compilations are done with $(MPICC) $(CMPI_INC) $(CFLAGS) or
  64. # $(MPICC) $(CFLAGS)
  65. # linking is done with $(CLINK) $(CMPI_LIB) $(CLINKFLAGS)
  66. #---------------------------------------------------------------------------
  67. #---------------------------------------------------------------------------
  68. # This is the C compiler used for MPI programs
  69. #---------------------------------------------------------------------------
  70. MPICC = mpicc
  71. # This links MPI C programs; usually the same as ${MPICC}
  72. CLINK = $(MPICC)
  73. #---------------------------------------------------------------------------
  74. # These macros are passed to the linker to help link with MPI correctly
  75. #---------------------------------------------------------------------------
  76. CMPI_LIB =
  77. #---------------------------------------------------------------------------
  78. # These macros are passed to the compiler to help find 'mpi.h'
  79. #---------------------------------------------------------------------------
  80. CMPI_INC =
  81. #---------------------------------------------------------------------------
  82. # Global *compile time* flags for C programs
  83. #---------------------------------------------------------------------------
  84. CFLAGS = -fast
  85. # CFLAGS = -g
  86. #---------------------------------------------------------------------------
  87. # Global *link time* flags. Flags for increasing maximum executable
  88. # size usually go here.
  89. #---------------------------------------------------------------------------
  90. CLINKFLAGS = -fast
  91. #---------------------------------------------------------------------------
  92. # MPI dummy library:
  93. #
  94. # Uncomment if you want to use the MPI dummy library supplied by NAS instead
  95. # of the true message-passing library. The include file redefines several of
  96. # the above macros. It also invokes make in subdirectory MPI_dummy. Make
  97. # sure that no spaces or tabs precede include.
  98. #---------------------------------------------------------------------------
  99. # include ../config/make.dummy
  100. #---------------------------------------------------------------------------
  101. # Utilities C:
  102. #
  103. # This is the C compiler used to compile C utilities. Flags required by
  104. # this compiler go here also; typically there are few flags required; hence
  105. # there are no separate macros provided for such flags.
  106. #---------------------------------------------------------------------------
  107. CC = cc -g
  108. #---------------------------------------------------------------------------
  109. # Destination of executables, relative to subdirs of the main directory. .
  110. #---------------------------------------------------------------------------
  111. BINDIR = ../bin
  112. #---------------------------------------------------------------------------
  113. # Some machines (e.g. Crays) have 128-bit DOUBLE PRECISION numbers, which
  114. # is twice the precision required for the NPB suite. A compiler flag
  115. # (e.g. -dp) can usually be used to change DOUBLE PRECISION variables to
  116. # 64 bits, but the MPI library may continue to send 128 bits. Short of
  117. # recompiling MPI, the solution is to use MPI_REAL to send these 64-bit
  118. # numbers, and MPI_COMPLEX to send their complex counterparts. Uncomment
  119. # the following line to enable this substitution.
  120. #
  121. # NOTE: IF THE I/O BENCHMARK IS BEING BUILT, WE USE CONVERTFLAG TO
  122. # SPECIFIY THE FORTRAN RECORD LENGTH UNIT. IT IS A SYSTEM-SPECIFIC
  123. # VALUE (USUALLY 1 OR 4). UNCOMMENT THE SECOND LINE AND SUBSTITUTE
  124. # THE CORRECT VALUE FOR "length".
  125. # IF BOTH 128-BIT DOUBLE PRECISION NUMBERS AND I/O ARE TO BE ENABLED,
  126. # UNCOMMENT THE THIRD LINE AND SUBSTITUTE THE CORRECT VALUE FOR
  127. # "length"
  128. #---------------------------------------------------------------------------
  129. # CONVERTFLAG = -DCONVERTDOUBLE
  130. CONVERTFLAG = -DFORTRAN_REC_SIZE=1
  131. # CONVERTFLAG = -DCONVERTDOUBLE -DFORTRAN_REC_SIZE=length
  132. #---------------------------------------------------------------------------
  133. # The variable RAND controls which random number generator
  134. # is used. It is described in detail in Doc/README.install.
  135. # Use "randi8" unless there is a reason to use another one.
  136. # Other allowed values are "randi8_safe", "randdp" and "randdpvec"
  137. #---------------------------------------------------------------------------
  138. RAND = randi8
  139. # The following is highly reliable but may be slow:
  140. # RAND = randdp