GNUmakefile 1.69 KB
Newer Older
1
2
# Makefile template for Frama-C/Eva case studies.
# For details and usage information, see the Frama-C User Manual.
3

4
### Prologue. Do not modify this block. #######################################
5
6
7
8
9
-include path.mk # path.mk contains variables specific to each user
                 # (e.g. FRAMAC, FRAMAC_GUI) and should not be versioned. It is
                 # an optional include, unnecessary if frama-c is in the PATH.
FRAMAC ?= frama-c # FRAMAC is defined in path.mk when it is included, but the
                  # user can override it in the command-line.
10
include $(shell $(FRAMAC)-config -scripts)/prologue.mk
11
12
###############################################################################

13
# Edit below as needed. Suggested flags are optional.
14
15

MACHDEP = x86_64
16

17
## Preprocessing flags (for -cpp-extra-args)
18
CPPFLAGS    += \
19

20
## General flags
21
FCFLAGS     += \
22
  -json-compilation-database ../compile_commands.json \
23
  -main eva_main \
24
  -add-symbolic-path=.:.. \
25
26
27
  -kernel-warn-key annot:missing-spec=abort \
  -kernel-warn-key typing:implicit-function-declaration=abort \

28
## Eva-specific flags
29
30
31
EVAFLAGS    += \
  -eva-warn-key builtins:missing-spec=abort \

32
## GUI-only flags
33
34
FCGUIFLAGS += \
  -add-symbolic-path=.:.. \
35

36
37
## Analysis targets (suffixed with .eva)
TARGETS = fc_script_main.eva
38

39
40
41
42
43
44
45
46
### Each target <t>.eva needs a rule <t>.parse with source files as prerequisites
fc_script_main.parse: \
  fc_stubs.c \
  ../for-find-fun.c \
  ../for-find-fun2.c \
  ../main.c \
  ../main2.c \
  ../main3.c \
47

48
### Epilogue. Do not modify this block. #######################################
49
include $(shell $(FRAMAC)-config -scripts)/epilogue.mk
50
###############################################################################