Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
freebsd
GitHub Repository: freebsd/freebsd-src
Path: blob/main/crypto/openssl/Configurations/50-nonstop.conf
34860 views
1
#### Nonstop configurations
2
# Common for all
3
'nonstop-common' => {
4
inherit_from => [ 'BASE_unix' ],
5
template => 1,
6
cc => 'c99',
7
cflags => add_before(picker(debug => '-g -O0',
8
release => '-g -O2'),
9
'-Wextensions',
10
'-Wnowarn=203,220,272,734,770,1506',
11
'-Wbuild_neutral_library',
12
'-Wverbose'),
13
defines => add('OPENSSL_VPROC=$(OPENSSL_VPROC)',
14
'_XOPEN_SOURCE',
15
'_XOPEN_SOURCE_EXTENDED=1',
16
'_TANDEM_SOURCE',
17
'__NSK_OPTIONAL_TYPES__',
18
'B_ENDIAN'),
19
perl => '/usr/bin/perl',
20
shared_target => 'nonstop-shared',
21
shared_extension => ".so",
22
ex_libs => add('-lrld'),
23
enable => ['egd'],
24
# Not currently inherited
25
disable => ['atexit'],
26
dso_scheme => 'DLFCN',
27
sys_id => 'TANDEM',
28
},
29
30
######################################################################
31
# Additional variant settings, to be combined with nonstop-common
32
# Note that these do not inherit anything. However, the diverse values
33
# are merged with other entries in an 'inherit_from'.
34
#
35
# These combine:
36
# - System architecture (MIPS, Itanium, or x86)
37
# - Execution environment (oss [default] or guardian)
38
#
39
# Unfortunately, they can't be separated into independent templates, because
40
# a number of the above are encoded as different linkers, and by consequence,
41
# different c99 linker flags (-Wld, -Weld, and -Wxld)
42
#
43
# In addition, the are modifiers for:
44
# - Size of long + pointer (ilp32 [default] and lp64)
45
# - Float type (neutral and tandem)
46
#
47
# Unfortunately, because the float types affect the linker settings, those
48
# are divided per system architecture
49
#
50
# MIPS + guardian (unused but present for convenience):
51
'nonstop-archenv-mips-guardian' => {
52
template => 1,
53
defines => ['NO_GETPID'],
54
cflags => '-Wtarget=tns/r -Wsystype=guardian',
55
lflags => '-Wld="-set systype guardian"',
56
shared_ldflag => '-Wshared -Wld="-soname $(@:lib%.so=%)"',
57
shared_defflag => '-Wld_obey=',
58
shared_argfileflag => '-Wld_obey=',
59
},
60
61
# Itanium + guardian:
62
'nonstop-archenv-itanium-guardian' => {
63
template => 1,
64
defines => ['NO_GETPID'],
65
cflags => '-Wtarget=tns/e -Wsystype=guardian',
66
lflags => '-Weld="-set systype guardian"',
67
shared_ldflag => '-Wshared -Weld="-soname $(@:lib%.so=%)"',
68
shared_defflag => '-Weld_obey=',
69
shared_argfileflag => '-Weld_obey=',
70
},
71
72
# x86 + guardian:
73
'nonstop-archenv-x86_64-guardian' => {
74
template => 1,
75
defines => ['NO_GETPID'],
76
cflags => '-Wtarget=tns/x -Wsystype=guardian',
77
lflags => '-Wxld="-set systype guardian"',
78
shared_ldflag => '-Wshared -Wxld="-soname $(@:lib%.so=%)"',
79
shared_defflag => '-Wxld_obey=',
80
shared_argfileflag => '-Wxld_obey=',
81
},
82
83
# MIPS + oss (unused but present for convenience):
84
'nonstop-archenv-mips-oss' => {
85
template => 1,
86
cflags => '-Wtarget=tns/r -Wsystype=oss',
87
lflags => '-Wld="-set systype oss"',
88
shared_ldflag => '-Wshared',
89
shared_defflag => '-Wld_obey=',
90
shared_argfileflag => '-Wld_obey=',
91
},
92
# Itanium + oss:
93
'nonstop-archenv-itanium-oss' => {
94
template => 1,
95
cflags => '-Wtarget=tns/e -Wsystype=oss',
96
lflags => '-Weld="-set systype oss"',
97
shared_ldflag => '-Wshared',
98
shared_defflag => '-Weld_obey=',
99
shared_argfileflag => '-Weld_obey=',
100
},
101
# x86_64 + oss:
102
'nonstop-archenv-x86_64-oss' => {
103
template => 1,
104
cflags => '-Wtarget=tns/x -Wsystype=oss',
105
lflags => '-Wxld="-set systype oss"',
106
shared_ldflag => '-Wshared',
107
shared_defflag => '-Wxld_obey=',
108
shared_argfileflag => '-Wxld_obey=',
109
},
110
111
# Size variants
112
'nonstop-ilp32' => {
113
template => 1,
114
cflags => '-Wilp32',
115
bn_ops => 'THIRTY_TWO_BIT',
116
},
117
'nonstop-lp64-itanium' => {
118
template => 1,
119
cflags => '-Wlp64',
120
bn_ops => 'SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR',
121
},
122
'nonstop-lp64-x86_64' => {
123
template => 1,
124
cflags => '-Wlp64',
125
lflags => '-Wxld="-set data_model lp64"',
126
bn_ops => 'SIXTY_FOUR_BIT',
127
},
128
129
# Float variants
130
'nonstop-nfloat-mips' => {
131
template => 1,
132
lflags => '-Wld="-set floattype neutral_float"',
133
},
134
'nonstop-tfloat-mips' => {
135
template => 1,
136
lflags => '-Wld="-set floattype tandem_float"',
137
},
138
'nonstop-efloat-itanium' => {
139
template => 1,
140
cflags => '-WIEEE_float',
141
lflags => '-Weld="-set floattype ieee_float"',
142
},
143
'nonstop-nfloat-itanium' => {
144
template => 1,
145
lflags => '-Weld="-set floattype neutral_float"',
146
},
147
'nonstop-tfloat-itanium' => {
148
template => 1,
149
cflags => '-WTandem_float',
150
lflags => '-Weld="-set floattype tandem_float"',
151
},
152
'nonstop-efloat-x86_64' => {
153
template => 1,
154
cflags => '-WIEEE_float',
155
lflags => '-Wxld="-set floattype ieee_float"',
156
},
157
'nonstop-nfloat-x86_64' => {
158
template => 1,
159
lflags => '-Wxld="-set floattype neutral_float"',
160
},
161
'nonstop-tfloat-x86_64' => {
162
template => 1,
163
cflags => '-WTandem_float',
164
lflags => '-Wxld="-set floattype tandem_float"',
165
},
166
167
######################################################################
168
# Build models
169
'nonstop-model-put' => {
170
template => 1,
171
defines => ['_PUT_MODEL_',
172
'_REENTRANT', '_THREAD_SUPPORT_FUNCTIONS'],
173
ex_libs => '-lput',
174
},
175
176
######################################################################
177
# Build models
178
'nonstop-model-klt' => {
179
template => 1,
180
defines => ['_KLT_MODEL_',
181
'_REENTRANT', '_THREAD_SUPPORT_FUNCTIONS'],
182
ex_libs => '-lklt',
183
},
184
185
######################################################################
186
# Now for the entries themselves, let's combine things!
187
'nonstop-nsx' => {
188
inherit_from => [ 'nonstop-common',
189
'nonstop-archenv-x86_64-oss',
190
'nonstop-ilp32',
191
'nonstop-efloat-x86_64' ],
192
disable => ['threads','atexit'],
193
},
194
'nonstop-nsx_put' => {
195
inherit_from => [ 'nonstop-common',
196
'nonstop-archenv-x86_64-oss',
197
'nonstop-ilp32',
198
'nonstop-efloat-x86_64',
199
'nonstop-model-put' ],
200
multilib => '-put',
201
multibin => '-put',
202
disable => ['atexit'],
203
},
204
'nonstop-nsx_64' => {
205
inherit_from => [ 'nonstop-common',
206
'nonstop-archenv-x86_64-oss',
207
'nonstop-lp64-x86_64',
208
'nonstop-efloat-x86_64' ],
209
multilib => '64',
210
multibin => '64',
211
disable => ['threads','atexit'],
212
},
213
'nonstop-nsx_64_put' => {
214
inherit_from => [ 'nonstop-common',
215
'nonstop-archenv-x86_64-oss',
216
'nonstop-lp64-x86_64',
217
'nonstop-efloat-x86_64',
218
'nonstop-model-put' ],
219
multilib => '64-put',
220
multibin => '64-put',
221
disable => ['atexit'],
222
},
223
'nonstop-nsx_64_klt' => {
224
inherit_from => [ 'nonstop-common',
225
'nonstop-archenv-x86_64-oss',
226
'nonstop-lp64-x86_64',
227
'nonstop-efloat-x86_64',
228
'nonstop-model-klt' ],
229
multilib => '64-klt',
230
multibin => '64-klt',
231
disable => ['atexit'],
232
},
233
'nonstop-nsx_g' => {
234
inherit_from => [ 'nonstop-common',
235
'nonstop-archenv-x86_64-guardian',
236
'nonstop-ilp32', 'nonstop-nfloat-x86_64' ],
237
disable => ['threads','atexit'],
238
},
239
'nonstop-nsx_g_tandem' => {
240
inherit_from => [ 'nonstop-common',
241
'nonstop-archenv-x86_64-guardian',
242
'nonstop-ilp32', 'nonstop-tfloat-x86_64' ],
243
disable => ['threads','atexit'],
244
},
245
'nonstop-nsv' => {
246
inherit_from => [ 'nonstop-nsx' ],
247
},
248
'nonstop-nse' => {
249
inherit_from => [ 'nonstop-common',
250
'nonstop-archenv-itanium-oss',
251
'nonstop-ilp32',
252
'nonstop-efloat-itanium' ],
253
disable => ['threads','atexit'],
254
},
255
'nonstop-nse_put' => {
256
inherit_from => [ 'nonstop-common',
257
'nonstop-archenv-itanium-oss',
258
'nonstop-ilp32',
259
'nonstop-efloat-itanium',
260
'nonstop-model-put' ],
261
multilib => '-put',
262
multibin => '-put',
263
disable => ['atexit'],
264
},
265
'nonstop-nse_64' => {
266
inherit_from => [ 'nonstop-common',
267
'nonstop-archenv-itanium-oss',
268
'nonstop-lp64-itanium',
269
'nonstop-efloat-itanium' ],
270
multilib => '64',
271
multibin => '64',
272
disable => ['threads','atexit'],
273
},
274
'nonstop-nse_64_put' => {
275
inherit_from => [ 'nonstop-common',
276
'nonstop-archenv-itanium-oss',
277
'nonstop-lp64-itanium',
278
'nonstop-efloat-itanium',
279
'nonstop-model-put' ],
280
multilib => '64-put',
281
multibin => '64-put',
282
disable => ['atexit'],
283
},
284
285