Sedat Dilek via llvm-dev
2020-May-20 16:53 UTC
[llvm-dev] 10.0.1-rc1 release has been tagged
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. 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 > > >-------------- next part -------------- A non-text attachment was scrubbed... Name: LLVM_VERSION_SUFFIX.diff Type: text/x-patch Size: 5456 bytes Desc: not available URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20200520/0f5c839d/attachment.bin>
Sedat Dilek via llvm-dev
2020-May-20 18:40 UTC
[llvm-dev] 10.0.1-rc1 release has been tagged
One Clang test fails when LLVM_VERSION_SUFFIX="rc1" is used: --- llvm-project-10.0.1rc1/clang/test/Preprocessor/iwithprefix.c 2020-05-19 21:16:37.000000000 +0200 +++ llvm-project/clang/test/Preprocessor/iwithprefix.c 2020-05-20 20:28:03.774851595 +0200 @@ -9,7 +9,7 @@ // CHECK: #include <...> search starts here: // CHECK: {{.*}}.tmps/first -// CHECK: {{/|\\}}lib{{(32|64)?}}{{/|\\}}clang{{/|\\}}{{[.0-9]+}}{{/|\\}}include +// CHECK: {{/|\\}}lib{{(32|64)?}}{{/|\\}}clang{{/|\\}}{{[.0-9]+}}rc1{{/|\\}}include // CHECK: {{.*}}.tmps/second // CHECK-NOT: {{.*}}.tmps Maybe there is a better fix like above. - Sedat -
Tom Stellard via llvm-dev
2020-May-20 21:12 UTC
[llvm-dev] 10.0.1-rc1 release has been tagged
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? -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 >>> >>
Sedat Dilek via llvm-dev
2020-May-21 04:35 UTC
[llvm-dev] 10.0.1-rc1 release has been tagged
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 > >>> > >> >