llvm.org GIT mirror llvm / 8246adc
Rename "Release" builds as "Release+Asserts"; rename "Release-Asserts" builds to "Release". The default build is unchanged (optimization on, assertions on), however it is now called Release+Asserts. The intent is that future LLVM releases released via llvm.org will be Release builds in the new sense, i.e. will have assertions disabled (currently they have assertions enabled, for a more than 20% slowdown). This will bring them in line with MacOS releases, which ship with assertions disabled. It also means that "Release" now means the same things in make and cmake builds: cmake already disables assertions for "Release" builds AFAICS. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107758 91177308-0d34-0410-b5e6-96231b3b80d8 Duncan Sands 9 years ago
6 changed file(s) with 15 addition(s) and 16 deletion(s). Raw diff Collapse all Expand all
179179 # that it gets executed last.
180180 ifneq ($(BUILD_DIRS_ONLY),1)
181181 all::
182 $(Echo) '*****' Completed $(BuildMode)$(AssertMode) Build
182 $(Echo) '*****' Completed $(BuildMode) Build
183183 ifeq ($(BuildMode),Debug)
184184 $(Echo) '*****' Note: Debug build can be 10 times slower than an
185185 $(Echo) '*****' optimized build. Use 'make ENABLE_OPTIMIZED=1' to
397397
398398 # If DISABLE_ASSERTIONS=1 is specified (make command line or configured),
399399 # then disable assertions by defining the appropriate preprocessor symbols.
400 ifdef DISABLE_ASSERTIONS
401 # Indicate that assertions are turned off using a minus sign
402 BuildMode := $(BuildMode)-Asserts
400 ifndef DISABLE_ASSERTIONS
401 BuildMode := $(BuildMode)+Asserts
402 CPP.Defines += -D_DEBUG
403 else
403404 CPP.Defines += -DNDEBUG
404 else
405 CPP.Defines += -D_DEBUG
406405 endif
407406
408407 # If ENABLE_EXPENSIVE_CHECKS=1 is specified (make command line or
212212
213213
214214 The build of llvm, llvm-gcc, and clang must be free
215 of errors and warnings in both debug, release, and release-asserts builds.
215 of errors and warnings in both debug, release+asserts, and release builds.
216216 If all builds are clean, then the release passes build qualification.
217217
218218
219219
  • debug: ENABLE_OPTIMIZED=0
  • 220
  • release: ENABLE_OPTIMIZED=1
  • 221
  • release-asserts: ENABLE_OPTIMIZED=1 DISABLE_ASSERTIONS=1
  • 220
  • release+asserts: ENABLE_OPTIMIZED=1
  • 221
  • release: ENABLE_OPTIMIZED=1 DISABLE_ASSERTIONS=1
  • 222222
    223223
    224224
    226226
    227227
    228228

    229 Build both debug, release (optimized), and release-asserts versions of
    229 Build both debug, release+asserts (optimized), and release versions of
    230230 LLVM on all supported platforms. Direction to build llvm are
    231231 here.
    232232

    263263 Binary Distribution
    264264
    265265

    266 Creating the Clang binary distribution (debug/release/release-asserts) requires
    266 Creating the Clang binary distribution (debug/release/release) requires
    267267 performing the following steps for each supported platform:
    268268

    269269
    428428
    429429
    430430

    431 The final stages of the release process involving taging the release branch,
    431 The final stages of the release process involving tagging the release branch,
    432432 updating documentation that refers to the release, and updating the demo
    433433 page.

    434434

    FIXME: Add a note if anything needs to be done to the clang website.

    651651 the profiled tools (gmon.out).
    652652
    DISABLE_ASSERTIONS
    653653
    If set to any value, causes the build to disable assertions, even if
    654 building a release or profile build. This will exclude all assertion check
    654 building a debug or profile build. This will exclude all assertion check
    655655 code from the build. LLVM will execute faster, but with little help when
    656656 things go wrong.
    657657
    EXPERIMENTAL_DIRS
    145145 switch(Ty1->getTypeID()) {
    146146 default:
    147147 llvm_unreachable("Unknown type!");
    148 // Fall through in Release-Asserts mode.
    148 // Fall through in Release mode.
    149149 case Type::IntegerTyID:
    150150 case Type::OpaqueTyID:
    151151 // Ty1 == Ty2 would have returned true earlier.
    4646 # -noclean Do not run 'make clean' before building.
    4747 # -nobuild Do not build llvm. If tests are enabled perform them
    4848 # on the llvm build specified in the build directory
    49 # -release Build an LLVM Release version
    50 # -release-asserts Build an LLVM ReleaseAsserts version
    49 # -release Build an LLVM Release+Asserts version
    50 # -release-asserts Build an LLVM Release version
    5151 # -disable-bindings Disable building LLVM bindings.
    5252 # -with-clang Checkout Clang source into tools/clang.
    5353 # -compileflags Next argument specifies extra options passed to make when