On 28 January 2013 19:17, Dmitri Gribenko <gribozavr at gmail.com> wrote:> does a build in 9min. With ccache (nothing fancy -- apt-get install > ccache, set CC/CXX variables), time drops to 1:50--3:00 min on > average. >Depending on the hardware (development boards tend to be very sensitive and the kernel very raw), things that you take for granted are not that simple. For example, ccache raised some I/O problems on some ARM dev boards, and since we're always dealing with fresh hardware (sometimes pre-release), a multitude of things will fail even before you get to LLVM. Also, you don't need to do a 2-step bootstrap to catch warnings from> gcc. You also don't need a debug build, just an optimized one -- > since it is faster to linkYes, this does make a big difference. Keep the assertions, leave the debug symbols out. I believe this is the default CMake build type, but not the configure one, so be careful. Also, I got different failures with CMake and configure, so try both. Again, development kernels/hardware, so not worthy reporting to the list just yet. cheers, --renato -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130128/a99f63a7/attachment.html>
On Mon, Jan 28, 2013 at 10:42 PM, Renato Golin <renato.golin at linaro.org> wrote:> On 28 January 2013 19:17, Dmitri Gribenko <gribozavr at gmail.com> wrote: >> >> does a build in 9min. With ccache (nothing fancy -- apt-get install >> ccache, set CC/CXX variables), time drops to 1:50--3:00 min on >> average. > > > Depending on the hardware (development boards tend to be very sensitive and > the kernel very raw), things that you take for granted are not that simple. > > For example, ccache raised some I/O problems on some ARM dev boards, and > since we're always dealing with fresh hardware (sometimes pre-release), a > multitude of things will fail even before you get to LLVM.I understand that. But IIRC, David is interested in IA-32 or amd64 buildbot, that has a particular gcc version, hence my suggestion. Dmitri -- main(i,j){for(i=2;;i++){for(j=2;j<i;j++){if(!(i%j)){j=0;break;}}if (j){printf("%d\n",i);}}} /*Dmitri Gribenko <gribozavr at gmail.com>*/
On 28 January 2013 20:45, Dmitri Gribenko <gribozavr at gmail.com> wrote:> I understand that. But IIRC, David is interested in IA-32 or amd64 > buildbot, that has a particular gcc version, hence my suggestion. >Sorry, it wasn't clear from the original message that this was the case. cheers, --renato -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130128/a6550c54/attachment.html>
2013/1/29 Renato Golin <renato.golin at linaro.org>:> Yes, this does make a big difference. Keep the assertions, leave the debug > symbols out. I believe this is the default CMake build type, but not the > configure one, so be careful.No. by default, CMake generates minimal flags, w/o -g, -On, nor -DNDEBUG. "Assertions is not disabled, non-debug, non-optimized." CMAKE_CXX_FLAGS is used, but CMAKE_CXX_FLAGS_${CMAKE_BUILD_TYPE}(s) are not used. On CMake, CMAKE_BUILD_TYPE should be chosen. (could we fill it with "Debug" by default?)> Also, I got different failures with CMake and configure, so try both. Again, > development kernels/hardware, so not worthy reporting to the list just yet.It is the point that we should investigate and improve, anyways. I dare to say, it might be a good coverage to build the tree with both autoconf and cmake. ;) ...Takumi