131
|
1 # Copyright (C) 2012-2018 Free Software Foundation, Inc.
|
111
|
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 # The default build is mips32r2, hard-float big-endian. Add mips32,
|
|
20 # soft-float, and little-endian variations.
|
|
21
|
|
22 MULTILIB_OPTIONS = mips32/mips64/mips64r2 mips16/mmicromips mabi=64 EL msoft-float mnan=2008
|
|
23 MULTILIB_DIRNAMES = mips32 mips64 mips64r2 mips16 micromips 64 el sof nan2008
|
|
24 MULTILIB_MATCHES = EL=mel EB=meb mips32r2=mips32r3 mips32r2=mips32r5 mips64r2=mips64r3 mips64r2=mips64r5
|
|
25
|
|
26 MULTILIB_REQUIRED =
|
|
27 MULTILIB_OSDIRNAMES = .=mips-r2-hard/lib
|
|
28 MULTILIB_REQUIRED += mips64r2
|
|
29 MULTILIB_OSDIRNAMES += mips64r2=!mips-r2-hard/lib32
|
|
30 MULTILIB_REQUIRED += mips64r2/mabi=64
|
|
31 MULTILIB_OSDIRNAMES += mips64r2/mabi.64=!mips-r2-hard/lib64
|
|
32
|
|
33 MULTILIB_REQUIRED += mnan=2008
|
|
34 MULTILIB_OSDIRNAMES += mnan.2008=!mips-r2-hard-nan2008/lib
|
|
35 MULTILIB_REQUIRED += mips64r2/mnan=2008
|
|
36 MULTILIB_OSDIRNAMES += mips64r2/mnan.2008=!mips-r2-hard-nan2008/lib32
|
|
37 MULTILIB_REQUIRED += mips64r2/mabi=64/mnan=2008
|
|
38 MULTILIB_OSDIRNAMES += mips64r2/mabi.64/mnan.2008=!mips-r2-hard-nan2008/lib64
|
|
39
|
|
40 MULTILIB_REQUIRED += msoft-float
|
|
41 MULTILIB_OSDIRNAMES += msoft-float=!mips-r2-soft/lib
|
|
42 MULTILIB_REQUIRED += mips64r2/msoft-float
|
|
43 MULTILIB_OSDIRNAMES += mips64r2/msoft-float=!mips-r2-soft/lib32
|
|
44 MULTILIB_REQUIRED += mips64r2/mabi=64/msoft-float
|
|
45 MULTILIB_OSDIRNAMES += mips64r2/mabi.64/msoft-float=!mips-r2-soft/lib64
|
|
46
|
|
47 #MULTILIB_REQUIRED += msoft-float/mnan=2008
|
|
48 #MULTILIB_OSDIRNAMES += msoft-float/mnan.2008=!mips-r2-soft-nan2008/lib
|
|
49 #MULTILIB_REQUIRED += mips64r2/msoft-float/mnan=2008
|
|
50 #MULTILIB_OSDIRNAMES += mips64r2/msoft-float/mnan.2008=!mips-r2-soft-nan2008/lib32
|
|
51 #MULTILIB_REQUIRED += mips64r2/mabi=64/msoft-float/mnan=2008
|
|
52 #MULTILIB_OSDIRNAMES += mips64r2/mabi.64/msoft-float/mnan.2008=!mips-r2-soft-nan2008/lib64
|
|
53
|
|
54 MULTILIB_REQUIRED += EL
|
|
55 MULTILIB_OSDIRNAMES += EL=!mipsel-r2-hard/lib
|
|
56 MULTILIB_REQUIRED += mips64r2/EL
|
|
57 MULTILIB_OSDIRNAMES += mips64r2/EL=!mipsel-r2-hard/lib32
|
|
58 MULTILIB_REQUIRED += mips64r2/mabi=64/EL
|
|
59 MULTILIB_OSDIRNAMES += mips64r2/mabi.64/EL=!mipsel-r2-hard/lib64
|
|
60
|
|
61 MULTILIB_REQUIRED += EL/mnan=2008
|
|
62 MULTILIB_OSDIRNAMES += EL/mnan.2008=!mipsel-r2-hard-nan2008/lib
|
|
63 MULTILIB_REQUIRED += mips64r2/EL/mnan=2008
|
|
64 MULTILIB_OSDIRNAMES += mips64r2/EL/mnan.2008=!mipsel-r2-hard-nan2008/lib32
|
|
65 MULTILIB_REQUIRED += mips64r2/mabi=64/EL/mnan=2008
|
|
66 MULTILIB_OSDIRNAMES += mips64r2/mabi.64/EL/mnan.2008=!mipsel-r2-hard-nan2008/lib64
|
|
67
|
|
68 MULTILIB_REQUIRED += EL/msoft-float
|
|
69 MULTILIB_OSDIRNAMES += EL/msoft-float=!mipsel-r2-soft/lib
|
|
70 MULTILIB_REQUIRED += mips64r2/EL/msoft-float
|
|
71 MULTILIB_OSDIRNAMES += mips64r2/EL/msoft-float=!mipsel-r2-soft/lib32
|
|
72 MULTILIB_REQUIRED += mips64r2/mabi=64/EL/msoft-float
|
|
73 MULTILIB_OSDIRNAMES += mips64r2/mabi.64/EL/msoft-float=!mipsel-r2-soft/lib64
|
|
74
|
|
75 #MULTILIB_REQUIRED += EL/msoft-float/mnan=2008
|
|
76 #MULTILIB_OSDIRNAMES += EL/msoft-float/mnan.2008=!mipsel-r2-soft-nan2008/lib
|
|
77 #MULTILIB_REQUIRED += mips64r2/EL/msoft-float/mnan=2008
|
|
78 #MULTILIB_OSDIRNAMES += mips64r2/EL/msoft-float/mnan.2008=!mipsel-r2-soft-nan2008/lib32
|
|
79 #MULTILIB_REQUIRED += mips64r2/mabi=64/EL/msoft-float/mnan=2008
|
|
80 #MULTILIB_OSDIRNAMES += mips64r2/mabi.64/EL/msoft-float/mnan.2008=!mipsel-r2-soft-nan2008/lib64
|
|
81
|
|
82 # We will not include any 64 bit mips16 combinations.
|
|
83 MULTILIB_REQUIRED += mips16
|
|
84 MULTILIB_OSDIRNAMES += mips16=!mips-r2-mips16-hard/lib
|
|
85 MULTILIB_REQUIRED += mips16/mnan=2008
|
|
86 MULTILIB_OSDIRNAMES += mips16/mnan.2008=!mips-r2-mips16-hard-nan2008/lib
|
|
87 MULTILIB_REQUIRED += mips16/msoft-float
|
|
88 MULTILIB_OSDIRNAMES += mips16/msoft-float=!mips-r2-mips16-soft/lib
|
|
89 #MULTILIB_REQUIRED += mips16/msoft-float/mnan=2008
|
|
90 #MULTILIB_OSDIRNAMES += mips16/msoft-float/mnan.2008=!mips-r2-mips16-soft-nan2008/lib
|
|
91
|
|
92 MULTILIB_REQUIRED += mips16/EL
|
|
93 MULTILIB_OSDIRNAMES += mips16/EL=!mipsel-r2-mips16-hard/lib
|
|
94 MULTILIB_REQUIRED += mips16/EL/mnan=2008
|
|
95 MULTILIB_OSDIRNAMES += mips16/EL/mnan.2008=!mipsel-r2-mips16-hard-nan2008/lib
|
|
96 MULTILIB_REQUIRED += mips16/EL/msoft-float
|
|
97 MULTILIB_OSDIRNAMES += mips16/EL/msoft-float=!mipsel-r2-mips16-soft/lib
|
|
98 #MULTILIB_REQUIRED += mips16/EL/msoft-float/mnan=2008
|
|
99 #MULTILIB_OSDIRNAMES += mips16/EL/msoft-float/mnan.2008=!mipsel-r2-mips16-soft-nan2008/lib
|
|
100
|
|
101 MULTILIB_REQUIRED += mmicromips
|
|
102 MULTILIB_OSDIRNAMES += mmicromips=!micromips-r2-hard/lib
|
|
103 MULTILIB_REQUIRED += mmicromips/mnan=2008
|
|
104 MULTILIB_OSDIRNAMES += mmicromips/mnan.2008=!micromips-r2-hard-nan2008/lib
|
|
105 MULTILIB_REQUIRED += mmicromips/msoft-float
|
|
106 MULTILIB_OSDIRNAMES += mmicromips/msoft-float=!micromips-r2-soft/lib
|
|
107 #MULTILIB_REQUIRED += mmicromips/msoft-float/mnan=2008
|
|
108 #MULTILIB_OSDIRNAMES += mmicromips/msoft-float/mnan.2008=!micromips-r2-soft-nan2008/lib
|
|
109
|
|
110 MULTILIB_REQUIRED += mmicromips/EL
|
|
111 MULTILIB_OSDIRNAMES += mmicromips/EL=!micromipsel-r2-hard/lib
|
|
112 MULTILIB_REQUIRED += mmicromips/EL/mnan=2008
|
|
113 MULTILIB_OSDIRNAMES += mmicromips/EL/mnan.2008=!micromipsel-r2-hard-nan2008/lib
|
|
114 MULTILIB_REQUIRED += mmicromips/EL/msoft-float
|
|
115 MULTILIB_OSDIRNAMES += mmicromips/EL/msoft-float=!micromipsel-r2-soft/lib
|
|
116 #MULTILIB_REQUIRED += mmicromips/EL/msoft-float/mnan=2008
|
|
117 #MULTILIB_OSDIRNAMES += mmicromips/EL/msoft-float/mnan.2008=!micromipsel-r2-soft-nan2008/lib
|
|
118
|
|
119 # Version 1 multilibs
|
|
120
|
|
121 MULTILIB_REQUIRED += mips32
|
|
122 MULTILIB_OSDIRNAMES += mips32=!mips-r1-hard/lib
|
|
123 MULTILIB_REQUIRED += mips64
|
|
124 MULTILIB_OSDIRNAMES += mips64=!mips-r1-hard/lib32
|
|
125 MULTILIB_REQUIRED += mips64/mabi=64
|
|
126 MULTILIB_OSDIRNAMES += mips64/mabi.64=!mips-r1-hard/lib64
|
|
127
|
|
128 MULTILIB_REQUIRED += mips32/msoft-float
|
|
129 MULTILIB_OSDIRNAMES += mips32/msoft-float=!mips-r1-soft/lib
|
|
130 MULTILIB_REQUIRED += mips64/msoft-float
|
|
131 MULTILIB_OSDIRNAMES += mips64/msoft-float=!mips-r1-soft/lib32
|
|
132 MULTILIB_REQUIRED += mips64/mabi=64/msoft-float
|
|
133 MULTILIB_OSDIRNAMES += mips64/mabi.64/msoft-float=!mips-r1-soft/lib64
|
|
134
|
|
135 MULTILIB_REQUIRED += mips32/EL
|
|
136 MULTILIB_OSDIRNAMES += mips32/EL=!mipsel-r1-hard/lib
|
|
137 MULTILIB_REQUIRED += mips64/EL
|
|
138 MULTILIB_OSDIRNAMES += mips64/EL=!mipsel-r1-hard/lib32
|
|
139 MULTILIB_REQUIRED += mips64/mabi=64/EL
|
|
140 MULTILIB_OSDIRNAMES += mips64/mabi.64/EL=!mipsel-r1-hard/lib64
|
|
141
|
|
142 MULTILIB_REQUIRED += mips32/EL/msoft-float
|
|
143 MULTILIB_OSDIRNAMES += mips32/EL/msoft-float=!mipsel-r1-soft/lib
|
|
144 MULTILIB_REQUIRED += mips64/EL/msoft-float
|
|
145 MULTILIB_OSDIRNAMES += mips64/EL/msoft-float=!mipsel-r1-soft/lib32
|
|
146 MULTILIB_REQUIRED += mips64/mabi=64/EL/msoft-float
|
|
147 MULTILIB_OSDIRNAMES += mips64/mabi.64/EL/msoft-float=!mipsel-r1-soft/lib64
|
|
148
|
|
149 # We will not include any 64 bit mips16 combinations.
|
|
150 MULTILIB_REQUIRED += mips32/mips16
|
|
151 MULTILIB_OSDIRNAMES += mips32/mips16=!mips-r1-mips16-hard/lib
|
|
152 MULTILIB_REQUIRED += mips32/mips16/msoft-float
|
|
153 MULTILIB_OSDIRNAMES += mips32/mips16/msoft-float=!mips-r1-mips16-soft/lib
|
|
154
|
|
155 MULTILIB_REQUIRED += mips32/mips16/EL
|
|
156 MULTILIB_OSDIRNAMES += mips32/mips16/EL=!mipsel-r1-mips16-hard/lib
|
|
157 MULTILIB_REQUIRED += mips32/mips16/EL/msoft-float
|
|
158 MULTILIB_OSDIRNAMES += mips32/mips16/EL/msoft-float=!mipsel-r1-mips16-soft/lib
|