diff --git a/src/Makefile b/src/Makefile index 1865e14..678aa4f 100644 --- a/src/Makefile +++ b/src/Makefile @@ -1,120 +1,120 @@ .DEFAULT_GOAL := all ifeq ($(PLATFORM),) $(error Please specify the env variable PLATFORM (mac, intel)) else $(info *** Using $(PLATFORM).mk ***) include $(PLATFORM).mk endif include .depend PROG = fennecs SRCS = main.f90 basic_mod.f90 newrun.f90 restart.f90 \ auxval.f90 inital.f90 resume.f90 start.f90 diagnose.f90 \ stepon.f90 tesend.f90 endrun.f90 chkrst.f90 mv2bk.f90 \ constants.f90 fields_mod.f90 beam_mod.f90 \ mpihelper_mod.f90 sort_mod.f90 distrib_mod.f90 \ maxwsrce_mod.f90 celldiag_mod.f90 geometry_mod.f90 \ ../dependencies/random/random_mod.f90 neutcol_mod.f90 particletypes_mod.f90 \ splinebound_mod.f90 weighttypes_mod.f90 psupply_mod.f90 \ ion_induced_mod.f90 materials_mod.f90 ../dependencies/incomplete_gamma/incomplete_gamma_mod.f90 \ magnet_mod.f90 ../dependencies/elliptic/elliptic_mod.f90 SRCS_C = extra.c -SRCS_F = ../dependencies/random/random.f ../dependencies/random/randother.f +SRCS_F = MKDIR_P = mkdir -p OUT_DIR = release F90FLAGS += -I$(BSPLINES)/include -I$(FUTILS)/include \ -I$(MUMPS)/include -I../ -I../dependencies/**/ CCFLAGS += -O3 LDFLAGS += -L$(BSPLINES)/lib -L$(FUTILS)/lib -L${HDF5}/lib -L${HDF5}/lib \ -L$(MUMPS)/lib -L$(PARMETIS)/lib -L../dependencies/extlibs/ LIBS += -lbsplines -lpppack -lfutils -lhdf5_fortran -lhdf5 -lz $(MUMPSLIBS) -lpputils2 ifeq ($(USE_X),) F90FLAGS+=-DUSE_X=0 else $(info *** Using Xgrafix ***) LIBS+=-lXGF -lXGC -lX11 -lSWIG LDFLAGS+=-L/usr/local/xgrafix_1.2/src-double F90FLAGS+=-DUSE_X=1 SRCS+=xg_mod.f90 endif OBJS =${SRCS_F:.f=.o} ${SRCS:.f90=.o} ${SRCS_F90:.F90=.o} ${SRCS_C:.c=.o} FPP =${SRCS:.f90=.i90} #OBJS_ =$(addprefix ./$(OUT_DIR)/,$(OBJS)) debug: F90FLAGS += $(DEBUGFLAGS) debug: OUT_DIR=debug debug: all profile: F90FLAGS+=$(PROFILEFLAGS) profile: LDFLAGS+= $(PROFILEFLAGS) profile: OUT_DIR=profile profile: all $(info *** Using $(OBJS) ***) .PHONY: directories clean debug profile all: directories $(PROG) $(PROG): $(OBJS) $(F90) $(LDFLAGS) $(F90FLAGS) -o $@ $(OBJS) $(LIBS) tags: etags *.f90 clean: rm -f $(OBJS) *.mod $(FPP) *_genmod* distclean: clean rm -f $(PROG) *~ a.out *.o TAGS extra.o: extra.c ifeq ($(USE_X),) diagnose.o : diagnose.f90 fields_mod.o beam_mod.o basic_mod.o else diagnose.o : diagnose.f90 fields_mod.o xg_mod.o beam_mod.o basic_mod.o endif directories: ${OUT_DIR} ${OUT_DIR}: ${MKDIR_P} ${OUT_DIR} .SUFFIXES: $(SUFFIXES) .f .f90 .c %.o: %.f $(F90) $(F90FLAGS) -MD -c -o $@ $< %.o: %.f90 $(F90) $(F90FLAGS) -MD -c -o $@ $< %.o: %.c $(CC) $(CCFLAGS) -c -o $@ $< #%.o: %.f # $(F90) $(F90FLAGS) -c -o $@ $< #%.o: %.f90 # $(F90) $(F90FLAGS) -c -o $@ $< depend .depend .depend_rel .depend_deb : makedepf90 ../dependencies/**/*.[fF]90 *.[fF]90 *.c > .depend