1# -*- shell-script -*- 2# Copyright (C) 2012-2018 Free Software Foundation, Inc. 3 4# This program is free software; you can redistribute it and/or modify 5# it under the terms of the GNU General Public License as published by 6# the Free Software Foundation; either version 2 of the License, or 7# (at your option) any later version. 8# 9# This program is distributed in the hope that it will be useful, 10# but WITHOUT ANY WARRANTY; without even the implied warranty of 11# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12# GNU General Public License for more details. 13# 14# You should have received a copy of the GNU General Public License 15# along with this program; if not see <http://www.gnu.org/licenses/>. 16 17# This is the target specific configuration file. This is invoked by the 18# autoconf generated configure script. Putting it in a separate shell file 19# lets us skip running autoconf when modifying target specific information. 20 21# Filter out unsupported systems. 22TSAN_TARGET_DEPENDENT_OBJECTS= 23SANITIZER_COMMON_TARGET_DEPENDENT_OBJECTS= 24case "${target}" in 25 x86_64-*-freebsd* | i?86-*-freebsd*) 26 ;; 27 x86_64-*-linux* | i?86-*-linux*) 28 if test x$ac_cv_sizeof_void_p = x8; then 29 TSAN_SUPPORTED=yes 30 LSAN_SUPPORTED=yes 31 TSAN_TARGET_DEPENDENT_OBJECTS=tsan_rtl_amd64.lo 32 fi 33 ;; 34 powerpc*-*-linux*) 35 if test x$ac_cv_sizeof_void_p = x8; then 36 TSAN_SUPPORTED=yes 37 LSAN_SUPPORTED=yes 38 TSAN_TARGET_DEPENDENT_OBJECTS=tsan_rtl_ppc64.lo 39 fi 40 ;; 41 sparc*-*-linux*) 42 ;; 43 s390*-*-linux*) 44 if test x$ac_cv_sizeof_void_p = x8; then 45 TSAN_SUPPORTED=yes 46 LSAN_SUPPORTED=yes 47 TSAN_TARGET_DEPENDENT_OBJECTS=tsan_rtl_s390x.lo 48 fi 49 ;; 50 sparc*-*-solaris2.11*) 51 ;; 52 arm*-*-*fdpiceabi) 53 UNSUPPORTED=1 54 ;; 55 arm*-*-linux*) 56 ;; 57 mips*-*-linux*) 58 ;; 59 aarch64*-*-linux*) 60 if test x$ac_cv_sizeof_void_p = x8; then 61 TSAN_SUPPORTED=yes 62 LSAN_SUPPORTED=yes 63 TSAN_TARGET_DEPENDENT_OBJECTS=tsan_rtl_aarch64.lo 64 HWASAN_SUPPORTED=yes 65 fi 66 ;; 67 x86_64-*-darwin2[01]* | x86_64-*-darwin1[2-9]* | i?86-*-darwin1[2-9]*) 68 TSAN_SUPPORTED=no 69 EXTRA_CXXFLAGS="${EXTRA_CXXFLAGS} -Wl,-undefined,dynamic_lookup" 70 ;; 71 x86_64-*-solaris2.11* | i?86-*-solaris2.11*) 72 ;; 73 riscv64-*-linux*) 74 ;; 75 *) 76 UNSUPPORTED=1 77 ;; 78esac 79