Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-03 08:19:43

0001 # ===========================================================================
0002 #  Makefile photon_emission                           Chun Shen May 5, 2013
0003 # ===========================================================================
0004 ##
0005 ##  Environments :      MAIN    =       main sourcefile 
0006 ##
0007 ##  Usage :     (g)make [all]           compile the whole project               
0008 ##                      install         make all and copy binary to $INSTPATH
0009 ##                      clean           remove objectfiles in obj_$TYPE 
0010 ##                      distclean       remove all objectsfiles and binaries
0011 ##  
0012 
0013 CC := h5c++
0014 CFLAGS = -O3 -Wall
0015 
0016 RM              =       rm -f
0017 O               =       .o
0018 HDF5LD          = 
0019 HDF5FLAGS       = 
0020 LDFLAGS         =       $(CFLAGS)
0021 SYSTEMFILES     =       $(SRCGNU)
0022 
0023 # --------------- Files involved ------------------
0024 
0025 ifeq "$(MAIN)" ""
0026 MAIN            =       hydro_analysis.e
0027 endif
0028 
0029 SRC             =       main.cpp Hydroinfo_h5.cpp FluidcellStatistic.cpp \
0030             ParameterReader.cpp arsenal.cpp SurfaceFinder.cpp \
0031             cornelius.cpp Hydroinfo_MUSIC.cpp
0032 
0033 INC             =       Hydroinfo_h5.h Stopwatch.h FluidcellStatistic.h \
0034             ParameterReader.h arsenal.h SurfaceFinder.h cornelius.h \
0035                         Hydroinfo_MUSIC.h
0036 
0037 # -------------------------------------------------
0038 
0039 OBJDIR          =       obj
0040 SRCFILES        =       $(SRC) $(INC) GNUmakefile
0041 OBJECTS         =       $(addprefix $(OBJDIR)/, $(addsuffix $O, \
0042                         $(basename $(SRC))))
0043 TARGET          =       $(MAIN)
0044 INSTPATH        =       ../
0045 
0046 # --------------- Pattern rules -------------------
0047 
0048 $(OBJDIR)/%.o: %.cpp
0049         $(CC) $(CFLAGS) $(HDF5LD) -c $< -o $@
0050 
0051 %.cpp:
0052         if [ -f $@ ] ; then touch $@ ; else false ; fi
0053 
0054 # -------------------------------------------------
0055 
0056 .PHONY:         all mkobjdir clean distclean install
0057 
0058 all:            mkobjdir $(TARGET)
0059 
0060 help:
0061                 @grep '^##' GNUmakefile
0062 
0063 mkobjdir:       
0064                 -@mkdir -p $(OBJDIR)
0065 
0066 $(TARGET):      $(OBJECTS)      
0067                 $(CC) $(LDFLAGS) $(HDF5FLAGS) $(OBJECTS) -o $(TARGET)
0068 #               strip $(TARGET)
0069 
0070 clean:          
0071                 -rm $(OBJECTS)
0072 
0073 distclean:      
0074                 -rm $(TARGET)
0075                 -rm -r obj
0076 
0077 install:        $(TARGET)
0078                 cp $(TARGET) $(INSTPATH)
0079 
0080 # --------------- Dependencies -------------------
0081 main.cpp : Hydroinfo_h5.h Hydroinfo_MUSIC.h Stopwatch.h FluidcellStatistic.h ParameterReader.h
0082 Hydroinfo_h5.cpp : Hydroinfo_h5.h
0083 Hydroinfo_MUSIC.cpp : Hydroinfo_MUSIC.h
0084 FluidcellStatistic.cpp : FluidcellStatistic.h Hydroinfo_h5.h Hydroinfo_MUSIC.h
0085 ParameterReader.cpp : ParameterReader.h arsenal.h
0086 arsenal.cpp : arsenal.h
0087 SurfaceFinder.cpp : Hydroinfo_h5.h Hydroinfo_MUSIC.h ParameterReader.h SurfaceFinder.h cornelius.h
0088 cornelius.cpp : cornelius.h