[llvm] r312043 - [cmake] Stop putting the revision info in LLVM_VERSION_STRING

Alex Bradbury via llvm-commits llvm-commits at lists.llvm.org
Thu Sep 7 03:17:57 PDT 2017


On 5 September 2017 at 18:14, Rafael Avila de Espindola via
llvm-commits <llvm-commits at lists.llvm.org> wrote:
> Thank you so much for fixing this!
>
> Sorry for not replying to the code review, I just got back from
> vacations.
>
> Cheers,
> Rafael

I just wanted to drop by to add my thanks for fixing this, it's
resulted in a _huge_ improvement to my workflow.

Do people see any prospect of adding tests to spot build system
regressions (like the one addressed here) early?

Best,

Alex

> Reid Kleckner via llvm-commits <llvm-commits at lists.llvm.org> writes:
>
>> Author: rnk
>> Date: Tue Aug 29 14:44:21 2017
>> New Revision: 312043
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=312043&view=rev
>> Log:
>> [cmake] Stop putting the revision info in LLVM_VERSION_STRING
>>
>> Summary:
>> This reduces the number of build actions after a no-op commit from
>> thousands to about six, which should be acceptable. If six actions is
>> still too many, developers can disable the LLVM_APPEND_VC_REV cmake
>> option.
>>
>> llvm-config.h is a widely included header that should rarely change.
>> Before this patch, it would change after every re-configure. Very few
>> users of llvm-config.h need to know the precise version, and those that
>> do can migrate to incorporating LLVM_REVISION as provided by
>> llvm/Support/VCSRevision.h.
>>
>> This should bring LLVM back to the behavior that it had before r306858
>> from June 30 2017. Most LLVM tools will now print a version string like
>> "6.0.0svn" instead of "6.0.0-git-c40c2a23de4".
>>
>> Fixes PR34308
>>
>> Reviewers: pcc, rafael, hans
>>
>> Subscribers: mgorny, llvm-commits
>>
>> Differential Revision: https://reviews.llvm.org/D37272
>>
>> Modified:
>>     llvm/trunk/CMakeLists.txt
>>     llvm/trunk/docs/CMake.rst
>>     llvm/trunk/include/llvm/Support/CMakeLists.txt
>>
>> Modified: llvm/trunk/CMakeLists.txt
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/CMakeLists.txt?rev=312043&r1=312042&r2=312043&view=diff
>> ==============================================================================
>> --- llvm/trunk/CMakeLists.txt (original)
>> +++ llvm/trunk/CMakeLists.txt Tue Aug 29 14:44:21 2017
>> @@ -203,10 +203,6 @@ include(VersionFromVCS)
>>  option(LLVM_APPEND_VC_REV
>>    "Embed the version control system revision id in LLVM" ON)
>>
>> -if( LLVM_APPEND_VC_REV )
>> -  add_version_info_from_vcs(PACKAGE_VERSION)
>> -endif()
>> -
>>  set(PACKAGE_NAME LLVM)
>>  set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
>>  set(PACKAGE_BUGREPORT "http://llvm.org/bugs/")
>>
>> Modified: llvm/trunk/docs/CMake.rst
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/CMake.rst?rev=312043&r1=312042&r2=312043&view=diff
>> ==============================================================================
>> --- llvm/trunk/docs/CMake.rst (original)
>> +++ llvm/trunk/docs/CMake.rst Tue Aug 29 14:44:21 2017
>> @@ -248,9 +248,10 @@ LLVM-specific variables
>>
>>  **LLVM_APPEND_VC_REV**:BOOL
>>    Embed version control revision info (svn revision number or Git revision id).
>> -  This is used among other things in the LLVM version string (stored in the
>> -  PACKAGE_VERSION macro). For this to work cmake must be invoked before the
>> -  build. Defaults to ON.
>> +  The version info is provided by the ``LLVM_REVISION`` macro in
>> +  ``llvm/include/llvm/Support/VCSRevision.h``. Developers using git who don't
>> +  need revision info can disable this option to avoid re-linking most binaries
>> +  after a branch switch. Defaults to ON.
>>
>>  **LLVM_ENABLE_THREADS**:BOOL
>>    Build with threads support, if available. Defaults to ON.
>>
>> Modified: llvm/trunk/include/llvm/Support/CMakeLists.txt
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Support/CMakeLists.txt?rev=312043&r1=312042&r2=312043&view=diff
>> ==============================================================================
>> --- llvm/trunk/include/llvm/Support/CMakeLists.txt (original)
>> +++ llvm/trunk/include/llvm/Support/CMakeLists.txt Tue Aug 29 14:44:21 2017
>> @@ -46,7 +46,7 @@ if((DEFINED llvm_vc) AND LLVM_APPEND_VC_
>>        RESULT_VARIABLE files_not_equal
>>        OUTPUT_QUIET
>>        ERROR_QUIET)
>> -  # Remove ${version_inc} if it's empty -- toggling LLMV_APPEND_VC_REV
>> +  # Remove ${version_inc} if it's empty -- toggling LLVM_APPEND_VC_REV
>>    # from OFF to ON.
>>    if(NOT files_not_equal)
>>      file(REMOVE "${version_inc}")
>>
>>
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at lists.llvm.org
>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits


More information about the llvm-commits mailing list