It looks like you are rerunning cmake without first removing the cache, CMakeCache.txt. Since the option () command that sets LLVM_ENABLE_ASSERTIONS didn't include FORCE, the previous cached value is preserved.
Therefore, I'd recommend always removing the cache -- I actually blow away the entire directory tree -- and starting from scratch. To ensure (re)builds don't take too long, I also use ccache. Although it works great for llvm, clang, etc..., it does break the libcxx and libcxxabi tests under check-all, but I've submitted a couple trivial patches that fix that problem. hth... don On Mar 17, 2016 11:26 AM, "David Blaikie via cfe-users" < cfe-users@lists.llvm.org> wrote: > > > On Wed, Mar 16, 2016 at 3:36 PM, jps...@gmail.com <jps...@gmail.com> > wrote: > >> >> >> On Wed, Mar 16, 2016 at 5:55 PM, David Blaikie <dblai...@gmail.com> >> wrote: >> >>> >>> >>> On Wed, Mar 16, 2016 at 2:12 PM, jps...@gmail.com <jps...@gmail.com> >>> wrote: >>> >>>> David and all, a couple more questions. I stumbled upon >>>> http://llvm.org/docs/Packaging.html and see a few other options. For a >>>> typical clang build where I am not hacking on clang, but I do want good >>>> error messages for debugging my programs, >>>> >>> >>> Define "my programs" - are you using LLVM as a library? If so, you >>> probably want a with-asserts build for development so you get better >>> failures when you use LLVM incorrectly. If you're just using Clang as a >>> normal compiler - a build without assertions should be just fine. If you >>> hit a crash in the compiler you can still file it, and we'll run in with an >>> assertions-enabled build to investigate further, generally. >>> >> >> Just using clang (and clang tools) -- not using LLVM as a library. So, >> running without assertions seems right for my needs. >> >> >>> >>> >>>> which options are recommended [1]? It seems like I should use >>>> --disable-assertions, but I'm not sure about enable-debug-symbols and >>>> enable-optimized (which seem at odds with each other?). >>>> >>> >>> If you're using LLVM as a library, but not expecting to be able to fix >>> any bugs in it yourself, probably optimized with assertiotns and without >>> debug info should be fine. >>> >>> If you're just using clang as a compiler, release (optimized), no >>> assertions, no debug info. >>> >>> >> >> It seems that just enabling -DCMAKE_BUILD_TYPE=Release is not sufficient >> to turn off assertions as I tried that and when I run clang-tidy --version >> it says " LLVM version 3.9.0svn; Optimized build with assertions." So, I'm >> going to try --disable-assertions --enable-optimized --disable-debug-symbols >> (or the environment variable equivalents). >> >> That seem right to you? >> > > Yeah, sounds about right. > > >> It's still confusing to me that there's no CMAKE_BUILD_TYPE that enables >> these sorts of options as a bundle, but I guess that's what I get from >> compiling from source. >> > > Yeah - not sure what the right recipe is for building things the same as > the official releases. No doubt it's written down somewhere... > > >> >> Thanks >> Jim >> >> >> >> >>> [1] >>> >>>> --disable-assertions--enable-debug-symbols--enable-optimized >>>> [2] >>>> >>>> $ clang --version >>>> >>>> clang version 3.9.0 (trunk 263648) >>>> >>>> Target: x86_64-apple-darwin15.0.0 >>>> >>>> Thread model: posix >>>> >>>> InstalledDir: /Users/jim/toolchains/llvm/bin >>>> >>>> On Wed, Mar 16, 2016 at 2:05 PM, jps...@gmail.com <jps...@gmail.com> >>>> wrote: >>>> >>>>> Got it -- thanks! >>>>> >>>>> >>>>> On Wednesday, March 16, 2016, David Blaikie <dblai...@gmail.com> >>>>> wrote: >>>>> >>>>>> >>>>>> >>>>>> On Wed, Mar 16, 2016 at 7:25 AM, jps...@gmail.com via cfe-users < >>>>>> cfe-users@lists.llvm.org> wrote: >>>>>> >>>>>>> Hi, I recently installed "Release" clang (svn r263305) from source >>>>>>> on my OSX machine, and it's compiling a 20 file C++ program about 50% >>>>>>> slower than the natively installed clang 3.7 (that came with xcode, I >>>>>>> believe, although I don't use xcode). I currently have both sets of >>>>>>> tools >>>>>>> installed and am able to switch back and forth and verify using time >>>>>>> that >>>>>>> clang 3.7 takes about 30 seconds and clang 3.9 takes about 45 seconds, >>>>>>> on >>>>>>> average (all flags, settings, etc. are the same for both). I did build >>>>>>> with >>>>>>> "Release" as the build type, although I also did set >>>>>>> DLLVM_ENABLE_ASSERTIONS=ON (could this be the problem?). >>>>>>> >>>>>> >>>>>> Yes, the build system should print a warning telling you that an >>>>>> assertions enabled build can be up to ten times slower. Performance >>>>>> comparisons/measurements of an assertions enabled compiler aren't >>>>>> something >>>>>> we really do/tune for. >>>>>> >>>>>> >>>>>>> More details below. Please let me know if you have any ideas about >>>>>>> why this newer clang would be noticable slower. >>>>>>> >>>>>>> Generally, I'm just trying to use clang as a user, not a clang >>>>>>> developer, so if you have general recommendations for how to configure >>>>>>> this, please let me know. >>>>>>> >>>>>>> Thank you, >>>>>>> Jim >>>>>>> >>>>>>> How I configured and installed: >>>>>>> >>>>>>> cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release >>>>>>> -DLLVM_ENABLE_ASSERTIONS=ON ../llvm >>>>>>> make >>>>>>> cmake -DCMAKE_INSTALL_PREFIX=$CLANG_PREFIX -P cmake_install.cmake >>>>>>> >>>>>>> >>>>>>> Here are some specifics: >>>>>>> >>>>>>> $ uname -a >>>>>>> Darwin localhost 15.0.0 Darwin Kernel Version 15.0.0: Wed Aug 26 >>>>>>> 16:57:32 PDT 2015; root:xnu-3247.1.106~1/RELEASE_X86_64 x86_64 >>>>>>> >>>>>>> $ clang --version >>>>>>> clang version 3.9.0 (trunk 263305) >>>>>>> Target: x86_64-apple-darwin15.0.0 >>>>>>> Thread model: posix >>>>>>> InstalledDir: /Users/jim/toolchains/llvm/bin >>>>>>> >>>>>>> _______________________________________________ >>>>>>> cfe-users mailing list >>>>>>> cfe-users@lists.llvm.org >>>>>>> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-users >>>>>>> >>>>>>> >>>>>> >>>> >>> >> > > _______________________________________________ > cfe-users mailing list > cfe-users@lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-users > >
_______________________________________________ cfe-users mailing list cfe-users@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-users