mirror of
https://github.com/boostorg/build.git
synced 2026-02-16 13:22:11 +00:00
1. If when generating something, we find more that one suitable generators, run them and more then one return something, immediately report ambiguity. Don't care if the produced targets are the same. This is better that running several generators all the time, performance wise. 2. Remove the notion of 'intermediate' virtual-targets. IIRC, they were used to prevent staging of RSP files, and we don't stage them anyway now. [SVN r29491]
102 lines
3.4 KiB
Plaintext
102 lines
3.4 KiB
Plaintext
# modify, sell and distribute this software is granted provided this
|
|
# copyright notice appears in all copies. This software is provided
|
|
# "as is" without express or implied warranty, and with no claim as
|
|
# to its suitability for any purpose.
|
|
|
|
# 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 builtin.lib-generator : como-linux.prebuilt ;
|
|
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 $(<) $(>)
|
|
}
|
|
|