[llvm] r319176 - [cmake] Remove redundant call to cmake when building host tools.

Don Hinton via llvm-commits llvm-commits at lists.llvm.org
Tue Nov 28 16:24:30 PST 2017


Okay, was able to reproduce -- the ';' separators in the list are
disappearing when the list variable was evaluated -- my fault for not
testing that case.

Looks like I'll have to rollback until I can find a way to maintain the
separators.

On Tue, Nov 28, 2017 at 4:51 PM, Don Hinton <hintonda at gmail.com> wrote:

> Right.  Looking into it.
>
> On Tue, Nov 28, 2017 at 4:50 PM, Galina Kistanova <gkistanova at gmail.com>
> wrote:
>
>> One more builder is affected:
>> http://lab.llvm.org:8011/builders/llvm-clang-x86_64-expensive-checks-win
>>
>> Thanks
>>
>> Galina
>>
>> On Tue, Nov 28, 2017 at 3:41 PM, Galina Kistanova <gkistanova at gmail.com>
>> wrote:
>>
>>> Hello Don,
>>>
>>> This commit broke few bots.
>>> Could you take care of this, please?
>>>
>>> The some of the bots are heavy and slow, so sooner you will make them
>>> back green, the better.
>>>
>>> r319175 is green: http://lab.llvm.org:8011/build
>>> ers/lld-x86_64-win7/builds/16088
>>> r319176 is red: http://lab.llvm.org:8011/build
>>> ers/lld-x86_64-win7/builds/16094
>>>
>>> . . .
>>> FAILED: cmd.exe /C "cd /D C:\lld-x86_64_win7\lld-x86_64-win7\llvm.obj\NATIVE
>>> && "C:\Program Files (x86)\CMake\bin\cmake.exe" -G Ninja
>>> C:/lld-x86_64_win7/lld-x86_64-win7/llvm.src
>>> -DLLVM_TARGET_IS_CROSSCOMPILE_HOST=TRUE -DLLVM_TARGETS_TO_BUILD=AArch64
>>> AMDGPU ARM BPF Hexagon Lanai Mips MSP430 NVPTX PowerPC Sparc SystemZ X86
>>> XCore -DCMAKE_BUILD_TYPE=Release"
>>> CMake Error: The source directory "C:/lld-x86_64_win7/lld-x86_64-win7/llvm.obj/NATIVE/XCore"
>>> does not exist.
>>>
>>>
>>> Also at least two more bots are affected:
>>>
>>> http://lab.llvm.org:8011/builders/clang-with-thin-lto-ubuntu/builds/6965
>>> . . .
>>> FAILED: NATIVE/CMakeCache.txt
>>> cd /home/buildslave/ps4-buildslave1/clang-with-thin-lto-ubuntu/build/stage2/NATIVE
>>> && /usr/local/bin/cmake -G Ninja /home/buildslave/ps4-buildslav
>>> e1/clang-with-thin-lto-ubuntu/llvm.src -DLLVM_TARGET_IS_CROSSCOMPILE_HOST=TRUE
>>> -DLLVM_TARGETS_TO_BUILD=AArch64 AMDGPU ARM BPF Hexagon Lanai Mips
>>> MSP430 NVPTX PowerPC Sparc SystemZ X86 XCore -DCMAKE_BUILD_TYPE=Release
>>> CMake Error: The source directory "/home/buildslave/ps4-buildsla
>>> ve1/clang-with-thin-lto-ubuntu/build/stage2/NATIVE/XCore" does not
>>> exist.
>>>
>>>
>>> http://lab.llvm.org:8011/builders/clang-with-thin-lto-ubuntu/builds/6970
>>> . . .
>>> FAILED: NATIVE/CMakeCache.txt
>>> cd /home/buildslave/ps4-buildslave1/clang-with-thin-lto-ubuntu/build/stage2/NATIVE
>>> && /usr/local/bin/cmake -G Ninja /home/buildslave/ps4-buildslav
>>> e1/clang-with-thin-lto-ubuntu/llvm.src -DLLVM_TARGET_IS_CROSSCOMPILE_HOST=TRUE
>>> -DLLVM_TARGETS_TO_BUILD=AArch64 AMDGPU ARM BPF Hexagon Lanai Mips
>>> MSP430 NVPTX PowerPC Sparc SystemZ X86 XCore -DCMAKE_BUILD_TYPE=Release
>>> CMake Error: The source directory "/home/buildslave/ps4-buildsla
>>> ve1/clang-with-thin-lto-ubuntu/build/stage2/NATIVE/XCore" does not
>>> exist.
>>>
>>> Thanks
>>>
>>> Galina
>>>
>>> On Tue, Nov 28, 2017 at 8:08 AM, Don Hinton via llvm-commits <
>>> llvm-commits at lists.llvm.org> wrote:
>>>
>>>> Author: dhinton
>>>> Date: Tue Nov 28 08:08:57 2017
>>>> New Revision: 319176
>>>>
>>>> URL: http://llvm.org/viewvc/llvm-project?rev=319176&view=rev
>>>> Log:
>>>> [cmake] Remove redundant call to cmake when building host tools.
>>>>
>>>> Summary:
>>>> Remove the redundant, config-time call to cmake when
>>>> building host tools for cross compiles or optimized tablegen..
>>>>
>>>> The config-time call to cmake is redundant because it will always get
>>>> called again when the CONFIGURE_LLVM_${target_name} target fires at
>>>> build-time.  This speeds up initial configuration, but has no affect
>>>> on build behavior.
>>>>
>>>> Reviewers: beanz
>>>>
>>>> Reviewed By: beanz
>>>>
>>>> Subscribers: mgorny, llvm-commits
>>>>
>>>> Differential Revision: https://reviews.llvm.org/D40229
>>>>
>>>> Modified:
>>>>     llvm/trunk/cmake/modules/CrossCompile.cmake
>>>>
>>>> Modified: llvm/trunk/cmake/modules/CrossCompile.cmake
>>>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/cmake/modules
>>>> /CrossCompile.cmake?rev=319176&r1=319175&r2=319176&view=diff
>>>> ============================================================
>>>> ==================
>>>> --- llvm/trunk/cmake/modules/CrossCompile.cmake (original)
>>>> +++ llvm/trunk/cmake/modules/CrossCompile.cmake Tue Nov 28 08:08:57
>>>> 2017
>>>> @@ -12,6 +12,14 @@ function(llvm_create_cross_target_intern
>>>>          CACHE STRING "Toolchain file for ${target_name}")
>>>>    endif()
>>>>
>>>> +  if (buildtype)
>>>> +    set(build_type_flags "-DCMAKE_BUILD_TYPE=${buildtype}")
>>>> +  endif()
>>>> +  if (LLVM_EXTERNAL_CLANG_SOURCE_DIR)
>>>> +    # Propagate LLVM_EXTERNAL_CLANG_SOURCE_DIR so that clang-tblgen
>>>> can be built
>>>> +    set(external_clang_dir "-DLLVM_EXTERNAL_CLANG_SOURCE_
>>>> DIR=${LLVM_EXTERNAL_CLANG_SOURCE_DIR}")
>>>> +  endif()
>>>> +
>>>>    add_custom_command(OUTPUT ${LLVM_${target_name}_BUILD}
>>>>      COMMAND ${CMAKE_COMMAND} -E make_directory
>>>> ${LLVM_${target_name}_BUILD}
>>>>      COMMENT "Creating ${LLVM_${target_name}_BUILD}...")
>>>> @@ -23,6 +31,8 @@ function(llvm_create_cross_target_intern
>>>>      COMMAND ${CMAKE_COMMAND} -G "${CMAKE_GENERATOR}"
>>>>          ${CROSS_TOOLCHAIN_FLAGS_${target_name}} ${CMAKE_SOURCE_DIR}
>>>>          -DLLVM_TARGET_IS_CROSSCOMPILE_HOST=TRUE
>>>> +        -DLLVM_TARGETS_TO_BUILD=${LLVM_TARGETS_TO_BUILD}
>>>> +        ${build_type_flags} ${external_clang_dir}
>>>>      WORKING_DIRECTORY ${LLVM_${target_name}_BUILD}
>>>>      DEPENDS CREATE_LLVM_${target_name}
>>>>      COMMENT "Configuring ${target_name} LLVM...")
>>>> @@ -30,32 +40,6 @@ function(llvm_create_cross_target_intern
>>>>    add_custom_target(CONFIGURE_LLVM_${target_name}
>>>>                      DEPENDS ${LLVM_${target_name}_BUILD}/C
>>>> MakeCache.txt)
>>>>
>>>> -  set_directory_properties(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES
>>>> -                                      ${LLVM_${target_name}_BUILD})
>>>> -
>>>> -  if(NOT IS_DIRECTORY ${LLVM_${target_name}_BUILD})
>>>> -
>>>> -
>>>> -    message(STATUS "Configuring ${target_name} build...")
>>>> -    execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory
>>>> -      ${LLVM_${target_name}_BUILD} )
>>>> -
>>>> -    message(STATUS "Configuring ${target_name} targets...")
>>>> -    if (buildtype)
>>>> -      set(build_type_flags "-DCMAKE_BUILD_TYPE=${buildtype}")
>>>> -    endif()
>>>> -       if (LLVM_EXTERNAL_CLANG_SOURCE_DIR)
>>>> -         # Propagate LLVM_EXTERNAL_CLANG_SOURCE_DIR so that
>>>> clang-tblgen can be built
>>>> -         set(external_clang_dir "-DLLVM_EXTERNAL_CLANG_SOURCE_
>>>> DIR=${LLVM_EXTERNAL_CLANG_SOURCE_DIR}")
>>>> -       endif()
>>>> -    execute_process(COMMAND ${CMAKE_COMMAND} ${build_type_flags}
>>>> -        -G "${CMAKE_GENERATOR}" -DLLVM_TARGETS_TO_BUILD=${LLVM
>>>> _TARGETS_TO_BUILD}
>>>> -        ${CROSS_TOOLCHAIN_FLAGS_${target_name}} ${CMAKE_SOURCE_DIR}
>>>> -        -DLLVM_TARGET_IS_CROSSCOMPILE_HOST=TRUE
>>>> -        ${external_clang_dir}
>>>> -      WORKING_DIRECTORY ${LLVM_${target_name}_BUILD} )
>>>> -  endif(NOT IS_DIRECTORY ${LLVM_${target_name}_BUILD})
>>>> -
>>>>  endfunction()
>>>>
>>>>  function(llvm_create_cross_target target_name sysroot)
>>>>
>>>>
>>>> _______________________________________________
>>>> llvm-commits mailing list
>>>> llvm-commits at lists.llvm.org
>>>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>>>>
>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20171128/0b5621c6/attachment.html>


More information about the llvm-commits mailing list