]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/context/build/Jamfile.v2
update sources to v12.2.3
[ceph.git] / ceph / src / boost / libs / context / build / Jamfile.v2
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
9 import common ;
10 import feature ;
11 import indirect ;
12 import modules ;
13 import os ;
14 import toolset ;
15
16 feature.feature segmented-stacks : on : optional propagated composite ;
17 feature.compose <segmented-stacks>on : <define>BOOST_USE_SEGMENTED_STACKS ;
18
19 feature.feature htm : tsx : optional propagated composite ;
20 feature.compose <htm>tsx : <define>BOOST_USE_TSX ;
21
22 feature.feature valgrind : on : optional propagated composite ;
23 feature.compose <valgrind>on : <define>BOOST_USE_VALGRIND ;
24
25 project boost/context
26 : requirements
27 <target-os>windows:<define>_WIN32_WINNT=0x0601
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
48
49 local 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
59 feature.feature binary-format
60 : elf
61 mach-o
62 pe
63 xcoff
64 : propagated
65 ;
66 feature.set-default binary-format : [ default_binary_format ] ;
67
68
69 local 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
79 feature.feature abi
80 : aapcs
81 eabi
82 ms
83 n32
84 n64
85 o32
86 o64
87 sysv
88 x32
89 : propagated
90 ;
91 feature.set-default abi : [ default_abi ] ;
92
93
94 feature.feature context-impl
95 : fcontext
96 ucontext
97 winfib
98 : propagated
99 composite
100 ;
101 feature.set-default context-impl : fcontext ;
102 feature.compose <context-impl>ucontext : <define>BOOST_USE_UCONTEXT ;
103 feature.compose <context-impl>winfib : <define>BOOST_USE_WINFIB ;
104
105
106 feature.feature context-switch
107 : cc
108 ec
109 : propagated
110 composite ;
111 feature.set-default context-switch : cc ;
112 feature.compose <context-switch>ec : <define>BOOST_USE_EXECUTION_CONTEXT ;
113
114
115 actions gas32
116 {
117 cpp -x assembler-with-cpp "$(>)" | as --32 -o "$(<)"
118 }
119
120 actions gas64
121 {
122 cpp -x assembler-with-cpp "$(>)" | as --64 -o "$(<)"
123 }
124
125 actions gasx32
126 {
127 cpp -x assembler-with-cpp "$(>)" | as --x32 -o "$(<)"
128 }
129
130 actions gas
131 {
132 cpp -x assembler-with-cpp "$(>)" | as -o "$(<)"
133 }
134
135 actions armasm
136 {
137 armasm "$(>)" "$(<)"
138 }
139
140 actions masm
141 {
142 ml /c /Fo"$(<)" "$(>)"
143 }
144
145 actions masm64
146 {
147 ml64 /c /Fo"$(<)" "$(>)"
148 }
149
150
151 rule 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
168 alias asm_sources
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
179 alias asm_sources
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
190 alias asm_sources
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 ;
200
201 # ARM/AAPCS/MACH-O
202 alias asm_sources
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
213 alias asm_sources
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 ;
223
224 # ARM/AAPCS/PE
225 alias asm_sources
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
239 alias asm_sources
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
250 alias asm_sources
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
262 alias asm_sources
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
273 alias asm_sources
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
286 alias asm_sources
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
297 alias asm_sources
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
310 alias asm_sources
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
321 alias asm_sources
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
329 <toolset>clang
330 ;
331
332 alias asm_sources
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 ;
342
343 #POWERPC_32/SYSV/XCOFF
344 alias asm_sources
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
355 alias asm_sources
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
368 alias asm_sources
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
379 alias asm_sources
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 ;
389
390 # POWERPC_64/SYSV/MACH-O
391 alias asm_sources
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
403 alias asm_sources
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 ;
414
415 # POWERPC_64/SYSV/XCOFF
416 alias asm_sources
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
427 alias asm_sources
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
440 alias asm_sources
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
452 alias asm_sources
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
463 alias asm_sources
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
474 alias asm_sources
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 ;
484
485 # X86/SYSV/MACH-O
486 alias asm_sources
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
497 alias asm_sources
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 ;
507
508 # X86/MS/PE
509 alias 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
513 dummy.cpp
514 : <abi>ms
515 <address-model>32
516 <architecture>x86
517 <binary-format>pe
518 <toolset>clang
519 ;
520
521 alias asm_sources
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
530 <toolset>clang-win
531 ;
532
533 alias asm_sources
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
545 alias asm_sources
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
557 alias asm_sources
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
571 alias asm_sources
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
582 alias asm_sources
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
593 alias asm_sources
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 ;
603
604 # X86_64/SYSV/MACH-O
605 alias asm_sources
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
616 alias asm_sources
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
627 alias asm_sources
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 ;
637
638 # X86_64/MS/PE
639 alias 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
643 dummy.cpp
644 : <abi>ms
645 <address-model>64
646 <architecture>x86
647 <binary-format>pe
648 <toolset>clang
649 ;
650
651 alias asm_sources
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
660 <toolset>clang-win
661 ;
662
663 alias asm_sources
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
675 alias asm_sources
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
687 alias asm_sources
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 ;
698
699 # X86_64/SYSV/X32
700 alias asm_sources
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
711 alias asm_sources
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
722 alias asm_sources
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
734 alias asm_sources
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
745 alias asm_sources
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
754 explicit asm_sources ;
755
756
757 # fcontext_t
758 alias impl_sources
759 : asm_sources
760 : <context-impl>fcontext
761 <context-switch>cc
762 ;
763
764 alias impl_sources
765 : asm_sources
766 execution_context.cpp
767 : <context-impl>fcontext
768 <context-switch>ec
769 ;
770
771 # ucontext_t
772 alias impl_sources
773 : continuation.cpp
774 : <context-impl>ucontext
775 ;
776
777 # WinFiber
778 alias impl_sources
779 : continuation.cpp
780 : <context-impl>winfib
781 ;
782
783 explicit impl_sources ;
784
785
786 obj cxx11_hdr_mutex_check : ../build/cxx11_hdr_mutex.cpp ;
787 explicit cxx11_hdr_mutex_check ;
788 local cxx11_mutex = [ check-target-builds
789 cxx11_hdr_mutex_check "C++11 mutex"
790 :
791 : <library>/boost/thread//boost_thread
792 ] ;
793
794 alias stack_traits_sources
795 : windows/stack_traits.cpp
796 : <target-os>windows
797 :
798 : $(cxx11_mutex)
799 ;
800
801 alias stack_traits_sources
802 : posix/stack_traits.cpp
803 :
804 :
805 : $(cxx11_mutex)
806 ;
807
808 explicit stack_traits_sources ;
809
810
811 lib boost_context
812 : impl_sources
813 stack_traits_sources
814 ;
815
816 boost-install boost_context ;