-
Notifications
You must be signed in to change notification settings - Fork 3
/
fobos
79 lines (71 loc) · 1.8 KB
/
fobos
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
79
[modes]
modes = gnu-shared gnu-static intel-shared intel-static tests
[common-variables]
$CFLAGS_GNU = -c -Ofast
$LFLAGS_GNU = -Ofast
$CFLAGS_GNU_SHARED = -fPIC
$LFLAGS_GNU_SHARED = -Wl,--no-undefined -Wl,-soname,libflogging.so.1
$CFLAGS_INTEL = -c -fast
$LFLAGS_INTEL = -fast
$CFLAGS_INTEL_SHARED = -fpic
$LFLAGS_INTEL_SHARED = -Wl,--no-undefined -Wl,-soname,libflogging.so.1
$STATIC_LIB = libflogging.a
$SHARED_LIB = libflogging.so.1.0.1
[gnu-shared]
template = template-build
help = Compile to a shared library using gfortran
compiler = gnu
mklib = shared
cflags = $CFLAGS_GNU $CFLAGS_GNU_SHARED
lflags = $LFLAGS_GNU $LFLAGS_GNU_SHARED
output = $SHARED_LIB
[gnu-static]
template = template-build
help = Compile to a static library using gfortran
compiler = gnu
mklib = static
cflags = $CFLAGS_GNU
lflags = $LFLAGS_GNU
output = $STATIC_LIB
[intel-shared]
template = template-build
help = Compile to a shared library using ifort
compiler = intel
mklib = shared
cflags = $CFLAGS_INTEL $CFLAGS_INTEL_SHARED
lflags = $LFLAGS_INTEL $LFLAGS_INTEL_SHARED
output = $SHARED_LIB
[intel-static]
template = template-build
help = Compile to a static library using ifort
compiler = intel
mklib = static
cflags = $CFLAGS_INTEL
lflags = $LFLAGS_INTEL
output = $STATIC_LIB
[tests]
help = Builds the unit tests. Not guaranteed to work.
compiler = gnu
src = ./tests
build_dir = ./tests_build
vlibs = ./build/libflogging.a
include = ./build/include ${PFUNIT}/mod
lib_dir = ${PFUNIT}/lib ${LOCAL_ROOT}/lib
ext_libs = pfunit face
cflags = -c -g -Og
lflags = -g -Og
target = driver.F90
output = tests
colors = True
[template-build]
src = ./src
build_dir = ./build
obj_dir = obj
mod_dir = include
ext_libs = face
target = logging.f90
colors = True
cflags_heritage = True
[rule-gcov]
help = Generate coverage information
rule_1 = gcov ./build/obj/*.gcno -pb