Révision 12 src/Makefile

Makefile (revision 12)
1 1
################### Makefile for Path ############
2
# (C) PFL 2008
2
# (C) PFL 2008-2014
3 3
#################################################
4 4
# Change the value of Machine before compiling
5 5
# You might also have to edit the location of
......
26 26
FreeF=-FR
27 27
endif
28 28

  
29

  
30 29
ifeq ($(Machine),g95)
31 30
# Flags for g95 
32 31
COMP=g95 -g   -Wall -fbounds-check
......
41 40
ifeq ($(Machine),gfortran)
42 41
# Flags for gfortran
43 42
COMP=gfortran  -pedantic -std=gnu 
44
#COMP=g95  -fbounds-check -g -ftrace=full -ftrace=frame  -save-temps
45 43
F90=${COMP}
46 44
F77=${COMP}
47 45
LIBMATH= -llapack -lblas
......
49 47
FreeF=-ffree-form
50 48
endif
51 49

  
52

  
53 50
ifeq ($(Machine),pgf)
54 51
# Flags for PGF
55 52
COMP=pgf90
......
144 141
FreeF=-FR
145 142
endif
146 143

  
147

  
148

  
149
ifeq ($(Machine),arqP)
150
# Flags for arq Ifort
151
COMP=ifort
152
#F90=${COMP}   -g -check bounds  -check format -check uninit  -traceback
153
F90=${COMP}   -g -check all  -traceback
154
F77=${F90}
155
#F90=${COMP}  
156
LIBMATH= -L/opt/intel/Compiler/11.1/064/mkl/lib/64  \
157
  -Wl,--start-group -lmkl_intel_lp64 -lmkl_sequential \
158
           -lmkl_core -Wl,--end-group
159
LINK=${COMP} -lguide -lpthread   -L/usr/lib/
160
FreeF=-FR
161
endif
162

  
163 144
ifeq ($(Machine),arqg)
164 145
# Flags for arq GFortran
165 146
COMP=gfortran -g -fbacktrace -fbounds-check -Wall -Wextra
166 147
F90=${COMP}  
167 148
F77=${F90}
168
#F90=${COMP}  
169
F90=${COMP}
170 149
LIBMATH= -llapack -lblas
171 150
LINK=${COMP}  -L/usr/lib/  
172 151
FreeF=-ffree-form
......
233 212
      ReadInput_mopac.f90 \
234 213
      ReadInput_siesta.f90 \
235 214
      ReadAnaList.f90 \
215
      Set_FileDelim.f90 \
236 216
      PrintAnaList.f90 \
237 217
      AnaPath.f90 \
238 218
      AnalyzeGeom.f90 \
......
265 245
      egrad_test_2D.f90 \
266 246
      egrad_vasp.f90 \
267 247
      egrad_turbomole.f90 \
268
      egrad_chamfre.f90 \
269 248
      egrad_LEPS.f90 \
270 249
      CalcHess.f90 \
271 250
      Hupdate_all.f90 \
......
292 271
      Space_GEDIIS_all.f90 \
293 272
      Space_all.f90 \
294 273
      freemv.f90 \
295
      Mat_util.f90 \
296
      refsor.f90 \
297
      Ginvse.f90
274
      Mat_util.f90 
298 275

  
299 276
SRC0= ConvertNumAt.f90 \
300 277
      CheckPeriodicBound.f90 \
......
310 287
      bib_oper.f90 \
311 288
      VectorPer.f90 \
312 289
      ZmatBuild.f90 \
290
      WriteMixed_Gaussian.f90 \
313 291
      CalcCnct.f90 \
314 292
      ConvXyzZmat.f90 \
315 293
      ConvXyzMixed.f90 \
......
326 304
      Mixed2cart.f90 \
327 305
      Write_path.f90  \
328 306
      Write_vasp.f90  \
329
      Std_ori.f90 \
330
      Tensor.f90 \
331
      cmshft.f90 \
332 307
      sinangle.f90 \
333 308
      Header.f90 \
334 309
      gaussj.f90  \
......
339 314

  
340 315
MOD = VarTypes.mod \
341 316
      Path_module.mod \
342
      Io_module.mod  \
343
      m_mrgrnk.mod
317
      Io_module.mod 
344 318
      
345 319
MODo = $(MOD:.mod=.o)
346 320
MODSRC = $(MOD:.mod=.f90)
......
350 324
EXAMPLES = Path.valid  parameter.dat
351 325

  
352 326

  
353
###############################################################
354
#
355
# For now, we also give Lapack and Blas source files in case
356
# the libraries are not found by the user
357
#
358
###############################################################
359
SRCLAPACKD=$(wildcard ./lapack/double/*.f )
360
SRCLAPACKU=$(wildcard ./lapack/util/*.f )
361
SRCBLAS=$(wildcard ./blas/*.f )
362

  
363
OBJLAPACK=$(SRCLAPACKD:.f=.o) \
364
        $(SRCLAPACKU:.f=.o)
365

  
366
OBJBLAS=$(SRCBLAS:.f=.o)
367

  
368 327
all: path utils
369 328

  
370 329
install: 
......
378 337
	@echo ""
379 338
	@echo "Path.exe has been created."
380 339

  
381
path_noL: ${MODo} ${OBJ} lapack blas
382
	${LINK} -o Path.exe ${OBJ} ${MODo}  ./lapack/lapack.a ./blas/blas.a
340
path_noL: ${MODo} ${OBJ} 
341
	${LINK} -o Path.exe ${OBJ} ${MODo}  ./liblapack.a ./librefblas.a
383 342
	@echo ""
384 343
	@echo "Path.exe has been created."
385 344

  
......
395 354
xyz2path: ../utils/Xyz2Path.f90 ../utils/Xyz2Path.param 
396 355
	${F90} -o ../utils/xyz2path ../utils/Xyz2Path.f90
397 356

  
398
tgz:  ${SRC0} ${SRC} Makefile ${EXAMPLES} ${MODSRC} ${SRCLAPACKD} ${SRCLAPACKU} ${SRCBLAS} 
399
	tar -cvf OpenPath_${Version}.tar ${SRC0} ${SRC} Makefile ${EXAMPLES} ${MODSRC}
400
	gzip OpenPath_${Version}.tar 
401
	mv  OpenPath_${Version}.tar.gz OpenPath_${Version}.tgz
402
	@echo "OpenPath_${Version}.tgz  has been created."
403

  
404
lapack: ${OBJLAPACK} 
405
	ar rcs ./lapack/lapack.a ${OBJLAPACK}
406

  
407
blas: ${OBJBLAS}
408
	ar rcs ./blas/blas.a ${OBJBLAS}
409

  
410 357
clean:
411
	rm -f *~ "#"* *.s ${OBJ} *.mod  ${MODo} ${OBJLAPACK} ${OBJBLAS}  
358
	rm -f *~ "#"* *.s ${OBJ} *.mod  ${MODo}
412 359

  
413 360
veryclean: clean
414
	rm -f Path.exe ./lapack/lapack.a  ./blas/blas.a ../utils/xyz2scan ../utils/xyz2path
361
	rm -f Path.exe ../utils/xyz2scan ../utils/xyz2path
415 362

  
416 363
%.o : %.mod
417 364

  

Formats disponibles : Unified diff