aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/config.gcc5
-rw-r--r--gcc/config/csky/print-sysroot-suffix.sh147
-rw-r--r--gcc/config/csky/t-csky-linux2
-rw-r--r--gcc/config/csky/t-sysroot-suffix28
4 files changed, 1 insertions, 181 deletions
diff --git a/gcc/config.gcc b/gcc/config.gcc
index f3e94f7..93e2b32 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -1568,11 +1568,6 @@ csky-*-*)
tm_file="dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h ${tm_file} csky/csky-linux-elf.h"
tmake_file="${tmake_file} csky/t-csky csky/t-csky-linux"
- if test "x${enable_multilib}" = xyes ; then
- tm_file="$tm_file ./sysroot-suffix.h"
- tmake_file="${tmake_file} csky/t-sysroot-suffix"
- fi
-
case ${target} in
csky-*-linux-gnu*)
tm_defines="$tm_defines DEFAULT_LIBC=LIBC_GLIBC"
diff --git a/gcc/config/csky/print-sysroot-suffix.sh b/gcc/config/csky/print-sysroot-suffix.sh
deleted file mode 100644
index 4840bc6..0000000
--- a/gcc/config/csky/print-sysroot-suffix.sh
+++ /dev/null
@@ -1,147 +0,0 @@
-#! /bin/sh
-# Script to generate SYSROOT_SUFFIX_SPEC equivalent to MULTILIB_OSDIRNAMES
-# Arguments are MULTILIB_OSDIRNAMES, MULTILIB_OPTIONS and MULTILIB_MATCHES.
-
-# Copyright (C) 2018-2021 Free Software Foundation, Inc.
-# Contributed by C-SKY Microsystems and Mentor Graphics.
-
-# This file is part of GCC.
-
-# GCC 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; either version 3, or (at your option) any later
-# version.
-
-# GCC 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 GCC; see the file COPYING3. If not see
-# <http://www.gnu.org/licenses/>.
-
-# This shell script produces a header file fragment that defines
-# SYSROOT_SUFFIX_SPEC. It assumes that the sysroots will have the same
-# structure and names used by the multilibs.
-
-# Invocation:
-# print-sysroot-suffix.sh \
-# MULTILIB_OSDIRNAMES \
-# MULTILIB_OPTIONS \
-# MULTILIB_MATCHES \
-# > t-sysroot-suffix.h
-
-# The three options exactly correspond to the variables of the same
-# names defined in the tmake_file fragments.
-
-# Example:
-# sh ./gcc/config/print-sysroot-suffix.sh "a=A" "a b/c/d" ""
-# =>
-# #undef SYSROOT_SUFFIX_SPEC
-# #define SYSROOT_SUFFIX_SPEC "" \
-# "%{a:" \
-# "%{b:A/b/;" \
-# "c:A/c/;" \
-# "d:A/d/;" \
-# ":A/};" \
-# ":}"
-
-# The script uses temporary subscripts in order to permit a recursive
-# algorithm without the use of functions.
-
-set -e
-
-dirnames="$1"
-options="$2"
-matches="$3"
-
-cat > print-sysroot-suffix3.sh <<\EOF
-#! /bin/sh
-# Print all the multilib matches for this option
-result="$1"
-EOF
-for x in $matches; do
- l=`echo $x | sed -e 's/=.*$//' -e 's/?/=/g'`
- r=`echo $x | sed -e 's/^.*=//' -e 's/?/=/g'`
- echo "[ \"\$1\" = \"$l\" ] && result=\"\$result|$r\"" >> print-sysroot-suffix3.sh
-done
-echo 'echo $result' >> print-sysroot-suffix3.sh
-chmod +x print-sysroot-suffix3.sh
-
-cat > print-sysroot-suffix2.sh <<\EOF
-#! /bin/sh
-# Recursive script to enumerate all multilib combinations, match against
-# multilib directories and output a spec string of the result.
-# Will fold identical trees.
-
-padding="$1"
-optstring="$2"
-shift 2
-n="\" \\
-$padding\""
-if [ $# = 0 ]; then
-EOF
-
-pat=
-for x in $dirnames; do
-# p=`echo $x | sed -e 's,=!,/$=/,'`
- p=`echo $x | sed -e 's/=//g'`
-# pat="$pat -e 's=^//$p='"
- pat="$pat -e 's/$p/g'"
-done
-echo ' optstring=`echo "/$optstring" | sed '"$pat\`" >> print-sysroot-suffix2.sh
-cat >> print-sysroot-suffix2.sh <<\EOF
- case $optstring in
- //*)
- ;;
- *)
- echo "$optstring"
- ;;
- esac
-else
- thisopt="$1"
- shift
- bit=
- lastcond=
- result=
- for x in `echo "$thisopt" | sed -e 's,/, ,g'`; do
- case $x in
-EOF
-for x in `echo "$options" | sed -e 's,/, ,g'`; do
- match=`./print-sysroot-suffix3.sh "$x"`
- echo "$x) optmatch=\"$match\" ;;" >> print-sysroot-suffix2.sh
-done
-cat >> print-sysroot-suffix2.sh <<\EOF
- esac
- bit=`"$0" "$padding " "$optstring$x/" "$@"`
- if [ -z "$lastopt" ]; then
- lastopt="$optmatch"
- else
- if [ "$lastbit" = "$bit" ]; then
- lastopt="$lastopt|$optmatch"
- else
- result="$result$lastopt:$lastbit;$n"
- lastopt="$optmatch"
- fi
- fi
- lastbit="$bit"
- done
- bit=`"$0" "$padding " "$optstring" "$@"`
- if [ "$bit" = "$lastbit" ]; then
- if [ -z "$result" ]; then
- echo "$bit"
- else
- echo "$n%{$result:$bit}"
- fi
- else
- echo "$n%{$result$lastopt:$lastbit;$n:$bit}"
- fi
-fi
-EOF
-chmod +x ./print-sysroot-suffix2.sh
-result=`./print-sysroot-suffix2.sh \"\" \"\" $options`
-echo "#undef SYSROOT_SUFFIX_SPEC"
-echo "#define SYSROOT_SUFFIX_SPEC \"$result\""
-rm print-sysroot-suffix2.sh
-rm print-sysroot-suffix3.sh
diff --git a/gcc/config/csky/t-csky-linux b/gcc/config/csky/t-csky-linux
index 0730c3a..9139040 100644
--- a/gcc/config/csky/t-csky-linux
+++ b/gcc/config/csky/t-csky-linux
@@ -21,7 +21,7 @@
MULTILIB_EXCEPTIONS =
-CSKY_MULTILIB_OSDIRNAMES = mfloat-abi.softfp=/soft-fp mfloat-abi.hard=/hard-fp mfloat-abi.soft=/. mcpu.ck810f=/. mcpu.ck807f=/ck807 mcpu.ck860f=/ck860
+MULTILIB_OSDIRNAMES = ./ ./ck807 ./ck860 ./ ./soft-fp ./hard-fp
# Arch variants.
MULTILIB_OPTIONS += mcpu=ck810f/mcpu=ck807f/mcpu=ck860f
diff --git a/gcc/config/csky/t-sysroot-suffix b/gcc/config/csky/t-sysroot-suffix
deleted file mode 100644
index d891f69..0000000
--- a/gcc/config/csky/t-sysroot-suffix
+++ /dev/null
@@ -1,28 +0,0 @@
-# Makefile fragment for C-SKY sysroot suffix.
-#
-# Copyright (C) 2018-2021 Free Software Foundation, Inc.
-# Contributed by C-SKY Microsystems and Mentor Graphics.
-#
-# This file is part of GCC.
-#
-# GCC 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; either version 3, or (at your option)
-# any later version.
-#
-# GCC 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 GCC; see the file COPYING3. If not see
-# <http://www.gnu.org/licenses/>.
-
-# Generate SYSROOT_SUFFIX_SPEC from MULTILIB_OSDIRNAMES.
-
-sysroot-suffix.h: $(srcdir)/config/csky/print-sysroot-suffix.sh
- $(SHELL) $(srcdir)/config/csky/print-sysroot-suffix.sh \
- "$(CSKY_MULTILIB_OSDIRNAMES)" "$(MULTILIB_OPTIONS)" \
- "$(MULTILIB_MATCHES)" > tmp-sysroot-suffix.h
- mv tmp-sysroot-suffix.h $@