GNU bug report logs - #55057
[PATCH core-updates] gnu: llvm-14, llvm-12: Enable RTTI.

Previous Next

Package: guix-patches;

Reported by: Greg Hogan <code <at> greghogan.com>

Date: Thu, 21 Apr 2022 20:10:01 UTC

Severity: normal

Tags: patch

Done: Marius Bakke <marius <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Marius Bakke <marius <at> gnu.org>
Cc: tracker <at> debbugs.gnu.org
Subject: bug#55057: closed ([PATCH core-updates] gnu: llvm-14, llvm-12:
 Enable RTTI.)
Date: Thu, 01 Sep 2022 21:06:02 +0000
[Message part 1 (text/plain, inline)]
Your message dated Thu, 01 Sep 2022 23:05:02 +0200
with message-id <87fshabybl.fsf <at> gnu.org>
and subject line Re: [bug#55057] [PATCH core-updates] gnu: llvm-14, llvm-12: Enable RTTI.
has caused the debbugs.gnu.org bug report #55057,
regarding [PATCH core-updates] gnu: llvm-14, llvm-12: Enable RTTI.
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)


-- 
55057: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=55057
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Greg Hogan <code <at> greghogan.com>
To: guix-patches <at> gnu.org
Subject: [PATCH core-updates] gnu: llvm-14, llvm-12: Enable RTTI.
Date: Thu, 21 Apr 2022 16:09:00 -0400
[Message part 3 (text/plain, inline)]
The llvm packages currently define LLVM_REQUIRES_RTTI rather than the
LLVM_ENABLE_RTTI flag specified in the LLVM documentation (
https://llvm.org/docs/CMake.html).

LLVM_REQUIRES_RTTI is noted as an internal flag in the llvm code (
https://github.com/llvm/llvm-project/blob/llvmorg-14.0.1/llvm/cmake/modules/AddLLVM.cmake#L15
).

This appears to have been an issue from the first Guix commit adding the
LLVM_REQUIRES_RTTI flag as LLVM_ENABLE_RTTI is the flag specified in the
documentation for llvm 3.8.1 (
https://releases.llvm.org/3.8.1/docs/CMake.html).
$ git show 83c49858b518b98f88db5f50ce36c19084e7ad62:gnu/packages/llvm.scm

LLVM_ENABLE_RTTI is propagated to the exported llvm library cmake
configuration.
$ grep RTTI /gnu/store/*-llvm-*/lib/cmake/llvm/LLVMConfig.cmake

With all llvm packages inheriting from llvm-14 or llvm-12 this patch must
go to core-updates.
$ ./pre-inst-env guix search llvm | recsel -C -P version -e "name = 'llvm'"
| awk '$0="llvm@"$0' | xargs ./pre-inst-env guix refresh -l
Building the following 4906 packages would ensure 7034 dependent packages
are rebuilt ...

Greg


From 0cd3048f15fcca774088ab4d5b97a0fdaa74652e Mon Sep 17 00:00:00 2001
From: Greg Hogan <code <at> greghogan.com>
Date: Thu, 21 Apr 2022 19:13:50 +0000
Subject: [PATCH] gnu: llvm-14, llvm-12: Enable RTTI.

* gnu/packages/llvm.scm (llvm-14, llvm-12): Enable RTTI.
[arguments]<#:configure-flags>: Switch to proper CMake flag.
---
 gnu/packages/llvm.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm
index 8348638614..a93a1976b5 100644
--- a/gnu/packages/llvm.scm
+++ b/gnu/packages/llvm.scm
@@ -577,7 +577,7 @@ (define-public llvm-14
          "-DCMAKE_BUILD_WITH_INSTALL_RPATH=FALSE"
          "-DBUILD_SHARED_LIBS:BOOL=TRUE"
          "-DLLVM_ENABLE_FFI:BOOL=TRUE"
-         "-DLLVM_REQUIRES_RTTI=1"       ;for some third-party utilities
+         "-DLLVM_ENABLE_RTTI:BOOL=TRUE" ;for some third-party utilities
          "-DLLVM_INSTALL_UTILS=ON")     ;needed for rustc
       ;; Don't use '-g' during the build, to save space.
       #:build-type "Release"
@@ -711,7 +711,7 @@ (define-public llvm-12
             "-DCMAKE_BUILD_WITH_INSTALL_RPATH=FALSE"
             "-DBUILD_SHARED_LIBS:BOOL=TRUE"
             "-DLLVM_ENABLE_FFI:BOOL=TRUE"
-            "-DLLVM_REQUIRES_RTTI=1" ; For some third-party utilities
+            "-DLLVM_ENABLE_RTTI:BOOL=TRUE" ; For some third-party utilities
             "-DLLVM_INSTALL_UTILS=ON")) ; Needed for rustc.
        ;; Don't use '-g' during the build, to save space.
        #:build-type "Release"
-- 
2.35.1
[Message part 4 (text/html, inline)]
[0001-gnu-llvm-14-llvm-12-Enable-RTTI.patch (text/x-patch, attachment)]
[Message part 6 (message/rfc822, inline)]
From: Marius Bakke <marius <at> gnu.org>
To: Greg Hogan <code <at> greghogan.com>, 55057-done <at> debbugs.gnu.org
Subject: Re: [bug#55057] [PATCH core-updates] gnu: llvm-14, llvm-12: Enable
 RTTI.
Date: Thu, 01 Sep 2022 23:05:02 +0200
[Message part 7 (text/plain, inline)]
Greg Hogan <code <at> greghogan.com> skriver:

> The llvm packages currently define LLVM_REQUIRES_RTTI rather than the
> LLVM_ENABLE_RTTI flag specified in the LLVM documentation (
> https://llvm.org/docs/CMake.html).
>
> LLVM_REQUIRES_RTTI is noted as an internal flag in the llvm code (
> https://github.com/llvm/llvm-project/blob/llvmorg-14.0.1/llvm/cmake/modules/AddLLVM.cmake#L15
> ).
>
> This appears to have been an issue from the first Guix commit adding the
> LLVM_REQUIRES_RTTI flag as LLVM_ENABLE_RTTI is the flag specified in the
> documentation for llvm 3.8.1 (
> https://releases.llvm.org/3.8.1/docs/CMake.html).
> $ git show 83c49858b518b98f88db5f50ce36c19084e7ad62:gnu/packages/llvm.scm

Good catch.  I wonder how we did not notice, apparently not many
packages depend on LLVM RTTI after all.

>>From 0cd3048f15fcca774088ab4d5b97a0fdaa74652e Mon Sep 17 00:00:00 2001
> From: Greg Hogan <code <at> greghogan.com>
> Date: Thu, 21 Apr 2022 19:13:50 +0000
> Subject: [PATCH] gnu: llvm-14, llvm-12: Enable RTTI.
>
> * gnu/packages/llvm.scm (llvm-14, llvm-12): Enable RTTI.
> [arguments]<#:configure-flags>: Switch to proper CMake flag.

Applied, thanks!
[signature.asc (application/pgp-signature, inline)]

This bug report was last modified 2 years and 315 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.