Arm64: build.mk

File build.mk, 3.0 KB (added by hypoon, 4 years ago)

My build.mk file for cross-compiling

Line 
1# -----------------------------------------------------------------------------
2# A Sample build.mk
3#
4# Uncomment one of the following BuildFlavour settings to get the desired
5# overall build type.
6
7# -------- Build profiles -----------------------------------------------------
8# Uncomment one of these to select a build profile below:
9
10# Full build with max optimisation and everything enabled (very slow build)
11#BuildFlavour = perf
12
13# As above but build GHC using the LLVM backend
14#BuildFlavour = perf-llvm
15
16# Perf build configured for a cross-compiler
17#BuildFlavour = perf-cross
18
19# Fast build with optimised libraries, no profiling (RECOMMENDED):
20BuildFlavour = quick
21
22# Fast build with optimised libraries, no profiling, with LLVM:
23#BuildFlavour = quick-llvm
24
25# Fast build configured for a cross compiler
26#BuildFlavour  = quick-cross
27
28# Even faster build.  NOT RECOMMENDED: the libraries will be
29# completely unoptimised, so any code built with this compiler
30# (including stage2) will run very slowly:
31#BuildFlavour = quickest
32
33# Profile the stage2 compiler:
34#BuildFlavour = prof
35
36# A development build, working on the stage 1 compiler:
37#BuildFlavour = devel1
38
39# A development build, working on the stage 2 compiler:
40#BuildFlavour = devel2
41
42# A build with max optimisation that still builds the stage2 compiler
43# quickly. Compiled code will be the same as with "perf". Programs
44# will compile more slowly.
45#BuildFlavour = bench
46
47# As above but build GHC using the LLVM backend
48#BuildFlavour = bench-llvm
49
50# Bench build configured for a cross-compiler
51#BuildFlavour = bench-cross
52
53# Use the same settings as validate.
54#BuildFlavour = validate
55
56ifneq "$(BuildFlavour)" ""
57include mk/flavours/$(BuildFlavour).mk
58endif
59
60# -------- Miscellaneous variables --------------------------------------------
61
62# Set to V = 0 to get prettier build output.
63# Please use V=1 (the default) when reporting GHC bugs.
64#V=0
65
66# Should all enabled warnings (see mk/warnings.mk) be turned into errors while
67# building stage 2?
68#WERROR=-Werror
69
70# After stage 1 and the libraries have been built, you can uncomment this line:
71#stage=2
72
73# Then stage 1 will not be touched by the build system, until
74# you comment the line again.  This is a useful trick for when you're
75# working on stage 2 and want to freeze stage 1 and the libraries for
76# a while.
77
78# Build the "extra" packages (see ./packages). This enables more tests. See:
79# https://ghc.haskell.org/trac/ghc/wiki/Building/RunningTests/Running#AdditionalPackages
80#BUILD_EXTRA_PKGS=YES
81
82# Uncomment the following line to enable building DPH
83#BUILD_DPH=YES
84
85# Uncomment the following to force `integer-gmp` to use the in-tree GMP 5.0.4
86# (other sometimes useful configure-options: `--with-gmp-{includes,libraries}`)
87#libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-intree-gmp
88
89# Don't strip debug and other unneeded symbols from libraries and executables.
90STRIP_CMD = :
91
92DYNAMIC_GHC_PROGRAMS = NO
93INTEGER_LIBRARY      = integer-simple
94DYNAMIC_BY_DEFAULT   = NO
95GhcStage2HcOpts    = -O0 -fllvm -fPIC
96GhcLibHcOpts       = -O -fllvm -fPIC