diff options
Diffstat (limited to 'BUILD')
-rwxr-xr-x | BUILD/SETUP.sh | 4 | ||||
-rwxr-xr-x | BUILD/check-cpu | 3 | ||||
-rwxr-xr-x | BUILD/compile-pentium64-ubsan | 29 |
3 files changed, 34 insertions, 2 deletions
diff --git a/BUILD/SETUP.sh b/BUILD/SETUP.sh index 8a7238c359f..c3c7acecf96 100755 --- a/BUILD/SETUP.sh +++ b/BUILD/SETUP.sh @@ -141,7 +141,7 @@ elif [ "x$warning_mode" = "xmaintainer" ]; then debug_extra_cflags="-g3" else # Both C and C++ warnings - warnings="-Wall -Wextra -Wunused -Wwrite-strings -Wno-uninitialized -Wno-strict-aliasing" + warnings="-Wall -Wextra -Wunused -Wwrite-strings -Wno-uninitialized -Wno-strict-aliasing -Wimplicit-fallthrough=2 -Wformat-security -Wvla" # For more warnings, uncomment the following line # warnings="$warnings -Wshadow" @@ -211,7 +211,7 @@ fi max_no_embedded_configs="$SSL_LIBRARY --with-plugins=max" max_no_qc_configs="$SSL_LIBRARY --with-plugins=max --without-query-cache" -max_configs="$SSL_LIBRARY --with-plugins=max --with-embedded-server --with-libevent --without-plugin=plugin_file_key_management --with-plugin-rocksdb=dynamic --with-plugin-test_sql_discovery=DYNAMIC" +max_configs="$SSL_LIBRARY --with-plugins=max --with-embedded-server --with-libevent --without-plugin=plugin_file_key_management --with-plugin-rocksdb=dynamic --with-plugin-test_sql_discovery=DYNAMIC --with-plugin-file_key_management=DYNAMIC" all_configs="$SSL_LIBRARY --with-plugins=max --with-embedded-server --with-innodb_plugin --with-libevent" # diff --git a/BUILD/check-cpu b/BUILD/check-cpu index 814c217c070..d62e154588f 100755 --- a/BUILD/check-cpu +++ b/BUILD/check-cpu @@ -262,6 +262,9 @@ check_cpu () { *AuthenticAMD*) cpu_arg="k6" ;; + *HygonGenuine*) + cpu_arg="k8" + ;; *VIA\ *) cpu_arg="i686" ;; diff --git a/BUILD/compile-pentium64-ubsan b/BUILD/compile-pentium64-ubsan new file mode 100755 index 00000000000..bf56d84283f --- /dev/null +++ b/BUILD/compile-pentium64-ubsan @@ -0,0 +1,29 @@ +#! /bin/sh +# Copyright (c) 2018, MariaDB Corporation. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; version 2 of the License. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA + +# Compilation with UBSAN, The Undefined Behavior Sanitizer +# We have to use -Wno-uninitialized and -Wno-unitialized we get a lot of false +# positive warnings for this when compiling with -fsanitize=undefined. +# We also have to compile without Spider as linking with Spider library does +# not work. (errno: 11, undefined symbol: _ZTI12ha_partition) + +path=`dirname $0` +. "$path/SETUP.sh" + +extra_flags="$pentium64_cflags $debug_cflags -fsanitize=undefined -DWITH_UBSAN -Wno-conversion -Wno-uninitialized" +extra_configs="$pentium_configs $debug_configs -DWITH_UBSAN=ON -DMYSQL_MAINTAINER_MODE=NO --without-spider --without-tokudb" + +. "$path/FINISH.sh" |