Advertisement
jwise77

macOS machine file

Jun 10th, 2023
130
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Make 5.92 KB | None | 0 0
  1. #=======================================================================
  2. #
  3. # FILE:        Make.mach.digit
  4. #
  5. # DESCRIPTION: Makefile settings for OSX
  6. #
  7. # AUTHOR:      Britton Smith (brittonsmith@gmail.com)
  8. #
  9. # DATE:        3-1-2012
  10. #
  11. #=======================================================================
  12.  
  13. MACH_TEXT  = Darwin (OSX)
  14. MACH_VALID = 1
  15. MACH_FILE  = Make.mach.digit
  16.  
  17. #-----------------------------------------------------------------------
  18. # Commands to run test executables
  19. #-----------------------------------------------------------------------
  20.  
  21.  
  22. #-----------------------------------------------------------------------
  23. # Install paths (local variables)
  24. #-----------------------------------------------------------------------
  25.  
  26. LOCAL_PACKAGES       = /opt/homebrew
  27.  
  28. LOCAL_LIBYT_INSTALL  = /Users/britton/Documents/work/research/simulation/enzo/libyt
  29. LOCAL_MPI_INSTALL    = /opt/homebrew
  30. LOCAL_FC_INSTALL     = /opt/homebrew
  31. LOCAL_HDF5_INSTALL   = $(LOCAL_PACKAGES)
  32. LOCAL_SZIP_INSTALL   = $(LOCAL_PACKAGES)
  33. LOCAL_HYPRE_INSTALL  = $(LOCAL_PACKAGES)
  34. LOCAL_JBPERF_INSTALL =
  35. LOCAL_PNG_INSTALL    = $(LOCAL_PACKAGES)
  36. LOCAL_PYTHON_INSTALL = /Users/britton/Documents/work/yt/yt-x86_64
  37. LOCAL_GRACKLE_INSTALL = /Users/britton/local/grackle-dev
  38.  
  39. #-----------------------------------------------------------------------
  40. # Compiler settings
  41. #-----------------------------------------------------------------------
  42.  
  43. MACH_CPP       = /usr/bin/cpp
  44.  
  45. # With MPI
  46.  
  47. MACH_CC_MPI    = $(LOCAL_MPI_INSTALL)/bin/mpicc
  48. MACH_CXX_MPI   = $(LOCAL_MPI_INSTALL)/bin/mpic++
  49. MACH_FC_MPI    = $(LOCAL_FC_INSTALL)/bin/gfortran
  50. MACH_F90_MPI   = $(LOCAL_FC_INSTALL)/bin/gfortran
  51. MACH_LD_MPI    = $(LOCAL_MPI_INSTALL)/bin/mpic++
  52.  
  53. # Without MPI
  54.  
  55. MACH_CC_NOMPI  = /opt/homebrew/bin/gcc  # C compiler when not using MPI
  56. MACH_CXX_NOMPI = /opt/homebrew/bin/g++ # C++ compiler when not using MPI
  57. MACH_FC_NOMPI  = $(LOCAL_FC_INSTALL)/bin/gfortran # Fortran 77 compiler when not using MPI
  58. MACH_F90_NOMPI = $(LOCAL_FC_INSTALL)/bin/gfortran # Fortran 90 compiler when not using MPI
  59. MACH_LD_NOMPI  = /opt/homebrew/bin/g++ # Linker when not using MPI
  60.  
  61. #-----------------------------------------------------------------------
  62. # Machine-dependent defines
  63. #-----------------------------------------------------------------------
  64.  
  65. # Note: When compiling against HDF5 version 1.8 or greater, you need to
  66. # compile HDF5 with --with-default-api-version=v16, or Enzo with
  67. # -DH5_USE_16_API.
  68.  
  69. MACH_DEFINES   = -DLINUX -DH5_USE_16_API -DOPTIMIZED_CTP -DEMBEDDED_PYTHON
  70.  
  71. #MACH_DEFINES  = -DOPTIMIZED_CTP \
  72. #                -DLINUX -DH5_USE_16_API -D__APPLE__ \
  73. #                -DENABLE_LOAD_BALANCE \
  74. #                -DMEM_TRACE  -DMEMORY_POOL -DGRID_MEMORY_POOL \
  75. #                -DHIERARCHY_MEMORY_POOL -DPROTOSUBGRID_MEMORY_POOL
  76.  
  77. #-----------------------------------------------------------------------
  78. # Compiler flag settings
  79. #-----------------------------------------------------------------------
  80.  
  81. #OMP_FLAGS = -fopenmp
  82. MACH_CPPFLAGS = -P -traditional $(OMP_FLAGS)
  83. MACH_CFLAGS   = $(OMP_FLAGS)
  84. MACH_CXXFLAGS = $(OMP_FLAGS)
  85. MACH_FFLAGS   = -std=legacy -fno-second-underscore -ffixed-line-length-none $(OMP_FLAGS)
  86. MACH_F90FLAGS = -std=legacy -fno-second-underscore -ffixed-line-length-none $(OMP_FLAGS)
  87. MACH_LDFLAGS  = $(OMP_FLAGS)
  88. MACH_OPENMP   = $(OMP_FLAGS)
  89.  
  90. #-----------------------------------------------------------------------
  91. # Precision-related flags
  92. #-----------------------------------------------------------------------
  93.  
  94. MACH_FFLAGS_INTEGER_32 =
  95. MACH_FFLAGS_INTEGER_64 = -fdefault-integer-8
  96. MACH_FFLAGS_REAL_32    =
  97. MACH_FFLAGS_REAL_64    = -fdefault-real-8 -fdefault-double-8
  98.  
  99. #-----------------------------------------------------------------------
  100. # Optimization flags
  101. #-----------------------------------------------------------------------
  102.  
  103. MACH_OPT_WARN        = -Wall -g
  104. MACH_OPT_DEBUG       = -g
  105. MACH_OPT_HIGH        = -O2
  106. MACH_OPT_AGGRESSIVE  = -O3 -fomit-frame-pointer -fstrict-aliasing \
  107.              -momit-leaf-frame-pointer -fno-tree-pre -falign-loops -g
  108.  
  109. #-----------------------------------------------------------------------
  110. # Includes
  111. #-----------------------------------------------------------------------
  112.  
  113. LOCAL_INCLUDES_MPI    = -I$(LOCAL_MPI_INSTALL)/include
  114. LOCAL_INCLUDES_HDF5   = -I$(LOCAL_HDF5_INSTALL)/include
  115. LOCAL_INCLUDES_HYPRE  = -I$(LOCAL_HYPRE_INSTALL)/include
  116. LOCAL_INCLUDES_JBPERF =
  117. LOCAL_INCLUDES_PAPI   = # PAPI includes
  118. #LOCAL_INCLUDES_PYTHON = -I$(LOCAL_PYTHON_INSTALL)/include/python2.7/ \
  119. #                        -I$(LOCAL_PYTHON_INSTALL)/lib/python2.7/site-packages/numpy/core/include
  120. LOCAL_INCLUDES_GRACKLE = -I$(LOCAL_GRACKLE_INSTALL)/include
  121.  
  122. MACH_INCLUDES         = $(LOCAL_INCLUDES_HDF5)
  123.  
  124. MACH_INCLUDES_MPI     = $(LOCAL_INCLUDES_MPI)
  125. MACH_INCLUDES_HYPRE   = $(LOCAL_INCLUDES_HYPRE)
  126. MACH_INCLUDES_JBPERF  = $(LOCAL_INCLUDES_JBPERF)
  127. MACH_INCLUDES_PYTHON  = $(LOCAL_INCLUDES_PYTHON)
  128. MACH_INCLUDES_GRACKLE  = $(LOCAL_INCLUDES_GRACKLE)
  129. MACH_INCLUDES_LIBYT  = -I$(LOCAL_LIBYT_INSTALL)/include
  130.  
  131. #-----------------------------------------------------------------------
  132. # Libraries
  133. #-----------------------------------------------------------------------
  134.  
  135. LOCAL_LIBS_MACH  = -L/opt/homebrew/Cellar/gcc/12.2.0/lib/gcc/current -lgfortran
  136. LOCAL_LIBS_HDF5  =  -L$(LOCAL_HDF5_INSTALL)/lib -lhdf5
  137. LOCAL_LIBS_PYTHON = $(LOCAL_PYTHON_INSTALL)/lib/python2.7/config/libpython2.7.a
  138. LOCAL_LIBS_HYPRE = -L$(LOCAL_HYPRE_INSTALL)/lib -lHYPRE
  139. LOCAL_LIBS_GRACKLE = -L$(LOCAL_GRACKLE_INSTALL)/lib -lgrackle
  140. LOCAL_LIBS_MPI = -L$(LOCAL_MPI_INSTALL)
  141.  
  142. MACH_LIBS        = $(LOCAL_LIBS_HDF5) $(LOCAL_LIBS_MACH)
  143. MACH_LIBS_MPI    = $(LOCAL_LIBS_MPI)
  144. MACH_LIBS_HYPRE  = $(LOCAL_LIBS_HYPRE)
  145. MACH_LIBS_JBPERF = $(LOCAL_LIBS_JBPERF)
  146. MACH_LIBS_PAPI    = $(LOCAL_LIBS_PAPI)
  147. MACH_LIBS_PYTHON  = $(LOCAL_LIBS_PYTHON)
  148. MACH_LIBS_GRACKLE = $(LOCAL_LIBS_GRACKLE)
  149. MACH_LIBS_LIBYT  = -L$(LOCAL_LIBYT_INSTALL)/lib -lyt
  150.  
  151. SHARED_OPT = -shared
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement