Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 603398
Collapse All | Expand All

(-)a/gcc/config.gcc (+14 lines)
Lines 3830-3835 case "${target}" in Link Here
3830
					tmake_file="${tmake_file} arm/t-aprofile"
3830
					tmake_file="${tmake_file} arm/t-aprofile"
3831
					break
3831
					break
3832
					;;
3832
					;;
3833
				armv6-m|armv7|armv7-m|armv7e-m|armv7-r|armv7-a|cortex-m7)
3834
					if test "x$with_arch" != x \
3835
					    || test "x$with_cpu" != x \
3836
					    || test "x$with_float" != x \
3837
					    || test "x$with_fpu" != x \
3838
					    || test "x$with_mode" != x ; then
3839
					    echo "Error: You cannot use any of --with-arch/cpu/fpu/float/mode with --with-multilib-list=${with_multilib_list}" 1>&2
3840
					    exit 1
3841
					fi
3842
					tmake_file_ml=" arm/t-rmprofile"
3843
					TM_MULTILIB_CONFIG="${TM_MULTILIB_CONFIG},${arm_multilib}"
3844
					;;
3833
				default)
3845
				default)
3834
					;;
3846
					;;
3835
				*)
3847
				*)
Lines 3838-3843 case "${target}" in Link Here
3838
					;;
3850
					;;
3839
				esac
3851
				esac
3840
			done
3852
			done
3853
			tmake_file="${tmake_file}${tmake_file_ml}"
3854
			TM_MULTILIB_CONFIG=`echo $TM_MULTILIB_CONFIG | sed 's/^,//'`
3841
		fi
3855
		fi
3842
		;;
3856
		;;
3843
3857
(-)a/gcc/config/arm/t-rmprofile (+121 lines)
Line 0 Link Here
1
# Copyright (C) 2012-2015 Free Software Foundation, Inc.
2
#
3
# This file is part of GCC.
4
#
5
# GCC is free software; you can redistribute it and/or modify
6
# it under the terms of the GNU General Public License as published by
7
# the Free Software Foundation; either version 3, or (at your option)
8
# any later version.
9
#
10
# GCC is distributed in the hope that it will be useful,
11
# but WITHOUT ANY WARRANTY; without even the implied warranty of
12
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
# GNU General Public License for more details.
14
#
15
# You should have received a copy of the GNU General Public License
16
# along with GCC; see the file COPYING3.  If not see
17
# <http://www.gnu.org/licenses/>.
18
19
# This is a target makefile fragment that attempts to get
20
# multilibs built for the range of CPU's, FPU's and ABI's the user did
21
# customize via the configure option --with-multilib-list.
22
# It should not be used in conjunction with another make file fragment and
23
# assumes --with-arch, --with-cpu, --with-fpu, --with-float, --with-mode
24
# have their default values during the configure step.  We enforce
25
# this during the top-level configury.
26
27
comma := ,
28
space :=
29
space +=
30
31
MULTILIB_OPTIONS   = mthumb/marm
32
MULTILIB_DIRNAMES  = thumb arm
33
MULTILIB_OPTIONS  += march=armv6s-m/march=armv7-m/march=armv7e-m/march=armv7/mcpu=cortex-m7
34
MULTILIB_DIRNAMES += armv6-m armv7-m armv7e-m armv7-ar cortex-m7
35
MULTILIB_OPTIONS  += mfloat-abi=softfp/mfloat-abi=hard
36
MULTILIB_DIRNAMES += softfp fpu
37
MULTILIB_OPTIONS  += mfpu=fpv4-sp-d16/mfpu=vfpv3-d16/mfpu=fpv5-sp-d16/mfpu=fpv5-d16
38
MULTILIB_DIRNAMES += fpv4-sp-d16 vfpv3-d16 fpv5-sp-d16 fpv5-d16
39
40
MULTILIB_MATCHES   = march?armv6s-m=mcpu?cortex-m0
41
MULTILIB_MATCHES  += march?armv6s-m=mcpu?cortex-m0plus
42
MULTILIB_MATCHES  += march?armv6s-m=mcpu?cortex-m1
43
MULTILIB_MATCHES  += march?armv6s-m=march?armv6-m
44
MULTILIB_MATCHES  += march?armv7-m=mcpu?cortex-m3
45
MULTILIB_MATCHES  += march?armv7e-m=mcpu?cortex-m4
46
MULTILIB_MATCHES  += march?armv7=march?armv7-r
47
MULTILIB_MATCHES  += march?armv7=march?armv7-a
48
MULTILIB_MATCHES  += march?armv7=mcpu?cortex-r4
49
MULTILIB_MATCHES  += march?armv7=mcpu?cortex-r4f
50
MULTILIB_MATCHES  += march?armv7=mcpu?cortex-r5
51
MULTILIB_MATCHES  += march?armv7=mcpu?cortex-r7
52
MULTILIB_MATCHES  += march?armv7=mcpu?cortex-a5
53
MULTILIB_MATCHES  += march?armv7=mcpu?cortex-a7
54
MULTILIB_MATCHES  += march?armv7=mcpu?cortex-a8
55
MULTILIB_MATCHES  += march?armv7=mcpu?cortex-a9
56
MULTILIB_MATCHES  += march?armv7=mcpu?cortex-a15
57
MULTILIB_MATCHES  += mfpu?vfpv3-d16=mfpu?vfpv3
58
MULTILIB_MATCHES  += mfpu?vfpv3-d16=mfpu?vfpv3-fp16
59
MULTILIB_MATCHES  += mfpu?vfpv3-d16=mfpu?vfpv3-d16-fp16
60
MULTILIB_MATCHES  += mfpu?vfpv3-d16=mfpu?vfpv3xd
61
MULTILIB_MATCHES  += mfpu?vfpv3-d16=mfpu?vfpv3xd-fp16
62
MULTILIB_MATCHES  += mfpu?vfpv3-d16=mfpu?vfpv4
63
MULTILIB_MATCHES  += mfpu?vfpv3-d16=mfpu?vfpv4-d16
64
MULTILIB_MATCHES  += mfpu?vfpv3-d16=mfpu?neon
65
MULTILIB_MATCHES  += mfpu?vfpv3-d16=mfpu?neon-fp16
66
MULTILIB_MATCHES  += mfpu?vfpv3-d16=mfpu?neon-vfpv4
67
68
MULTILIB_EXCEPTIONS =
69
MULTILIB_REUSE =
70
71
MULTILIB_REQUIRED  = mthumb
72
MULTILIB_REQUIRED += marm
73
MULTILIB_REQUIRED += mfloat-abi=hard
74
75
MULTILIB_OSDIRNAMES  = mthumb=!thumb
76
MULTILIB_OSDIRNAMES += marm=!arm
77
MULTILIB_OSDIRNAMES += mfloat-abi.hard=!fpu
78
79
ifneq (,$(findstring armv6-m,$(subst $(comma),$(space),$(TM_MULTILIB_CONFIG))))
80
MULTILIB_REQUIRED   += mthumb/march=armv6s-m
81
MULTILIB_OSDIRNAMES += mthumb/march.armv6s-m=!armv6-m
82
endif
83
84
ifneq (,$(findstring armv7-m,$(subst $(comma),$(space),$(TM_MULTILIB_CONFIG))))
85
MULTILIB_REQUIRED   += mthumb/march=armv7-m
86
MULTILIB_OSDIRNAMES += mthumb/march.armv7-m=!armv7-m
87
endif
88
89
ifneq (,$(findstring armv7e-m,$(subst $(comma),$(space),$(TM_MULTILIB_CONFIG))))
90
MULTILIB_REQUIRED   += mthumb/march=armv7e-m
91
MULTILIB_REQUIRED   += mthumb/march=armv7e-m/mfloat-abi=softfp/mfpu=fpv4-sp-d16
92
MULTILIB_REQUIRED   += mthumb/march=armv7e-m/mfloat-abi=hard/mfpu=fpv4-sp-d16
93
MULTILIB_OSDIRNAMES += mthumb/march.armv7e-m=!armv7e-m
94
MULTILIB_OSDIRNAMES += mthumb/march.armv7e-m/mfloat-abi.hard/mfpu.fpv4-sp-d16=!armv7e-m/fpu
95
MULTILIB_OSDIRNAMES += mthumb/march.armv7e-m/mfloat-abi.softfp/mfpu.fpv4-sp-d16=!armv7e-m/softfp
96
endif
97
98
ifneq (,$(findstring cortex-m7,$(subst $(comma),$(space),$(TM_MULTILIB_CONFIG))))
99
MULTILIB_REQUIRED   += mthumb/mcpu=cortex-m7
100
MULTILIB_REQUIRED   += mthumb/mcpu=cortex-m7/mfloat-abi=softfp/mfpu=fpv5-sp-d16
101
MULTILIB_REQUIRED   += mthumb/mcpu=cortex-m7/mfloat-abi=hard/mfpu=fpv5-sp-d16
102
MULTILIB_REQUIRED   += mthumb/mcpu=cortex-m7/mfloat-abi=softfp/mfpu=fpv5-d16
103
MULTILIB_REQUIRED   += mthumb/mcpu=cortex-m7/mfloat-abi=hard/mfpu=fpv5-d16
104
MULTILIB_OSDIRNAMES += mthumb/mcpu.cortex-m7=!cortex-m7
105
MULTILIB_OSDIRNAMES += mthumb/mcpu.cortex-m7/mfloat-abi.hard/mfpu.fpv5-sp-d16=!cortex-m7/fpu/fpv5-sp-d16
106
MULTILIB_OSDIRNAMES += mthumb/mcpu.cortex-m7/mfloat-abi.softfp/mfpu.fpv5-sp-d16=!cortex-m7/softfp/fpv5-sp-d16
107
MULTILIB_OSDIRNAMES += mthumb/mcpu.cortex-m7/mfloat-abi.hard/mfpu.fpv5-d16=!cortex-m7/fpu/fpv5-d16
108
MULTILIB_OSDIRNAMES += mthumb/mcpu.cortex-m7/mfloat-abi.softfp/mfpu.fpv5-d16=!cortex-m7/softfp/fpv5-d16
109
endif
110
111
ifneq (,$(filter armv7 armv7-r armv7-a,$(subst $(comma),$(space),$(TM_MULTILIB_CONFIG))))
112
MULTILIB_REQUIRED   += mthumb/march=armv7
113
MULTILIB_REQUIRED   += mthumb/march=armv7/mfloat-abi=softfp/mfpu=vfpv3-d16
114
MULTILIB_REQUIRED   += mthumb/march=armv7/mfloat-abi=hard/mfpu=vfpv3-d16
115
MULTILIB_OSDIRNAMES += mthumb/march.armv7=!armv7-ar/thumb
116
MULTILIB_OSDIRNAMES += mthumb/march.armv7/mfloat-abi.hard/mfpu.vfpv3-d16=!armv7-ar/thumb/fpu
117
MULTILIB_OSDIRNAMES += mthumb/march.armv7/mfloat-abi.softfp/mfpu.vfpv3-d16=!armv7-ar/thumb/softfp
118
MULTILIB_REUSE      += mthumb/march.armv7=marm/march.armv7
119
MULTILIB_REUSE      += mthumb/march.armv7/mfloat-abi.softfp/mfpu.vfpv3-d16=marm/march.armv7/mfloat-abi.softfp/mfpu.vfpv3-d16
120
MULTILIB_REUSE      += mthumb/march.armv7/mfloat-abi.hard/mfpu.vfpv3-d16=marm/march.armv7/mfloat-abi.hard/mfpu.vfpv3-d16
121
endif
(-)a/gcc/configure (-1 / +1 lines)
Lines 1713-1719 Optional Packages: Link Here
1713
  --with-specs=SPECS      add SPECS to driver command-line processing
1713
  --with-specs=SPECS      add SPECS to driver command-line processing
1714
  --with-pkgversion=PKG   Use PKG in the version string in place of "GCC"
1714
  --with-pkgversion=PKG   Use PKG in the version string in place of "GCC"
1715
  --with-bugurl=URL       Direct users to URL to report a bug
1715
  --with-bugurl=URL       Direct users to URL to report a bug
1716
  --with-multilib-list    select multilibs (AArch64, SH and x86-64 only)
1716
  --with-multilib-list    select multilibs (AArch64, ARM, SH and x86-64 only)
1717
  --with-gnu-ld           assume the C compiler uses GNU ld default=no
1717
  --with-gnu-ld           assume the C compiler uses GNU ld default=no
1718
  --with-libiconv-prefix[=DIR]  search for libiconv in DIR/include and DIR/lib
1718
  --with-libiconv-prefix[=DIR]  search for libiconv in DIR/include and DIR/lib
1719
  --without-libiconv-prefix     don't search for libiconv in includedir and libdir
1719
  --without-libiconv-prefix     don't search for libiconv in includedir and libdir
(-)a/gcc/configure.ac (-1 / +1 lines)
Lines 978-984 if test x"$enable_hsa" = x1 ; then Link Here
978
fi
978
fi
979
979
980
AC_ARG_WITH(multilib-list,
980
AC_ARG_WITH(multilib-list,
981
[AS_HELP_STRING([--with-multilib-list], [select multilibs (AArch64, SH and x86-64 only)])],
981
[AS_HELP_STRING([--with-multilib-list], [select multilibs (AArch64, ARM, SH and x86-64 only)])],
982
:,
982
:,
983
with_multilib_list=default)
983
with_multilib_list=default)
984
984

Return to bug 603398