build.mk.sample 2.85 KB
Newer Older
1
2
3
4
# -----------------------------------------------------------------------------
# A Sample build.mk
#
# Uncomment one of the following BuildFlavour settings to get the desired
5
# overall build type.
6

7
# -------- Build profiles -----------------------------------------------------
8
9
# Uncomment one of these to select a build profile below:

Simon Marlow's avatar
Simon Marlow committed
10
# Full build with max optimisation and everything enabled (very slow build)
11
12
#BuildFlavour = perf

13
14
15
# As above but build GHC using the LLVM backend
#BuildFlavour = perf-llvm

Luke Iannini's avatar
Luke Iannini committed
16
17
18
# Perf build configured for a cross-compiler
#BuildFlavour = perf-cross

Simon Marlow's avatar
Simon Marlow committed
19
# Fast build with optimised libraries, no profiling (RECOMMENDED):
20
21
#BuildFlavour = quick

22
23
24
# Fast build with optimised libraries, no profiling, with LLVM:
#BuildFlavour = quick-llvm

25
26
27
# Fast build configured for a cross compiler
#BuildFlavour  = quick-cross

Simon Marlow's avatar
Simon Marlow committed
28
29
30
31
32
# Even faster build.  NOT RECOMMENDED: the libraries will be
# completely unoptimised, so any code built with this compiler
# (including stage2) will run very slowly:
#BuildFlavour = quickest

33
34
35
# Profile the stage2 compiler:
#BuildFlavour = prof

36
37
38
39
40
41
# A development build, working on the stage 1 compiler:
#BuildFlavour = devel1

# A development build, working on the stage 2 compiler:
#BuildFlavour = devel2

42
43
44
45
46
47
48
49
50
51
52
# A build with max optimisation that still builds the stage2 compiler
# quickly. Compiled code will be the same as with "perf". Programs
# will compile more slowly.
#BuildFlavour = bench

# As above but build GHC using the LLVM backend
#BuildFlavour = bench-llvm

# Bench build configured for a cross-compiler
#BuildFlavour = bench-cross

53
54
55
56
57
58
59
# Use the same settings as validate.
#BuildFlavour = validate

ifneq "$(BuildFlavour)" ""
include mk/flavours/$(BuildFlavour).mk
endif

60
# -------- Miscellaneous variables --------------------------------------------
Ian Lynagh's avatar
Ian Lynagh committed
61

62
# Set to V = 0 to get prettier build output.
63
64
# Please use V=1 (the default) when reporting GHC bugs.
#V=0
65

66
67
# Should all enabled warnings (see mk/warnings.mk) be turned into errors while
# building stage 2?
68
69
#WERROR=-Werror

70
71
72
73
74
75
76
77
# After stage 1 and the libraries have been built, you can uncomment this line:
#stage=2

# Then stage 1 will not be touched by the build system, until
# you comment the line again.  This is a useful trick for when you're
# working on stage 2 and want to freeze stage 1 and the libraries for
# a while.

78
79
80
81
# Build the "extra" packages (see ./packages). This enables more tests. See:
# https://ghc.haskell.org/trac/ghc/wiki/Building/RunningTests/Running#AdditionalPackages
#BUILD_EXTRA_PKGS=YES

82
83
# Uncomment the following line to enable building DPH
#BUILD_DPH=YES
84

85
86
87
88
# Uncomment the following to force `integer-gmp` to use the in-tree GMP 5.0.4
# (other sometimes useful configure-options: `--with-gmp-{includes,libraries}`)
#libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-intree-gmp

89
# Don't strip debug and other unneeded symbols from libraries and executables.
90
STRIP_CMD = :