⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 edg-tools.jam

📁 C++的一个好库。。。现在很流行
💻 JAM
字号:
# (C) Copyright Jens Maurer 2003. 
# 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.edg.com/">EDG<br>C++</a>

# variables used to configure eccp-tools.jam
#
# ECCP - name of eccp executable

ECCP ?= eccp ;

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

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

flags edg CFLAGS <optimization>off : -O0 ;
flags edg CFLAGS <optimization>speed : -O3 ;
flags edg CFLAGS <optimization>size : -Os ;

flags edg CFLAGS <shared-linkable>true : --pic ;
flags edg CFLAGS <debug-symbols>on : -g ;
flags edg LINKFLAGS <debug-symbols>on : -g ;
flags edg CFLAGS <profiling>on : -pg ;
flags edg LINKFLAGS <profiling>on : -pg ;

flags edg CFLAGS <cflags> ;
flags edg C++FLAGS <cxxflags> ;
flags edg DEFINES <define> ;
flags edg UNDEFS <undef> ;
flags edg HDRS <include> ;
flags edg SYSHDRS <sysinclude> ;
flags edg LINKFLAGS <linkflags> ;
flags edg ARFLAGS <arflags> ;

flags edg LIBPATH <library-path> ;
flags edg NEEDLIBS <library-file> ;
flags edg FINDLIBS <find-library> ;

#### Link ####

rule Link-action
{
    edg-Link-action $(<) : $(>) ;
}

actions edg-Link-action bind NEEDLIBS
{
    $(ECCP) $(LINKFLAGS) -tused -o "$(<[1])" "$(>)" "$(NEEDLIBS)" "$(FINDLIBS:S=.so)"
}


#### Cc #####

rule Cc-action
{
    edg-Cc-action $(<) : $(>) ;
}

actions edg-Cc-action
{
    $(ECCP) -c --c99 -U$(UNDEFS) -D$(DEFINES) $(CFLAGS) -I"$(HDRS)" -I"$(STDHDRS)" -I"$(SYSHDRS)" -o "$(<)" "$(>)"
}

#### C++ ####
rule C++-action
{
    edg-C++-action $(<) : $(>) ;
}

actions edg-C++-action
{
    $(ECCP) -tused -c -U$(UNDEFS) -D$(DEFINES) $(CFLAGS) $(C++FLAGS) -I"$(HDRS)" -I"$(STDHDRS)" -I"$(SYSHDRS)"  -o "$(<)" "$(>)"
}

#### Archive ####

rule Archive-action
{
    edg-Archive-action $(<) : $(>) ;
}

actions updated together piecemeal edg-Archive-action
{
    ar rc $(<) $(>)
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -