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

📄 pch.jam

📁 Boost provides free peer-reviewed portable C++ source libraries. We emphasize libraries that work
💻 JAM
字号:
# Copyright (c) 2005 Reece H. Dunn.# Copyright 2006 Ilya Sokolov## Use, modification and distribution is subject to the Boost Software# License Version 1.0. (See accompanying file LICENSE_1_0.txt or# http://www.boost.org/LICENSE_1_0.txt)##### Using Precompiled Headers (Quick Guide) ####### Make precompiled mypch.hpp:##    import pch ;##    cpp-pch mypch#      : # sources#        mypch.hpp#      : # requiremnts#        <toolset>msvc:<source>mypch.cpp#      ;## Add cpp-pch to sources:##    exe hello#      : main.cpp hello.cpp mypch#      ;import "class" : new ;import type ;import feature ;import generators ;type.register     PCH : pch ;type.register   C_PCH : : PCH ;type.register CPP_PCH : : PCH ;# Control precompiled header (PCH) generation.feature.feature pch :      on      off    : propagated ;feature.feature pch-header : : free dependency ;feature.feature pch-file   : : free dependency ;# Base PCH generator. The 'run' method has the logic to prevent this generator# from being run unless it's being used for a top-level PCH target.class pch-generator : generator{    import property-set ;    rule action-class ( )    {        return compile-action ;    }    rule run ( project name ? : property-set : sources + )    {        if ! $(name)        {            # Unless this generator is invoked as the top-most generator for a            # main target, fail. This allows using 'H' type as input type for            # this generator, while preventing Boost.Build to try this generator            # when not explicitly asked for.            #            # One bad example is msvc, where pch generator produces both PCH            # target and OBJ target, so if there's any header generated (like by            # bison, or by msidl), we'd try to use pch generator to get OBJ from            # that H, which is completely wrong. By restricting this generator            # only to pch main target, such problem is solved.        }        else        {            local r = [ run-pch $(project) $(name)              : [ $(property-set).add-raw <define>BOOST_BUILD_PCH_ENABLED ]              : $(sources) ] ;            return [ generators.add-usage-requirements $(r)              : <define>BOOST_BUILD_PCH_ENABLED ] ;        }    }    # This rule must be overridden by the derived classes.    rule run-pch ( project name ? : property-set : sources + )    {    }}# NOTE: requirements are empty, default pch generator can be applied when# pch=off.generators.register    [ new dummy-generator pch.default-c-pch-generator   : :   C_PCH ] ;generators.register    [ new dummy-generator pch.default-cpp-pch-generator : : CPP_PCH ] ;

⌨️ 快捷键说明

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