File: como-linux.jam

package info (click to toggle)
boost-build 2.0-m12-2
  • links: PTS
  • area: main
  • in suites: lenny, squeeze
  • size: 8,692 kB
  • ctags: 6,963
  • sloc: ansic: 39,914; sh: 9,086; python: 6,120; xml: 5,524; cpp: 1,467; yacc: 456; asm: 353; makefile: 184
file content (101 lines) | stat: -rw-r--r-- 3,540 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
# Copyright 2004, 2005, 2006 Vladimir Prus 
# Distributed under the Boost Software License, Version 1.0. 
# (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt) 

# The following #// line will be used by the regression test table generation
# program as the column heading for HTML tables. Must not include version number.
#//<a href="http://www.comeaucomputing.com/">Comeau<br>C++</a>

import toolset ;
import feature ;
import toolset : flags ;
import common ;
import generators ;

import unix ;  
import como ;

feature.extend-subfeature toolset como : platform : linux ;

toolset.inherit-generators como-linux 
     <toolset>como <toolset-como:platform>linux : unix ;
generators.override como-linux.prebuilt : builtin.lib-generator ;     
generators.override como-linux.searched-lib-generator : searched-lib-generator ;
toolset.inherit-flags como-linux : unix ;
toolset.inherit-rules como-linux : gcc ;

generators.register-c-compiler como-linux.compile.c++ : CPP : OBJ 
  : <toolset>como <toolset-como:platform>linux ;
generators.register-c-compiler como-linux.compile.c : C : OBJ
  : <toolset>como <toolset-como:platform>linux ;

rule init ( version ? : command * : options * )
{
    local condition = [ common.check-init-parameters como-linux
        : version $(version) ] ;
    
    command = [ common.get-invocation-command como-linux : como 
        : $(command) ] ;
    
    common.handle-options como-linux : $(condition) : $(command) : $(options) ;
}

flags como-linux C++FLAGS <exception-handling>off : --no_exceptions ;
flags como-linux C++FLAGS <exception-handling>on : --exceptions ;

flags como-linux CFLAGS <inlining>off : --no_inlining ;
flags como-linux CFLAGS <inlining>on <inlining>full : --inlining ;

flags como-linux CFLAGS <optimization>off : -O0 ;
flags como-linux CFLAGS <optimization>speed : -O3 ;
flags como-linux CFLAGS <optimization>space : -Os ;

flags como-linux CFLAGS <debug-symbols>on : -g ;
flags como-linux LINKFLAGS <debug-symbols>on : -g ;

flags como-linux FINDLIBS : m ;
flags como-linux FINDLIBS : rt ;

flags como-linux CFLAGS <cflags> ;
flags como-linux C++FLAGS <cxxflags> ;
flags como-linux DEFINES <define> ;
flags como-linux UNDEFS <undef> ;
flags como-linux HDRS <include> ;
flags como-linux STDHDRS <sysinclude> ;
flags como-linux LINKFLAGS <linkflags> ;
flags como-linux ARFLAGS <arflags> ;

flags como-linux.link LIBRARIES <library-file> ;
flags como-linux.link LINKPATH <library-path> ;
flags como-linux.link FINDLIBS-ST <find-static-library> ;
flags como-linux.link FINDLIBS-SA <find-shared-library> ;

flags como-linux.link RPATH <dll-path> ;
flags como-linux.link RPATH_LINK <xdll-path> ;


actions link bind LIBRARIES
{
    $(CONFIG_COMMAND) $(LINKFLAGS) -o "$(<[1])" "$(>)" -L"$(LINKPATH)" -Wl,-R$(SPACE)-Wl,"$(RPATH)" -Wl,-rpath-link$(SPACE)-Wl,"$(RPATH_LINK)"  "$(LIBRARIES)"  "$(LIBRARIES)" -l$(FINDLIBS-SA) -l$(FINDLIBS-ST) 2>&1
}

actions link.dll bind LIBRARIES
{
    $(CONFIG_COMMAND) $(LINKFLAGS) -shared -o "$(<[1])" "$(>)" -L"$(LINKPATH)" -Wl,-R$(SPACE)-Wl,"$(RPATH)" -Wl,-rpath-link$(SPACE)-Wl,"$(RPATH_LINK)" "$(LIBRARIES)"  "$(LIBRARIES)" -l$(FINDLIBS-SA) -l$(FINDLIBS-ST) 2>&1
}

actions compile.c
{
    $(CONFIG_COMMAND) -c --c99 --long_long -U$(UNDEFS) -D$(DEFINES) $(CFLAGS) -I"$(HDRS)" -I"$(STDHDRS)" -o "$(<)" "$(>)" 2>&1
}

actions compile.c++
{
    $(CONFIG_COMMAND) -tused -c --long_long -U$(UNDEFS) -D$(DEFINES) $(CFLAGS) $(C++FLAGS) -I"$(HDRS)" -I"$(STDHDRS)"  -o "$(<)" "$(>)" 2>&1
}

actions archive
{
    ar rcu $(<) $(>)
}