]> git.proxmox.com Git - ceph.git/blame - ceph/src/boost/libs/context/build/Jamfile.v2
bump version to 12.2.2-pve1
[ceph.git] / ceph / src / boost / libs / context / build / Jamfile.v2
CommitLineData
7c673cae
FG
1
2# Boost.Context Library Build Jamfile
3
4# Copyright Oliver Kowalke 2009.
5# Distributed under the Boost Software License, Version 1.0.
6# (See accompanying file LICENSE_1_0.txt or copy at
7# http://www.boost.org/LICENSE_1_0.txt)
8
9import common ;
10import feature ;
11import indirect ;
12import modules ;
13import os ;
14import toolset ;
15
16feature.feature segmented-stacks : on : optional propagated composite ;
17feature.compose <segmented-stacks>on : <define>BOOST_USE_SEGMENTED_STACKS ;
18
19feature.feature valgrind : on : optional propagated composite ;
20feature.compose <valgrind>on : <define>BOOST_USE_VALGRIND ;
21
22feature.feature context-switch : cc ec : optional propagated composite ;
23feature.compose <context-switch>ec : <define>BOOST_USE_EXECUTION_CONTEXT ;
24
25project boost/context
26 : requirements
27 <toolset>gcc,<segmented-stacks>on:<cxxflags>-fsplit-stack
28 <toolset>gcc,<segmented-stacks>on:<cxxflags>-DBOOST_USE_SEGMENTED_STACKS
29 <toolset>gcc,<segmented-stacks>on:<linkflags>"-static-libgcc"
30 <toolset>clang,<segmented-stacks>on:<cxxflags>-fsplit-stack
31 <toolset>clang,<segmented-stacks>on:<cxxflags>-DBOOST_USE_SEGMENTED_STACKS
32 <toolset>clang,<segmented-stacks>on:<linkflags>"-static-libgcc"
33 <toolset>intel,<link>shared:<define>BOOST_CONTEXT_EXPORT=EXPORT
34 <toolset>intel,<link>static:<define>BOOST_CONTEXT_EXPORT=
35 <toolset>msvc,<link>shared:<define>BOOST_CONTEXT_EXPORT=EXPORT
36 <toolset>msvc,<link>static:<define>BOOST_CONTEXT_EXPORT=
37 <link>shared:<define>BOOST_CONTEXT_DYN_LINK=1
38 <define>BOOST_CONTEXT_SOURCE
39 <threading>multi
40 : usage-requirements
41 <link>shared:<define>BOOST_CONTEXT_DYN_LINK=1
42 <optimization>speed:<define>BOOST_DISABLE_ASSERTS
43 <variant>release:<define>BOOST_DISABLE_ASSERTS
44 : source-location ../src
45 ;
46
47local rule default_binary_format ( )
48{
49 local tmp = elf ;
50 if [ os.name ] = "NT" { tmp = pe ; }
51 else if [ os.name ] = "CYGWIN" { tmp = pe ; }
52 else if [ os.name ] = "AIX" { tmp = xcoff ; }
53 else if [ os.name ] = "MACOSX" { tmp = mach-o ; }
54 return $(tmp) ;
55}
56
57feature.feature binary-format
58 : elf
59 mach-o
60 pe
61 xcoff
62 : propagated
63 ;
64feature.set-default binary-format : [ default_binary_format ] ;
65
66
67local rule default_abi ( )
68{
69 local tmp = sysv ;
70 if [ os.name ] = "NT" { tmp = ms ; }
71 else if [ os.name ] = "CYGWIN" { tmp = ms ; }
72 else if [ os.platform ] = "ARM" { tmp = aapcs ; }
73 else if [ os.platform ] = "MIPS" { tmp = o32 ; }
74 return $(tmp) ;
75}
76
77feature.feature abi
78 : aapcs
79 eabi
80 ms
81 n32
82 n64
83 o32
84 o64
85 sysv
86 x32
87 : propagated
88 ;
89feature.set-default abi : [ default_abi ] ;
90
91
92actions gas32
93{
94 cpp -x assembler-with-cpp "$(>)" | as --32 -o "$(<)"
95}
96
97actions gas64
98{
99 cpp -x assembler-with-cpp "$(>)" | as --64 -o "$(<)"
100}
101
102actions gasx32
103{
104 cpp -x assembler-with-cpp "$(>)" | as --x32 -o "$(<)"
105}
106
107actions gas
108{
109 cpp -x assembler-with-cpp "$(>)" | as -o "$(<)"
110}
111
112actions armasm
113{
114 armasm "$(>)" "$(<)"
115}
116
117actions masm
118{
119 ml /c /Fo"$(<)" "$(>)"
120}
121
122actions masm64
123{
124 ml64 /c /Fo"$(<)" "$(>)"
125}
126
127
128rule configure ( properties * )
129{
130 local result ;
131
132# if ( ! ( <toolset>gcc in $(properties)
133# || <toolset>intel in $(properties)
134# || <toolset>msvc in $(properties) ) )
135# {
136# result = <build>no ;
137# ECHO "toolset not supported" ;
138# }
139
140 return $(result) ;
141}
142
143# ARM
144# ARM/AAPCS/ELF
145alias asm_context_sources
146 : [ make asm/make_arm_aapcs_elf_gas.o : asm/make_arm_aapcs_elf_gas.S : @gas32 ]
147 [ make asm/jump_arm_aapcs_elf_gas.o : asm/jump_arm_aapcs_elf_gas.S : @gas32 ]
148 [ make asm/ontop_arm_aapcs_elf_gas.o : asm/ontop_arm_aapcs_elf_gas.S : @gas32 ]
149 : <abi>aapcs
150 <address-model>32
151 <architecture>arm
152 <binary-format>elf
153 ;
154
155alias asm_context_sources
156 : asm/make_arm_aapcs_elf_gas.S
157 asm/jump_arm_aapcs_elf_gas.S
158 asm/ontop_arm_aapcs_elf_gas.S
159 : <abi>aapcs
160 <address-model>32
161 <architecture>arm
162 <binary-format>elf
163 <toolset>clang
164 ;
165
166alias asm_context_sources
167 : asm/make_arm_aapcs_elf_gas.S
168 asm/jump_arm_aapcs_elf_gas.S
169 asm/ontop_arm_aapcs_elf_gas.S
170 : <abi>aapcs
171 <address-model>32
172 <architecture>arm
173 <binary-format>elf
174 <toolset>gcc
175 ;
176
177alias asm_context_sources
178 : asm/make_arm_aapcs_elf_gas.S
179 asm/jump_arm_aapcs_elf_gas.S
180 asm/ontop_arm_aapcs_elf_gas.S
181 : <abi>aapcs
182 <address-model>32
183 <architecture>arm
184 <binary-format>elf
185 <toolset>qcc
186 ;
187# ARM/AAPCS/MACH-O
188alias asm_context_sources
189 : [ make asm/make_arm_aapcs_macho_gas.o : asm/make_arm_aapcs_macho_gas.S : @gas32 ]
190 [ make asm/jump_arm_aapcs_macho_gas.o : asm/jump_arm_aapcs_macho_gas.S : @gas32 ]
191 [ make asm/ontop_arm_aapcs_macho_gas.o : asm/ontop_arm_aapcs_macho_gas.S : @gas32 ]
192 : <abi>aapcs
193 <address-model>32
194 <architecture>arm
195 <binary-format>mach-o
196 ;
197
198alias asm_context_sources
199 : asm/make_arm_aapcs_macho_gas.S
200 asm/jump_arm_aapcs_macho_gas.S
201 asm/ontop_arm_aapcs_macho_gas.S
202 : <abi>aapcs
203 <address-model>32
204 <architecture>arm
205 <binary-format>mach-o
206 <toolset>clang
207 ;
208
209alias asm_context_sources
210 : asm/make_arm_aapcs_macho_gas.S
211 asm/jump_arm_aapcs_macho_gas.S
212 asm/ontop_arm_aapcs_macho_gas.S
213 : <abi>aapcs
214 <address-model>32
215 <architecture>arm
216 <binary-format>mach-o
217 <toolset>darwin
218 ;
219# ARM/AAPCS/PE
220alias asm_context_sources
221 : [ make asm/make_arm_aapcs_pe_armasm.o : asm/make_arm_aapcs_pe_armasm.asm : @armasm ]
222 [ make asm/jump_arm_aapcs_pe_armasm.o : asm/jump_arm_aapcs_pe_armasm.asm : @armasm ]
223 [ make asm/ontop_arm_aapcs_pe_armasm.o : asm/ontop_arm_aapcs_pe_armasm.asm : @armasm ]
224 untested.cpp
225 : <abi>aapcs
226 <address-model>32
227 <architecture>arm
228 <binary-format>pe
229 ;
230
231alias asm_context_sources
232 : asm/make_arm_aapcs_pe_armasm.asm
233 asm/jump_arm_aapcs_pe_armasm.asm
234 asm/ontop_arm_aapcs_pe_armasm.asm
235 untested.cpp
236 : <abi>aapcs
237 <address-model>32
238 <architecture>arm
239 <binary-format>pe
240 <toolset>msvc
241 ;
242
243# ARM64
244# ARM64/AAPCS/ELF
245alias asm_context_sources
246 : [ make asm/make_arm64_aapcs_elf_gas.o : asm/make_arm64_aapcs_elf_gas.S : @gas64 ]
247 [ make asm/jump_arm64_aapcs_elf_gas.o : asm/jump_arm64_aapcs_elf_gas.S : @gas64 ]
248 [ make asm/ontop_arm64_aapcs_elf_gas.o : asm/ontop_arm64_aapcs_elf_gas.S : @gas64 ]
249 : <abi>aapcs
250 <address-model>64
251 <architecture>arm
252 <binary-format>elf
253 ;
254
255alias asm_context_sources
256 : asm/make_arm64_aapcs_elf_gas.S
257 asm/jump_arm64_aapcs_elf_gas.S
258 asm/ontop_arm64_aapcs_elf_gas.S
259 : <abi>aapcs
260 <address-model>64
261 <architecture>arm
262 <binary-format>elf
263 <toolset>clang
264 ;
265
266alias asm_context_sources
267 : asm/make_arm64_aapcs_elf_gas.S
268 asm/jump_arm64_aapcs_elf_gas.S
269 asm/ontop_arm64_aapcs_elf_gas.S
270 : <abi>aapcs
271 <address-model>64
272 <architecture>arm
273 <binary-format>elf
274 <toolset>gcc
275 ;
276
277# ARM64/AAPCS/MACH-O
278alias asm_context_sources
279 : [ make asm/make_arm64_aapcs_macho_gas.o : asm/make_arm64_aapcs_macho_gas.S : @gas64 ]
280 [ make asm/jump_arm64_aapcs_macho_gas.o : asm/jump_arm64_aapcs_macho_gas.S : @gas64 ]
281 [ make asm/ontop_arm64_aapcs_macho_gas.o : asm/ontop_arm64_aapcs_macho_gas.S : @gas64 ]
282 : <abi>aapcs
283 <address-model>64
284 <architecture>arm
285 <binary-format>mach-o
286 ;
287
288alias asm_context_sources
289 : asm/make_arm64_aapcs_macho_gas.S
290 asm/jump_arm64_aapcs_macho_gas.S
291 asm/ontop_arm64_aapcs_macho_gas.S
292 : <abi>aapcs
293 <address-model>64
294 <architecture>arm
295 <binary-format>mach-o
296 <toolset>clang
297 ;
298
299alias asm_context_sources
300 : asm/make_arm64_aapcs_macho_gas.S
301 asm/jump_arm64_aapcs_macho_gas.S
302 asm/ontop_arm64_aapcs_macho_gas.S
303 : <abi>aapcs
304 <address-model>64
305 <architecture>arm
306 <binary-format>mach-o
307 <toolset>darwin
308 ;
309
310# MIPS
311# MIPS/O32/ELF
312alias asm_context_sources
313 : [ make asm/make_mips32_o32_elf_gas.o : asm/make_mips32_o32_elf_gas.S : @gas32 ]
314 [ make asm/jump_mips32_o32_elf_gas.o : asm/jump_mips32_o32_elf_gas.S : @gas32 ]
315 [ make asm/ontop_mips32_o32_elf_gas.o : asm/ontop_mips32_o32_elf_gas.S : @gas32 ]
316 : <abi>o32
317 <address-model>32
318 <architecture>mips1
319 <binary-format>elf
320 ;
321
322alias asm_context_sources
323 : asm/make_mips32_o32_elf_gas.S
324 asm/jump_mips32_o32_elf_gas.S
325 asm/ontop_mips32_o32_elf_gas.S
326 : <abi>o32
327 <address-model>32
328 <architecture>mips1
329 <binary-format>elf
330 <toolset>clang
331 ;
332
333alias asm_context_sources
334 : asm/make_mips32_o32_elf_gas.S
335 asm/jump_mips32_o32_elf_gas.S
336 asm/ontop_mips32_o32_elf_gas.S
337 : <abi>o32
338 <address-model>32
339 <architecture>mips1
340 <binary-format>elf
341 <toolset>gcc
342 ;
343
344# POWERPC_32
345# POWERPC_32/SYSV/ELF
346alias asm_context_sources
347 : [ make asm/make_ppc32_sysv_elf_gas.o : asm/make_ppc32_sysv_elf_gas.S : @gas32 ]
348 [ make asm/jump_ppc32_sysv_elf_gas.o : asm/jump_ppc32_sysv_elf_gas.S : @gas32 ]
349 [ make asm/ontop_ppc32_sysv_elf_gas.o : asm/ontop_ppc32_sysv_elf_gas.S : @gas32 ]
350 : <abi>sysv
351 <address-model>32
352 <architecture>power
353 <binary-format>elf
354 ;
355
356alias asm_context_sources
357 : asm/make_ppc32_sysv_elf_gas.S
358 asm/jump_ppc32_sysv_elf_gas.S
359 asm/ontop_ppc32_sysv_elf_gas.S
360 : <abi>sysv
361 <address-model>32
362 <architecture>power
363 <binary-format>elf
364 <toolset>clang
365 ;
366
367alias asm_context_sources
368 : asm/make_ppc32_sysv_elf_gas.S
369 asm/jump_ppc32_sysv_elf_gas.S
370 asm/ontop_ppc32_sysv_elf_gas.S
371 : <abi>sysv
372 <address-model>32
373 <architecture>power
374 <binary-format>elf
375 <toolset>gcc
376 ;
377# POWERPC_32/SYSV/MACH-O
378alias asm_context_sources
379 : [ make asm/make_ppc32_sysv_macho_gas.o : asm/make_ppc32_sysv_macho_gas.S : @gas32 ]
380 [ make asm/jump_ppc32_sysv_macho_gas.o : asm/jump_ppc32_sysv_macho_gas.S : @gas32 ]
381 [ make asm/ontop_ppc32_sysv_macho_gas.o : asm/ontop_ppc32_sysv_macho_gas.S : @gas32 ]
382 : <abi>sysv
383 <address-model>32
384 <architecture>power
385 <binary-format>mach-o
386 ;
387
388alias asm_context_sources
389 : asm/make_ppc32_sysv_macho_gas.S
390 asm/jump_ppc32_sysv_macho_gas.S
391 asm/ontop_ppc32_sysv_macho_gas.S
392 : <abi>sysv
393 <address-model>32
394 <architecture>power
395 <binary-format>mach-o
396 <toolset>clang
397 ;
398
399alias asm_context_sources
400 : asm/make_ppc32_sysv_macho_gas.S
401 asm/jump_ppc32_sysv_macho_gas.S
402 asm/ontop_ppc32_sysv_macho_gas.S
403 : <abi>sysv
404 <address-model>32
405 <architecture>power
406 <binary-format>mach-o
407 <toolset>darwin
408 ;
409#POWERPC_32/SYSV/XCOFF
410alias asm_context_sources
411 : [ make asm/make_ppc32_sysv_xcoff_gas.o : asm/make_ppc32_sysv_xcoff_gas.S : @gas ]
412 [ make asm/jump_ppc32_sysv_xcoff_gas.o : asm/jump_ppc32_sysv_xcoff_gas.S : @gas ]
413 [ make asm/ontop_ppc32_sysv_xcoff_gas.o : asm/ontop_ppc32_sysv_xcoff_gas.S : @gas ]
414 : <abi>sysv
415 <address-model>32
416 <architecture>power
417 <binary-format>xcoff
418 ;
419
420alias asm_context_sources
421 : asm/make_ppc32_sysv_xcoff_gas.S
422 asm/jump_ppc32_sysv_xcoff_gas.S
423 asm/ontop_ppc32_sysv_xcoff_gas.S
424 : <abi>sysv
425 <address-model>32
426 <architecture>power
427 <binary-format>xcoff
428 <toolset>clang
429 ;
430
431alias asm_context_sources
432 : asm/make_ppc32_sysv_xcoff_gas.S
433 asm/jump_ppc32_sysv_xcoff_gas.S
434 asm/ontop_ppc32_sysv_xcoff_gas.S
435 : <abi>sysv
436 <address-model>32
437 <architecture>power
438 <binary-format>xcoff
439 <toolset>gcc
440 ;
441
442# POWERPC_64
443# POWERPC_64/SYSV/ELF
444alias asm_context_sources
445 : [ make asm/make_ppc64_sysv_elf_gas.o : asm/make_ppc64_sysv_elf_gas.S : @gas64 ]
446 [ make asm/jump_ppc64_sysv_elf_gas.o : asm/jump_ppc64_sysv_elf_gas.S : @gas64 ]
447 [ make asm/ontop_ppc64_sysv_elf_gas.o : asm/ontop_ppc64_sysv_elf_gas.S : @gas64 ]
448 : <abi>sysv
449 <address-model>64
450 <architecture>power
451 <binary-format>elf
452 ;
453
454alias asm_context_sources
455 : asm/make_ppc64_sysv_elf_gas.S
456 asm/jump_ppc64_sysv_elf_gas.S
457 asm/ontop_ppc64_sysv_elf_gas.S
458 : <abi>sysv
459 <address-model>64
460 <architecture>power
461 <binary-format>elf
462 <toolset>clang
463 ;
464
465alias asm_context_sources
466 : asm/make_ppc64_sysv_elf_gas.S
467 asm/jump_ppc64_sysv_elf_gas.S
468 asm/ontop_ppc64_sysv_elf_gas.S
469 : <abi>sysv
470 <address-model>64
471 <architecture>power
472 <binary-format>elf
473 <toolset>gcc
474 ;
475# POWERPC_64/SYSV/MACH-O
476alias asm_context_sources
477 : [ make asm/make_ppc64_sysv_macho_gas.o : asm/make_ppc64_sysv_macho_gas.S : @gas ]
478 [ make asm/jump_ppc64_sysv_macho_gas.o : asm/jump_ppc64_sysv_macho_gas.S : @gas ]
479 [ make asm/ontop_ppc64_sysv_macho_gas.o : asm/ontop_ppc64_sysv_macho_gas.S : @gas ]
480 untested.cpp
481 : <abi>sysv
482 <address-model>64
483 <architecture>power
484 <binary-format>mach-o
485 ;
486
487alias asm_context_sources
488 : asm/make_ppc64_sysv_macho_gas.S
489 asm/jump_ppc64_sysv_macho_gas.S
490 asm/ontop_ppc64_sysv_macho_gas.S
491 untested.cpp
492 : <abi>sysv
493 <address-model>64
494 <architecture>power
495 <binary-format>mach-o
496 <toolset>clang
497 ;
498
499alias asm_context_sources
500 : asm/make_ppc64_sysv_macho_gas.S
501 asm/jump_ppc64_sysv_macho_gas.S
502 asm/ontop_ppc64_sysv_macho_gas.S
503 untested.cpp
504 : <abi>sysv
505 <address-model>64
506 <architecture>power
507 <binary-format>mach-o
508 <toolset>darwin
509 ;
510# POWERPC_64/SYSV/XCOFF
511alias asm_context_sources
512 : [ make asm/make_ppc64_sysv_xcoff_gas.o : asm/make_ppc64_sysv_xcoff_gas.S : @gas ]
513 [ make asm/jump_ppc64_sysv_xcoff_gas.o : asm/jump_ppc64_sysv_xcoff_gas.S : @gas ]
514 [ make asm/ontop_ppc64_sysv_xcoff_gas.o : asm/ontop_ppc64_sysv_xcoff_gas.S : @gas ]
515 : <abi>sysv
516 <address-model>64
517 <architecture>power
518 <binary-format>xcoff
519 ;
520
521alias asm_context_sources
522 : asm/make_ppc64_sysv_xcoff_gas.S
523 asm/jump_ppc64_sysv_xcoff_gas.S
524 asm/ontop_ppc64_sysv_xcoff_gas.S
525 : <abi>sysv
526 <address-model>64
527 <architecture>power
528 <binary-format>xcoff
529 <toolset>clang
530 ;
531
532alias asm_context_sources
533 : asm/make_ppc64_sysv_xcoff_gas.S
534 asm/jump_ppc64_sysv_xcoff_gas.S
535 asm/ontop_ppc64_sysv_xcoff_gas.S
536 : <abi>sysv
537 <address-model>64
538 <architecture>power
539 <binary-format>xcoff
540 <toolset>gcc
541 ;
542
543# POWERPC universal
544# POWERPC_32_64/SYSV/MACH-O
545alias asm_context_sources
546 : asm/make_ppc32_ppc64_sysv_macho_gas.S
547 asm/jump_ppc32_ppc64_sysv_macho_gas.S
548 asm/ontop_ppc32_ppc64_sysv_macho_gas.S
549 : <abi>sysv
550 <address-model>32_64
551 <architecture>power
552 <binary-format>mach-o
553 ;
554
555# X86
556# X86/SYSV/ELF
557alias asm_context_sources
558 : [ make asm/make_i386_sysv_elf_gas.o : asm/make_i386_sysv_elf_gas.S : @gas32 ]
559 [ make asm/jump_i386_sysv_elf_gas.o : asm/jump_i386_sysv_elf_gas.S : @gas32 ]
560 [ make asm/ontop_i386_sysv_elf_gas.o : asm/ontop_i386_sysv_elf_gas.S : @gas32 ]
561 : <abi>sysv
562 <address-model>32
563 <architecture>x86
564 <binary-format>elf
565 ;
566
567alias asm_context_sources
568 : asm/make_i386_sysv_elf_gas.S
569 asm/jump_i386_sysv_elf_gas.S
570 asm/ontop_i386_sysv_elf_gas.S
571 : <abi>sysv
572 <address-model>32
573 <architecture>x86
574 <binary-format>elf
575 <toolset>clang
576 ;
577
578alias asm_context_sources
579 : asm/make_i386_sysv_elf_gas.S
580 asm/jump_i386_sysv_elf_gas.S
581 asm/ontop_i386_sysv_elf_gas.S
582 : <abi>sysv
583 <address-model>32
584 <architecture>x86
585 <binary-format>elf
586 <toolset>gcc
587 ;
588
589alias asm_context_sources
590 : asm/make_i386_sysv_elf_gas.S
591 asm/jump_i386_sysv_elf_gas.S
592 asm/ontop_i386_sysv_elf_gas.S
593 : <abi>sysv
594 <address-model>32
595 <architecture>x86
596 <binary-format>elf
597 <toolset>intel
598 ;
599# X86/SYSV/MACH-O
600alias asm_context_sources
601 : [ make asm/make_i386_sysv_macho_gas.o : asm/make_i386_sysv_macho_gas.S : @gas32 ]
602 [ make asm/jump_i386_sysv_macho_gas.o : asm/jump_i386_sysv_macho_gas.S : @gas32 ]
603 [ make asm/ontop_i386_sysv_macho_gas.o : asm/ontop_i386_sysv_macho_gas.S : @gas32 ]
604 : <abi>sysv
605 <address-model>32
606 <architecture>x86
607 <binary-format>mach-o
608 ;
609
610alias asm_context_sources
611 : asm/make_i386_sysv_macho_gas.S
612 asm/jump_i386_sysv_macho_gas.S
613 asm/ontop_i386_sysv_macho_gas.S
614 : <abi>sysv
615 <address-model>32
616 <architecture>x86
617 <binary-format>mach-o
618 <toolset>clang
619 ;
620
621alias asm_context_sources
622 : asm/make_i386_sysv_macho_gas.S
623 asm/jump_i386_sysv_macho_gas.S
624 asm/ontop_i386_sysv_macho_gas.S
625 : <abi>sysv
626 <address-model>32
627 <architecture>x86
628 <binary-format>mach-o
629 <toolset>darwin
630 ;
631# X86/MS/PE
632alias asm_context_sources
633 : [ make asm/make_i386_ms_pe_masm.o : asm/make_i386_ms_pe_masm.asm : @masm ]
634 [ make asm/jump_i386_ms_pe_masm.o : asm/jump_i386_ms_pe_masm.asm : @masm ]
635 [ make asm/ontop_i386_ms_pe_masm.o : asm/ontop_i386_ms_pe_masm.asm : @masm ]
636 dummy.cpp
637 : <abi>ms
638 <address-model>32
639 <architecture>x86
640 <binary-format>pe
641 ;
642
643alias asm_context_sources
644 : asm/make_i386_ms_pe_gas.asm
645 asm/jump_i386_ms_pe_gas.asm
646 asm/ontop_i386_ms_pe_gas.asm
647 dummy.cpp
648 : <abi>ms
649 <address-model>32
650 <architecture>x86
651 <binary-format>pe
652 <toolset>clang
653 ;
654
655alias asm_context_sources
656 : asm/make_i386_ms_pe_gas.asm
657 asm/jump_i386_ms_pe_gas.asm
658 asm/ontop_i386_ms_pe_gas.asm
659 dummy.cpp
660 : <abi>ms
661 <address-model>32
662 <architecture>x86
663 <binary-format>pe
664 <toolset>gcc
665 ;
666
667alias asm_context_sources
668 : asm/make_i386_ms_pe_masm.asm
669 asm/jump_i386_ms_pe_masm.asm
670 asm/ontop_i386_ms_pe_masm.asm
671 dummy.cpp
672 : <abi>ms
673 <address-model>32
674 <architecture>x86
675 <binary-format>pe
676 <toolset>intel
677 ;
678
679alias asm_context_sources
680 : asm/make_i386_ms_pe_masm.asm
681 asm/jump_i386_ms_pe_masm.asm
682 asm/ontop_i386_ms_pe_masm.asm
683 dummy.cpp
684 : <abi>ms
685 <address-model>32
686 <architecture>x86
687 <binary-format>pe
688 <toolset>msvc
689 ;
690
691# X86_64
692# X86_64/SYSV/ELF
693alias asm_context_sources
694 : [ make asm/make_x86_64_sysv_elf_gas.o : asm/make_x86_64_sysv_elf_gas.S : @gas64 ]
695 [ make asm/jump_x86_64_sysv_elf_gas.o : asm/jump_x86_64_sysv_elf_gas.S : @gas64 ]
696 [ make asm/ontop_x86_64_sysv_elf_gas.o : asm/ontop_x86_64_sysv_elf_gas.S : @gas64 ]
697 : <abi>sysv
698 <address-model>64
699 <architecture>x86
700 <binary-format>elf
701 ;
702
703alias asm_context_sources
704 : asm/make_x86_64_sysv_elf_gas.S
705 asm/jump_x86_64_sysv_elf_gas.S
706 asm/ontop_x86_64_sysv_elf_gas.S
707 : <abi>sysv
708 <address-model>64
709 <architecture>x86
710 <binary-format>elf
711 <toolset>clang
712 ;
713
714alias asm_context_sources
715 : asm/make_x86_64_sysv_elf_gas.S
716 asm/jump_x86_64_sysv_elf_gas.S
717 asm/ontop_x86_64_sysv_elf_gas.S
718 : <abi>sysv
719 <address-model>64
720 <architecture>x86
721 <binary-format>elf
722 <toolset>gcc
723 ;
724
725alias asm_context_sources
726 : asm/make_x86_64_sysv_elf_gas.S
727 asm/jump_x86_64_sysv_elf_gas.S
728 asm/ontop_x86_64_sysv_elf_gas.S
729 : <abi>sysv
730 <address-model>64
731 <architecture>x86
732 <binary-format>elf
733 <toolset>intel
734 ;
735# X86_64/SYSV/MACH-O
736alias asm_context_sources
737 : [ make asm/make_x86_64_sysv_macho_gas.o : asm/make_x86_64_sysv_macho_gas.S : @gas64 ]
738 [ make asm/jump_x86_64_sysv_macho_gas.o : asm/jump_x86_64_sysv_macho_gas.S : @gas64 ]
739 [ make asm/ontop_x86_64_sysv_macho_gas.o : asm/ontop_x86_64_sysv_macho_gas.S : @gas64 ]
740 : <abi>sysv
741 <address-model>64
742 <architecture>x86
743 <binary-format>mach-o
744 ;
745
746alias asm_context_sources
747 : asm/make_x86_64_sysv_macho_gas.S
748 asm/jump_x86_64_sysv_macho_gas.S
749 asm/ontop_x86_64_sysv_macho_gas.S
750 : <abi>sysv
751 <address-model>64
752 <architecture>x86
753 <binary-format>mach-o
754 <toolset>clang
755 ;
756
757alias asm_context_sources
758 : asm/make_x86_64_sysv_macho_gas.S
759 asm/jump_x86_64_sysv_macho_gas.S
760 asm/ontop_x86_64_sysv_macho_gas.S
761 : <abi>sysv
762 <address-model>64
763 <architecture>x86
764 <binary-format>mach-o
765 <toolset>darwin
766 ;
767
768alias asm_context_sources
769 : asm/make_x86_64_sysv_macho_gas.S
770 asm/jump_x86_64_sysv_macho_gas.S
771 asm/ontop_x86_64_sysv_macho_gas.S
772 : <abi>sysv
773 <address-model>64
774 <architecture>x86
775 <binary-format>mach-o
776 <toolset>intel
777 ;
778# X86_64/MS/PE
779alias asm_context_sources
780 : [ make asm/make_x86_64_ms_pe_masm.o : asm/make_x86_64_ms_pe_masm.asm : @masm64 ]
781 [ make asm/jump_x86_64_ms_pe_masm.o : asm/jump_x86_64_ms_pe_masm.asm : @masm64 ]
782 [ make asm/ontop_x86_64_ms_pe_masm.o : asm/ontop_x86_64_ms_pe_masm.asm : @masm64 ]
783 dummy.cpp
784 : <abi>ms
785 <address-model>64
786 <architecture>x86
787 <binary-format>pe
788 ;
789
790alias asm_context_sources
791 : asm/make_x86_64_ms_pe_gas.asm
792 asm/jump_x86_64_ms_pe_gas.asm
793 asm/ontop_x86_64_ms_pe_gas.asm
794 dummy.cpp
795 : <abi>ms
796 <address-model>64
797 <architecture>x86
798 <binary-format>pe
799 <toolset>clang
800 ;
801
802alias asm_context_sources
803 : asm/make_x86_64_ms_pe_gas.asm
804 asm/jump_x86_64_ms_pe_gas.asm
805 asm/ontop_x86_64_ms_pe_gas.asm
806 dummy.cpp
807 : <abi>ms
808 <address-model>64
809 <architecture>x86
810 <binary-format>pe
811 <toolset>gcc
812 ;
813
814alias asm_context_sources
815 : asm/make_x86_64_ms_pe_masm.asm
816 asm/jump_x86_64_ms_pe_masm.asm
817 asm/ontop_x86_64_ms_pe_masm.asm
818 dummy.cpp
819 : <abi>ms
820 <address-model>64
821 <architecture>x86
822 <binary-format>pe
823 <toolset>intel
824 ;
825
826alias asm_context_sources
827 : asm/make_x86_64_ms_pe_masm.asm
828 asm/jump_x86_64_ms_pe_masm.asm
829 asm/ontop_x86_64_ms_pe_masm.asm
830 dummy.cpp
831 : <abi>ms
832 <address-model>64
833 <architecture>x86
834 <binary-format>pe
835 <toolset>msvc
836 ;
837# X86_64/SYSV/X32
838alias asm_context_sources
839 : [ make asm/make_x86_64_sysv_elf_gas.o : asm/make_x86_64_sysv_elf_gas.S : @gas64 ]
840 [ make asm/jump_x86_64_sysv_elf_gas.o : asm/jump_x86_64_sysv_elf_gas.S : @gas64 ]
841 [ make asm/ontop_x86_64_sysv_elf_gas.o : asm/ontop_x86_64_sysv_elf_gas.S : @gas64 ]
842 : <abi>x32
843 <address-model>64
844 <architecture>x86
845 <binary-format>elf
846 ;
847
848alias asm_context_sources
849 : asm/make_x86_64_sysv_elf_gas.S
850 asm/jump_x86_64_sysv_elf_gas.S
851 asm/ontop_x86_64_sysv_elf_gas.S
852 : <abi>x32
853 <address-model>64
854 <architecture>x86
855 <binary-format>elf
856 <toolset>clang
857 ;
858
859alias asm_context_sources
860 : asm/make_x86_64_sysv_elf_gas.S
861 asm/jump_x86_64_sysv_elf_gas.S
862 asm/ontop_x86_64_sysv_elf_gas.S
863 : <abi>x32
864 <address-model>64
865 <architecture>x86
866 <binary-format>elf
867 <toolset>gcc
868 ;
869
870alias asm_context_sources
871 : asm/make_x86_64_sysv_elf_gas.S
872 asm/jump_x86_64_sysv_elf_gas.S
873 asm/ontop_x86_64_sysv_elf_gas.S
874 : <abi>x32
875 <address-model>64
876 <architecture>x86
877 <binary-format>elf
878 <toolset>intel
879 ;
880
881#X86 universal
882alias asm_context_sources
883 : asm/make_i386_x86_64_sysv_macho_gas.S
884 asm/jump_i386_x86_64_sysv_macho_gas.S
885 asm/ontop_i386_x86_64_sysv_macho_gas.S
886 : <abi>sysv
887 <address-model>32_64
888 <architecture>x86
889 <binary-format>mach-o
890 ;
891
892# COMBINED
893alias asm_context_sources
894 : asm/make_combined_sysv_macho_gas.S
895 asm/jump_combined_sysv_macho_gas.S
896 asm/ontop_combined_sysv_macho_gas.S
897 : <abi>sysv
898 <architecture>combined
899 <binary-format>mach-o
900 ;
901
902
903alias asm_context_sources
904 : unsupported.cpp
905 ;
906
907explicit asm_context_sources ;
908
909obj cxx11_hdr_mutex_check : ../build/cxx11_hdr_mutex.cpp ;
910explicit cxx11_hdr_mutex_check ;
911local cxx11_mutex = [ check-target-builds
912 cxx11_hdr_mutex_check "C++11 mutex"
913 :
914 : <library>/boost/thread//boost_thread
915 ] ;
916
917alias stack_traits_sources
918 : windows/stack_traits.cpp
919 : <target-os>windows
920 :
921 : $(cxx11_mutex)
922 ;
923
924alias stack_traits_sources
925 : posix/stack_traits.cpp
926 :
927 :
928 : $(cxx11_mutex)
929 ;
930
931explicit stack_traits_sources ;
932
933
934lib boost_context
935 : asm_context_sources
936 stack_traits_sources
937 execution_context.cpp
938 ;
939
940boost-install boost_context ;