xhyve/config.mk
2016-02-01 01:58:56 +01:00

78 lines
2.1 KiB
Makefile

###############################################################################
# Config #
# #
# [XHYVE_CONFIG_ASSERT] VMM asserts (disable for release builds?) #
# [XHYVE_CONFIG_TRACE] VMM event tracer #
# [XHYVE_CONFIG_STATS] VMM event profiler #
###############################################################################
DEFINES := \
-DXHYVE_CONFIG_ASSERT
###############################################################################
# Toolchain #
###############################################################################
CC := clang
AS := clang
LD := clang
STRIP := strip
DSYM := dsymutil
ENV := \
LANG=en_US.US-ASCII
###############################################################################
# CFLAGS #
###############################################################################
CFLAGS_OPT := \
-Os \
-flto \
-fstrict-aliasing
CFLAGS_WARN := \
-Weverything \
-Werror \
-Wno-unknown-warning-option \
-Wno-reserved-id-macro \
-pedantic
CFLAGS_DIAG := \
-fmessage-length=152 \
-fdiagnostics-show-note-include-stack \
-fmacro-backtrace-limit=0 \
-fcolor-diagnostics
CFLAGS_DBG := \
-g
CFLAGS_LIB9P := \
-Wno-padded \
-Wno-gnu-zero-variadic-macro-arguments \
-Wno-format-nonliteral
CFLAGS := \
-arch x86_64 \
-x c \
-std=c11 \
-fno-common \
-fvisibility=hidden \
$(DEFINES) \
$(CFLAGS_OPT) \
$(CFLAGS_WARN) \
$(CFLAGS_DIAG) \
$(CFLAGS_DBG)
###############################################################################
# LDFLAGS #
###############################################################################
LDFLAGS_DBG := \
-Xlinker -object_path_lto
LDFLAGS := \
-arch x86_64 \
-framework Hypervisor \
-framework vmnet \
$(LDFLAGS_DBG)