# This file is used for tool tests, and also in perf/Makefile.am.

include $(top_srcdir)/Makefile.all.am

AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/include \
		-I$(top_srcdir)/coregrind -I$(top_builddir)/include \
		-I$(top_srcdir)/VEX/pub \
		-I$(top_builddir)/VEX/pub \
		-DVGA_@VGCONF_ARCH_PRI@=1 \
		-DVGO_@VGCONF_OS@=1 \
		-DVGP_@VGCONF_ARCH_PRI@_@VGCONF_OS@=1 \
		-DVGPV_@VGCONF_ARCH_PRI@_@VGCONF_OS@_@VGCONF_PLATVARIANT@=1

if VGCONF_HAVE_PLATFORM_SEC
AM_CPPFLAGS +=	-DVGA_SEC_@VGCONF_ARCH_SEC@=1  \
		-DVGP_SEC_@VGCONF_ARCH_PRI@_@VGCONF_OS@=1
endif

# Nb: Tools need to augment these flags with an arch-selection option, such
# as $(AM_FLAG_M3264_PRI).
AM_CFLAGS   = -Winline -Wall -Wshadow -Wno-long-long -g \
              @FLAG_FNO_STACK_PROTECTOR@
AM_CXXFLAGS = -Winline -Wall -Wshadow -Wno-long-long -g \
              @FLAG_FNO_STACK_PROTECTOR@
# Include AM_CPPFLAGS in AM_CCASFLAGS to allow for older versions of
# automake;  see comments in Makefile.all.am for more detail.
AM_CCASFLAGS = $(AM_CPPFLAGS)

if VGCONF_OS_IS_SOLARIS
# Make sure that all test programs have threaded errno.
# Disable largefile support as there are test cases explicitly enabling it.
AM_CFLAGS  += -D_REENTRANT @SOLARIS_UNDEF_LARGESOURCE@
endif

if VGCONF_OS_IS_DARWIN
noinst_DSYMS = $(check_PROGRAMS)
endif

if COMPILER_IS_CLANG
AM_CFLAGS   += -Wno-format-extra-args       # perf/tinycc.c
AM_CFLAGS   += -Wno-literal-range           # none/tests/amd64/fxtract.c
AM_CFLAGS   += -Wno-tautological-constant-out-of-range-compare # ...../aes.c
AM_CFLAGS   += -Wno-self-assign             # memcheck/tests/unit_libcbase.c
AM_CFLAGS   += -Wno-string-plus-int         # drd/tests/annotate_ignore_rw.c
AM_CFLAGS   += -Wno-uninitialized           # clang 3.4.2 and earlier
AM_CFLAGS   += -Wno-unused-value            # clang 3.0.0
AM_CXXFLAGS += -Wno-unused-private-field    # drd/tests/tsan_unittest.cpp
endif

check-local: build-noinst_DSYMS

clean-local: clean-noinst_DSYMS