On Fri, Feb 21, 2014 at 9:03 PM, Brad King <brad.king at kitware.com> wrote:> On 02/21/2014 11:20 AM, Alexey Samsonov wrote: > > We can even use "DEPENDERS configure" instead of "DEPENDERS build" here. > > Just "build" should be sufficient because the generated build system > in compiler-rt knows how to re-run CMake if any of the inputs have > changed. This is just as you do not need to re-run "cmake ." by hand > after editing CMakeLists.txt and can just type "make". >I am not convinced. Suppose LLVMConfig.cmake (which we read in standalone compiler-rt build system) has changed. Then we should re-run cmake for standalone compiler-rt even though none of its cmake or source files was changed. Could you take a look if http://llvm-reviews.chandlerc.com/D2868 looks reasonable?> > -Brad > >-- Alexey Samsonov, MSK -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140224/829770c2/attachment.html>
On 02/24/2014 08:53 AM, Alexey Samsonov wrote:> On Fri, Feb 21, 2014 at 9:03 PM, Brad King wrote: > Just "build" should be sufficient because the generated build system > in compiler-rt knows how to re-run CMake if any of the inputs have > changed. > > Suppose LLVMConfig.cmake has changed.Every file CMake processes as part of configuring the project ends up in the build-time dependencies to re-run CMake.> Could you take a look if http://llvm-reviews.chandlerc.com/D2868 looks reasonable?It looks pretty good to me. I added some inline comments. -Brad
On Mon, Feb 24, 2014 at 6:05 PM, Brad King <brad.king at kitware.com> wrote:> On 02/24/2014 08:53 AM, Alexey Samsonov wrote: > > On Fri, Feb 21, 2014 at 9:03 PM, Brad King wrote: > > Just "build" should be sufficient because the generated build system > > in compiler-rt knows how to re-run CMake if any of the inputs have > > changed. > > > > Suppose LLVMConfig.cmake has changed. > > Every file CMake processes as part of configuring the project ends up in > the build-time dependencies to re-run CMake. >Alright, I've switched this to ExternalProject_Add_Step(compiler-rt force-rebuild DEPENDERS build ALWAYS 1 ) However, looks like this works with Unix Makefiles generators, but doesn't work for Ninja. When I run "ninja compiler-rt" twice in the build tree, I see the following message on the second run: ninja: no work to do. I've verified that compiler-rt is not rebuilt even if I change its sources. Is it a CMake bug?> > > Could you take a look if http://llvm-reviews.chandlerc.com/D2868 looks > reasonable? > > It looks pretty good to me. I added some inline comments. > > -Brad > >-- Alexey Samsonov, MSK -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140224/751c32e8/attachment.html>