[llvm-dev] 10.0.1-rc1 release has been tagged

Sedat Dilek via llvm-dev llvm-dev at lists.llvm.org
Wed May 20 21:35:08 PDT 2020


On Wed, May 20, 2020 at 11:12 PM Tom Stellard <tstellar at redhat.com> wrote:
>
> On 05/20/2020 09:53 AM, Sedat Dilek wrote:
> > On Wed, May 20, 2020 at 5:06 PM Tom Stellard <tstellar at redhat.com> wrote:
> >>
> >> On 05/19/2020 09:05 PM, Sedat Dilek wrote:
> >>> Hi Tom,
> >>>
> >>> thanks and congrats for LLVM 10.0.1-rc1 release.
> >>>
> >>> [1] shows 2 assets.
> >>> 10.0.0 RCs had a lot of more assets.
> >>> I am missing the llvm-project-10.0.1rc1.tar.xz tarball.
> >>>
> >>> Will you provide them later or is there a new development/workflow
> >>> decision I do not know of?
> >>>
> >>
> >> I've uploaded all the tarballs now.
> >>
> >
> > I have build from the below tarball.
> >
> > But the version-strings look odd.
> >
>
> You shouldn't have to make any changes to the source, did you
> try running the test-release.sh script?
>

I tried...

$ ./llvm/utils/release/test-release.sh -release 10.0.1 -rc 1 -triple
x86_64-linux-gnu
# Using git ref: llvmorg-10.0.1-rc1
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   137  100   137    0     0    345      0 --:--:-- --:--:-- --:--:--   345
100 25.7M    0 25.7M    0     0  2263k      0 --:--:--  0:00:11 --:--:-- 2530k^C

I have already built from this git-ref "llvmorg-10.0.1-rc1" successfully.

$ which clang-10
/home/dileks/src/llvm-toolchain/install/bin/clang-10

$ clang-10 --version
ClangBuiltLinux clang version 10.0.1
(https://github.com/llvm/llvm-project
f79cd71e145c6fd005ba4dd1238128dfa0dc2cb6)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /home/dileks/src/llvm-toolchain/install/bin

BTW, I use tc-build script from ClangBuiltLinux to build my
llvm-toolchain consisting of projects "clang" and "lld".

LINK: https://github.com/ClangBuiltLinux/tc-build

With my modifications:

dileks at iniza:~/src/llvm-toolchain$ ln -sf install.dileks install

$ which clang-10
/home/dileks/src/llvm-toolchain/install/bin/clang-10

$ clang-10 --version
ClangBuiltLinux clang version 10.0.1rc1
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /home/dileks/src/llvm-toolchain/install/bin

$ which ld.lld
/home/dileks/src/llvm-toolchain/install/bin/ld.lld

$ ld.lld --version
LLD 10.0.1rc1 (compatible with GNU linkers)

My goal is to use the official tarballs and the generated binaries
should show me as a version-string "10.0.1rc1" (see above).
In the past this was the case - but what is with today :-)?

IMHO this is only possible with changing LLVM_VERSION_SUFFIX.
But I may be wrong or missing something.

- Sedat -

> -Tom
>
> > First I added...
> >
> > --- llvm-project-10.0.1rc1/llvm/CMakeLists.txt  2020-05-19
> > 21:16:37.000000000 +0200
> > +++ llvm-project/llvm/CMakeLists.txt    2020-05-20 18:02:42.443960091 +0200
> > @@ -25,7 +25,7 @@ if(NOT DEFINED LLVM_VERSION_PATCH)
> >    set(LLVM_VERSION_PATCH 1)
> >  endif()
> >  if(NOT DEFINED LLVM_VERSION_SUFFIX)
> > -  set(LLVM_VERSION_SUFFIX "")
> > +  set(LLVM_VERSION_SUFFIX "rc1")
> >  endif()
> >
> > That lead to strange so-lib-names like *.so.10rc1 which is not wanted.
> >
> > I hacked around LLVM_VERSION_SUFFIX stuff.
> >
> > Here is the diff:
> >
> > diff -uprN llvm-project-10.0.1rc1/clang/CMakeLists.txt
> > llvm-project/clang/CMakeLists.txt
> > --- llvm-project-10.0.1rc1/clang/CMakeLists.txt 2020-05-19
> > 21:16:37.000000000 +0200
> > +++ llvm-project/clang/CMakeLists.txt   2020-05-20 18:36:57.621341162 +0200
> > @@ -358,8 +358,11 @@ endif()
> >  if(NOT DEFINED CLANG_VERSION_PATCHLEVEL)
> >    set(CLANG_VERSION_PATCHLEVEL ${LLVM_VERSION_PATCH})
> >  endif()
> > -# Unlike PACKAGE_VERSION, CLANG_VERSION does not include LLVM_VERSION_SUFFIX.
> > -set(CLANG_VERSION
> > "${CLANG_VERSION_MAJOR}.${CLANG_VERSION_MINOR}.${CLANG_VERSION_PATCHLEVEL}")
> > +if(NOT DEFINED CLANG_VERSION_SUFFIX)
> > +  set(CLANG_VERSION_SUFFIX ${LLVM_VERSION_SUFFIX})
> > +endif()
> > +# Explicitly include CLANG_VERSION_SUFFIX in CLANG_VERSION.
> > +set(CLANG_VERSION
> > "${CLANG_VERSION_MAJOR}.${CLANG_VERSION_MINOR}.${CLANG_VERSION_PATCHLEVEL}${CLANG_VERSION_SUFFIX}")
> >  message(STATUS "Clang version: ${CLANG_VERSION}")
> >
> >  # Configure the Version.inc file.
> > @@ -687,6 +690,7 @@ if (CLANG_ENABLE_BOOTSTRAP)
> >      CLANG_VERSION_MINOR
> >      CLANG_VERSION_PATCHLEVEL
> >      LLVM_VERSION_SUFFIX
> > +    CLANG_VERSION_SUFFIX
> >      LLVM_BINUTILS_INCDIR
> >      CLANG_REPOSITORY_STRING
> >      CMAKE_C_COMPILER_LAUNCHER
> > Binärdateien llvm-project-10.0.1rc1/clang/test/Analysis/analyzer_test.pyc
> > und llvm-project/clang/test/Analysis/analyzer_test.pyc sind
> > verschieden.
> > diff -uprN llvm-project-10.0.1rc1/lld/CMakeLists.txt
> > llvm-project/lld/CMakeLists.txt
> > --- llvm-project-10.0.1rc1/lld/CMakeLists.txt   2020-05-19
> > 21:16:37.000000000 +0200
> > +++ llvm-project/lld/CMakeLists.txt     2020-05-20 18:40:07.817924825 +0200
> > @@ -120,16 +120,23 @@ set(LLD_SOURCE_DIR ${CMAKE_CURRENT_SOURC
> >  set(LLD_INCLUDE_DIR ${LLD_SOURCE_DIR}/include )
> >  set(LLD_BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR})
> >
> > -# Compute the LLD version from the LLVM version.
> > -string(REGEX MATCH "[0-9]+\\.[0-9]+(\\.[0-9]+)?" LLD_VERSION
> > -  ${PACKAGE_VERSION})
> > +# If LLD_VERSION_* is specified, use it, if not use LLVM_VERSION_*.
> > +if(NOT DEFINED LLD_VERSION_MAJOR)
> > +  set(LLD_VERSION_MAJOR ${LLVM_VERSION_MAJOR})
> > +endif()
> > +if(NOT DEFINED LLD_VERSION_MINOR)
> > +  set(LLD_VERSION_MINOR ${LLVM_VERSION_MINOR})
> > +endif()
> > +if(NOT DEFINED LLD_VERSION_PATCHLEVEL)
> > +  set(LLD_VERSION_PATCHLEVEL ${LLVM_VERSION_PATCH})
> > +endif()
> > +if(NOT DEFINED LLD_VERSION_SUFFIX)
> > +  set(LLD_VERSION_SUFFIX ${LLVM_VERSION_SUFFIX})
> > +endif()
> > +# Explicitly include LLD_VERSION_SUFFIX in LLD_VERSION.
> > +set(LLD_VERSION
> > "${LLD_VERSION_MAJOR}.${LLD_VERSION_MINOR}.${LLD_VERSION_PATCHLEVEL}${LLD_VERSION_SUFFIX}")
> >  message(STATUS "LLD version: ${LLD_VERSION}")
> >
> > -string(REGEX REPLACE "([0-9]+)\\.[0-9]+(\\.[0-9]+)?" "\\1" LLD_VERSION_MAJOR
> > -  ${LLD_VERSION})
> > -string(REGEX REPLACE "[0-9]+\\.([0-9]+)(\\.[0-9]+)?" "\\1" LLD_VERSION_MINOR
> > -  ${LLD_VERSION})
> > -
> >  # Determine LLD revision and repository.
> >  # TODO: Figure out a way to get the revision and the repository on windows.
> >  if ( NOT CMAKE_SYSTEM_NAME MATCHES "Windows" )
> > diff -uprN llvm-project-10.0.1rc1/llvm/cmake/modules/AddLLVM.cmake
> > llvm-project/llvm/cmake/modules/AddLLVM.cmake
> > --- llvm-project-10.0.1rc1/llvm/cmake/modules/AddLLVM.cmake
> > 2020-05-19 21:16:37.000000000 +0200
> > +++ llvm-project/llvm/cmake/modules/AddLLVM.cmake       2020-05-20
> > 18:29:09.272548995 +0200
> > @@ -544,8 +544,8 @@ function(llvm_add_library name)
> >        set_target_properties(${name}
> >          PROPERTIES
> >          # Since 4.0.0, the ABI version is indicated by the major version
> > -        SOVERSION ${LLVM_VERSION_MAJOR}${LLVM_VERSION_SUFFIX}
> > -        VERSION ${LLVM_VERSION_MAJOR}${LLVM_VERSION_SUFFIX})
> > +        SOVERSION ${LLVM_VERSION_MAJOR}
> > +        VERSION ${LLVM_VERSION_MAJOR})
> >      endif()
> >    endif()
> >
> > @@ -567,7 +567,7 @@ function(llvm_add_library name)
> >        if(${output_name} STREQUAL "output_name-NOTFOUND")
> >          set(output_name ${name})
> >        endif()
> > -      set(library_name
> > ${output_name}-${LLVM_VERSION_MAJOR}${LLVM_VERSION_SUFFIX})
> > +      set(library_name ${output_name}-${LLVM_VERSION_MAJOR})
> >        set(api_name
> > ${output_name}-${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}.${LLVM_VERSION_PATCH}${LLVM_VERSION_SUFFIX})
> >        set_target_properties(${name} PROPERTIES OUTPUT_NAME ${library_name})
> >        llvm_install_library_symlink(${api_name} ${library_name} SHARED
> > diff -uprN llvm-project-10.0.1rc1/llvm/CMakeLists.txt
> > llvm-project/llvm/CMakeLists.txt
> > --- llvm-project-10.0.1rc1/llvm/CMakeLists.txt  2020-05-19
> > 21:16:37.000000000 +0200
> > +++ llvm-project/llvm/CMakeLists.txt    2020-05-20 18:02:42.443960091 +0200
> > @@ -25,7 +25,7 @@ if(NOT DEFINED LLVM_VERSION_PATCH)
> >    set(LLVM_VERSION_PATCH 1)
> >  endif()
> >  if(NOT DEFINED LLVM_VERSION_SUFFIX)
> > -  set(LLVM_VERSION_SUFFIX "")
> > +  set(LLVM_VERSION_SUFFIX "rc1")
> >  endif()
> >
> >  if (NOT PACKAGE_VERSION)
> > diff -uprN llvm-project-10.0.1rc1/llvm/tools/llvm-config/CMakeLists.txt
> > llvm-project/llvm/tools/llvm-config/CMakeLists.txt
> > --- llvm-project-10.0.1rc1/llvm/tools/llvm-config/CMakeLists.txt
> >  2020-05-19 21:16:37.000000000 +0200
> > +++ llvm-project/llvm/tools/llvm-config/CMakeLists.txt  2020-05-20
> > 18:28:03.793999462 +0200
> > @@ -49,7 +49,7 @@ set(LLVM_CFLAGS "${LLVM_C_STD_FLAG} ${LL
> >  set(LLVM_CXXFLAGS
> > "${CMAKE_CXX${CMAKE_CXX_STANDARD}_STANDARD_COMPILE_OPTION}
> > ${LLVM_CXX_STDLIB_FLAG} ${COMPILE_FLAGS} ${LLVM_DEFINITIONS}")
> >  set(LLVM_BUILD_SYSTEM cmake)
> >  set(LLVM_HAS_RTTI ${LLVM_CONFIG_HAS_RTTI})
> > -set(LLVM_DYLIB_VERSION "${LLVM_VERSION_MAJOR}${LLVM_VERSION_SUFFIX}")
> > +set(LLVM_DYLIB_VERSION "${LLVM_VERSION_MAJOR}")
> >  set(LLVM_HAS_GLOBAL_ISEL "ON")
> >
> >  # Use the C++ link flags, since they should be a superset of C link flags.
> > - End Of DIFF -
> >
> > With this I now get:
> >
> > $ ./bin/clang-10 -v
> > ClangBuiltLinux clang version 10.0.1rc1
> > Target: x86_64-unknown-linux-gnu
> > Thread model: posix
> > InstalledDir: /home/dileks/src/llvm-toolchain/build/stage1/./bin
> > Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/10
> > Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/8
> > Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/9
> > Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/10
> > Candidate multilib: .;@m64
> > Candidate multilib: 32;@m32
> > Candidate multilib: x32;@mx32
> > Selected multilib: .;@m64
> >
> > $ ./bin/ld.lld -v
> > LLD 10.0.1rc1 (compatible with GNU linkers)
> >
> > $ find ./ -name '*.so*' | sort
> > ./lib/BugpointPasses.so
> > ./lib/libclang-cpp.so
> > ./lib/libclang-cpp.so.10
> > ./lib/libclang.so
> > ./lib/libclang.so.10
> > ./lib/libLTO.so
> > ./lib/libLTO.so.10
> > ./lib/libRemarks.so
> > ./lib/libRemarks.so.10
> > ./lib/LLVMgold.so
> > ./lib/LLVMHello.so
> >
> > Looks that sane to you?
> >
> > Regards,
> > - Sedat -
> >
> > [1] https://github.com/llvm/llvm-project/releases/download/llvmorg-10.0.1-rc1/llvm-project-10.0.1rc1.tar.xz
> >
> >
> >> -Tom
> >>
> >>> BTW, the source zip and tar.gz tarballs show no sizes.
> >>> I am using Mobile LTE/UMTS to download stuff from the Internet.
> >>>
> >>> For now I used the "llvmorg-10.0.1-rc1" Git tag to build my
> >>> llvm-toolchain on Debian/testin8g AMD64.
> >>>
> >>> Thanks.
> >>>
> >>> Regards,
> >>> - Sedat -
> >>>
> >>> [1] https://github.com/llvm/llvm-project/releases/tag/llvmorg-10.0.1-rc1
> >>>
> >>
>


More information about the llvm-dev mailing list