1###
2# Configuration variables.
3
4OS := $(shell uname)
5
6# Assume make is always run from top-level of source directory. Note than an
7# Apple style build overrides these variables later in the makefile.
8ProjSrcRoot := $(shell pwd)
9ProjObjRoot := $(ProjSrcRoot)
10
11# The list of modules which are required to be built into every library. This
12# should only be used for internal utilities which could be used in any other
13# module. Any other cases the platform should be allowed to opt-in to.
14AlwaysRequiredModules := int_util
15
16###
17# Tool configuration variables.
18
19# FIXME: LLVM uses autoconf/mkinstalldirs ?
20MKDIR := mkdir -p
21DATE := date
22LIPO := lipo
23CP := cp
24DSYMUTIL := dsymutil
25
26VERBOSE := 0
27DEBUGMAKE :=
28
29###
30# Automatic and derived variables.
31
32# Adjust settings for verbose mode
33ifneq ($(VERBOSE),1)
34  Verb := @
35else
36  Verb :=
37endif
38
39Echo := @echo
40ifndef Summary
41  Summary = $(Echo)
42endif
43
44###
45# Common compiler options
46COMMON_INCLUDES=-I${ProjSrcRoot}/lib -I${ProjSrcRoot}/include
47COMMON_CXXFLAGS=-std=c++11 -fno-exceptions -fPIC -funwind-tables $(COMMON_INCLUDES)
48COMMON_CFLAGS=-fPIC $(COMMON_INCLUDES)
49COMMON_ASMFLAGS=$(COMMON_INCLUDES)
50