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