File: makefile_parallel_C_ex.in

package info (click to toggle)
sundials 2.5.0-3
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd, stretch, wheezy
  • size: 10,312 kB
  • ctags: 12,897
  • sloc: ansic: 91,776; sh: 8,351; fortran: 2,943; makefile: 2,702
file content (78 lines) | stat: -rw-r--r-- 2,853 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
# -----------------------------------------------------------------
# $Revision: 1.2 $
# $Date: 2009/02/17 02:58:47 $
# -----------------------------------------------------------------
# Programmer: Radu Serban @ LLNL
# -----------------------------------------------------------------
# Copyright (c) 2007, The Regents of the University of California.
# Produced at the Lawrence Livermore National Laboratory.
# All rights reserved.
# For details, see the LICENSE file.
# -----------------------------------------------------------------
# Makefile for @SOLVER@ parallel examples
#
# This file is generated from a template using various variables
# set at configuration time. It can be used as a template for
# other user Makefiles.
#
# Note: if the solver was successfully configured with Blas/Lapack
# support, the Blas/Lapack libraries are specified through the 
# variable LIBRARIES_BL. Otherwise, this variable should contain
# an empty string. We include LIBRARIES_BL in the link line for
# all examples, even the parallel ones which obviously cannot 
# use the Lapack linear solver modules simply to address the case 
# in which the SUNDIALS libraries are shared objects. In that case, 
# the solver library references Lapack  symbols which must be 
# always resolved by linking against the Blas/Lapack libraries. 
# If only static SUNDIALS libraries have been built, it is not 
# required to link the Blas/Lapack libraries for the parallel 
# examples...
# -----------------------------------------------------------------

SHELL = @SHELL@

prefix       = @prefix@
exec_prefix  = @exec_prefix@
includedir   = @includedir@
libdir       = @libdir@

CPP         = @CPP@
CPPFLAGS    = @CPPFLAGS@
CC          = @CC@
CFLAGS      = @CFLAGS@
LDFLAGS     = @LDFLAGS@
LIBS        = @LIBS@
MPICC       = @MPICC@
MPI_INC_DIR = @MPI_INC_DIR@
MPI_LIB_DIR = @MPI_LIB_DIR@
MPI_LIBS    = @MPI_LIBS@
MPI_FLAGS   = @MPI_FLAGS@

INCLUDES = -I${includedir} -I${MPI_INC_DIR}
LIBRARIES = -l@SOLVER_LIB@ -lsundials_nvecparallel ${LIBS}
LIBRARIES_BL = @BLAS_LAPACK_LIBS@

EXAMPLES = @EXAMPLES@

OBJECTS = ${EXAMPLES:=.o}

# -----------------------------------------------------------------------------------------

.SUFFIXES : .o .c

.c.o :
	${MPICC} ${CPPFLAGS} ${CFLAGS} ${MPI_FLAGS} ${INCLUDES} -c $<

# -----------------------------------------------------------------------------------------

all: ${OBJECTS}
	@for i in ${EXAMPLES} ; do \
	  echo "${MPICC} -o $${i} $${i}.o ${MPI_FLAGS} ${CFLAGS} ${LDFLAGS} -L${libdir} ${LIBRARIES} -L${MPI_LIB_DIR} ${MPI_LIBS} ${LIBRARIES_BL}" ; \
	  ${MPICC} -o $${i} $${i}.o ${MPI_FLAGS} ${CFLAGS} ${LDFLAGS} -L${libdir} ${LIBRARIES} -L${MPI_LIB_DIR} ${MPI_LIBS} ${LIBRARIES_BL}; \
	done

clean:
	rm -f ${OBJECTS}
	rm -f ${EXAMPLES}

# -----------------------------------------------------------------------------------------