Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r77251 - trunk/libs/context/build
From: oliver.kowalke_at_[hidden]
Date: 2012-03-06 16:43:24


Author: olli
Date: 2012-03-06 16:43:23 EST (Tue, 06 Mar 2012)
New Revision: 77251
URL: http://svn.boost.org/trac/boost/changeset/77251

Log:
context: Jamfile refactored to separated assembler compilation

Text files modified:
   trunk/libs/context/build/Jamfile.v2 | 152 ++++++++++++---------------------------
   1 files changed, 49 insertions(+), 103 deletions(-)

Modified: trunk/libs/context/build/Jamfile.v2
==============================================================================
--- trunk/libs/context/build/Jamfile.v2 (original)
+++ trunk/libs/context/build/Jamfile.v2 2012-03-06 16:43:23 EST (Tue, 06 Mar 2012)
@@ -61,6 +61,11 @@
 
 
 
+actions gas
+{
+ as -o "$(<)" "$(>)"
+}
+
 actions masm
 {
         ml /c /Fo"$(<)" "$(>)"
@@ -72,121 +77,75 @@
 }
 
 
-
-make asm/fcontext_i386_ms_pe_masm.o : asm/fcontext_i386_ms_pe_masm.asm : @masm ;
-make asm/fcontext_x86_64_ms_pe_masm.o : asm/fcontext_x86_64_ms_pe_masm.asm : @masm64 ;
-
-
-
-alias context_sources
- : asm/fcontext_arm_aapcs_elf_gas.S
- stack_allocator_posix.cpp
- stack_utils_posix.cpp
+alias asm_context_sources
+ : [ make asm/fcontext_arm_aapcs_elf_gas.o : asm/fcontext_arm_aapcs_elf_gas.S : @gas ]
    : <abi>aapcs
      <architecture>arm
      <binary-format>elf
    ;
 
-alias context_sources
- : asm/fcontext_mips32_o32_elf_gas.S
- stack_allocator_posix.cpp
- stack_utils_posix.cpp
+alias asm_context_sources
+ : [ make asm/fcontext_mips32_o32_elf_gas.o : asm/fcontext_mips32_o32_elf_gas.S : @gas ]
    : <abi>o32
      <architecture>mips1
      <binary-format>elf
    ;
 
-#alias context_sources
-# : asm/fcontext_mips64_n32_elf_gas.S
-# stack_allocator_posix.cpp
-# stack_utils_posix.cpp
+#alias asm_context_sources
+# : [ make asm/fcontext_mips64_n32_elf_gas.o : asm/fcontext_mips64_n32_elf_gas.S : @gas ]
 # : <abi>n32
 # <architecture>mips1
 # <binary-format>elf
 # ;
 #
-#alias context_sources
-# : asm/fcontext_mips64_n64_elf_gas.S
-# stack_allocator_posix.cpp
-# stack_utils_posix.cpp
+#alias asm_context_sources
+# : [ make asm/fcontext_mips64_n64_elf_gas.o : asm/fcontext_mips64_n64_elf_gas.S : @gas ]
 # : <abi>n64
 # <architecture>mips1
 # <binary-format>elf
 # ;
 #
-#alias context_sources
-# : asm/fcontext_mips64_o64_elf_gas.S
-# stack_allocator_posix.cpp
-# stack_utils_posix.cpp
+#alias asm_context_sources
+# : [ make asm/fcontext_mips64_o64_elf_gas.o : asm/fcontext_mips64_o64_elf_gas.S : @gas ]
 # : <abi>o64
 # <architecture>mips1
 # <binary-format>elf
 # ;
 
-alias context_sources
- : asm/fcontext_ppc32_eabi_elf_gas.S
- stack_allocator_posix.cpp
- stack_utils_posix.cpp
- : <abi>eabi
- <address-model>32
- <architecture>power
- <binary-format>elf
- ;
-
-alias context_sources
- : asm/fcontext_ppc32_sysv_elf_gas.S
- stack_allocator_posix.cpp
- stack_utils_posix.cpp
+alias asm_context_sources
+ : [ make asm/fcontext_ppc32_sysv_elf_gas.o : asm/fcontext_ppc32_sysv_elf_gas.S : @gas ]
    : <abi>sysv
      <address-model>32
      <architecture>power
      <binary-format>elf
    ;
 
-alias context_sources
- : asm/fcontext_ppc64_eabi_elf_gas.S
- stack_allocator_posix.cpp
- stack_utils_posix.cpp
- : <abi>eabi
- <address-model>64
- <architecture>power
- <binary-format>elf
- ;
-
-alias context_sources
- : asm/fcontext_ppc64_sysv_elf_gas.S
- stack_allocator_posix.cpp
- stack_utils_posix.cpp
+alias asm_context_sources
+ : [ make asm/fcontext_ppc64_sysv_elf_gas.o : asm/fcontext_ppc64_sysv_elf_gas.S : @gas ]
    : <abi>sysv
      <address-model>64
      <architecture>power
      <binary-format>elf
    ;
 
-alias context_sources
- : asm/fcontext_i386_sysv_elf_gas.S
- stack_allocator_posix.cpp
- stack_utils_posix.cpp
+alias asm_context_sources
+ : [ make asm/fcontext_i386_sysv_elf_gas.o : asm/fcontext_i386_sysv_elf_gas.S : @gas ]
    : <abi>sysv
      <address-model>32
      <architecture>x86
      <binary-format>elf
    ;
 
-alias context_sources
- : asm/fcontext_x86_64_sysv_elf_gas.S
- stack_allocator_posix.cpp
- stack_utils_posix.cpp
+alias asm_context_sources
+ : [ make asm/fcontext_x86_64_sysv_elf_gas.o : asm/fcontext_x86_64_sysv_elf_gas.S : @gas ]
    : <abi>sysv
      <address-model>64
      <architecture>x86
      <binary-format>elf
    ;
 
-alias context_sources
- : asm/fcontext_x86_64_sysv_macho_gas.S
- stack_allocator_posix.cpp
- stack_utils_posix.cpp
+alias asm_context_sources
+ : [ make asm/fcontext_x86_64_sysv_macho_gas.o : asm/fcontext_x86_64_sysv_macho_gas.S : @gas ]
    : <abi>sysv
      <address-model>64
      <architecture>x86
@@ -194,69 +153,56 @@
      <target-os>darwin
    ;
 
-alias context_sources
- : seh.cpp
- stack_allocator_windows.cpp
- stack_utils_windows.cpp
- asm/fcontext_i386_ms_pe_masm.o
+alias asm_context_sources
+ : [ make asm/fcontext_i386_ms_pe_masm.o : asm/fcontext_i386_ms_pe_masm.asm : @masm ]
    : <abi>ms
      <address-model>32
      <architecture>x86
      <binary-format>pe
- <toolset>gcc
      <target-os>windows
    ;
 
-alias context_sources
- : seh.cpp
- stack_allocator_windows.cpp
- stack_utils_windows.cpp
- asm/fcontext_i386_ms_pe_masm.o
+alias asm_context_sources
+ : [ make asm/fcontext_x86_64_ms_pe_masm.o : asm/fcontext_x86_64_ms_pe_masm.asm : @masm64 ]
    : <abi>ms
- <address-model>32
+ <address-model>64
      <architecture>x86
      <binary-format>pe
      <target-os>windows
    ;
 
+explicit asm_context_sources ;
+
+
+alias select_asm_context_sources
+ : asm_context_sources
+ : [ architecture.architecture ]
+ [ architecture.address-model ]
+ ;
+
+
 alias context_sources
- : seh.cpp
+ : fcontext.cpp
+ seh.cpp
      stack_allocator_windows.cpp
      stack_utils_windows.cpp
- asm/fcontext_x86_64_ms_pe_masm.o
- : <abi>ms
- <address-model>64
- <architecture>x86
- <binary-format>pe
- <toolset>gcc
- <target-os>windows
+ : <target-os>windows
    ;
 
 alias context_sources
- : seh.cpp
- stack_allocator_windows.cpp
- stack_utils_windows.cpp
- asm/fcontext_x86_64_ms_pe_masm.o
- : <abi>ms
- <address-model>64
- <architecture>x86
- <binary-format>pe
- <target-os>windows
+ : fcontext.cpp
+ stack_allocator_posix.cpp
+ stack_utils_posix.cpp
    ;
 
 explicit context_sources ;
 
 
-alias select_context_sources
- : context_sources
- : [ architecture.architecture ]
- [ architecture.address-model ]
- ;
-
 lib boost_context
- : select_context_sources
- fcontext.cpp
+ : select_asm_context_sources
+ context_sources
    : <link>shared:<define>BOOST_CONTEXT_DYN_LINK=1
    ;
 
+
 boost-install boost_context ;


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk