summaryrefslogtreecommitdiff
path: root/BUILD/compile-pentium-gcov
blob: 77de5867d489dbf918f0c0a0e841bc8632267167 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#! /bin/sh

# Need to disable ccache, or we loose the gcov-needed compiler output files.

USING_GCOV=1
CCACHE_GCOV_VERSION_ENABLED=0
if ccache -V > /dev/null 2>&1
then
  CCACHE_VER=`ccache -V | head -1 | sed s/"ccache version "//`
  if test "$CCACHE_VER" == "2.4-gcov"
  then
    CCACHE_GCOV_VERSION_ENABLED=1
  else
    CCACHE_DISABLE=1
    export CCACHE_DISABLE
  fi
fi
export CCACHE_GCOV_VERSION_ENABLED

path=`dirname $0`
. "$path/SETUP.sh"

# GCC4 needs -fprofile-arcs -ftest-coverage on the linker command line (as well
# as on the compiler command line), and this requires setting LDFLAGS for BDB.
export LDFLAGS="-fprofile-arcs -ftest-coverage"

# The  -fprofile-arcs and -ftest-coverage options cause GCC to instrument the
# code with profiling information used by gcov.
# The -DDISABLE_TAO_ASM is needed to avoid build failures in Yassl.
# The -DHAVE_gcov enables code to write out coverage info even when crashing.
extra_flags="$pentium_cflags -fprofile-arcs -ftest-coverage -DDISABLE_TAO_ASM -DHAVE_MUTEX_THREAD_ONLY $debug_extra_flags $debug_cflags $max_cflags -DMYSQL_SERVER_SUFFIX=-gcov -DHAVE_gcov"
extra_configs="$pentium_configs $debug_configs --disable-shared $static_link"
extra_configs="$extra_configs $max_configs"
c_warnings="$c_warnings $debug_extra_warnings"
cxx_warnings="$cxx_warnings $debug_extra_warnings"

. "$path/FINISH.sh"