guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

01/02: gnu: openclonk: Adjust for GCC 7.


From: guix-commits
Subject: 01/02: gnu: openclonk: Adjust for GCC 7.
Date: Thu, 28 Nov 2019 09:20:45 -0500 (EST)

mbakke pushed a commit to branch master
in repository guix.

commit ee9eafc1df043e6aacfdace1da046a86773dac67
Author: Marius Bakke <address@hidden>
Date:   Thu Nov 28 15:10:30 2019 +0100

    gnu: openclonk: Adjust for GCC 7.
    
    * gnu/packages/games.scm (openclonk)[arguments]: Add phase
    'adjust-backward-cpp-includes'.
---
 gnu/packages/games.scm | 18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index dcb8aaf..8955b59 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -27,7 +27,7 @@
 ;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <address@hidden>
 ;;; Copyright © 2017, 2019 nee <address@hidden>
 ;;; Copyright © 2017 Clément Lassieur <address@hidden>
-;;; Copyright © 2017 Marius Bakke <address@hidden>
+;;; Copyright © 2017, 2019 Marius Bakke <address@hidden>
 ;;; Copyright © 2017, 2018 Rutger Helling <address@hidden>
 ;;; Copyright © 2017 Roel Janssen <address@hidden>
 ;;; Copyright © 2017, 2018, 2019 Nicolas Goaziou <address@hidden>
@@ -6888,6 +6888,22 @@ a fortress beyond the forbidden swamp.")
                (("PATH_SUFFIXES \"src\" \"gtest\"")
                 "PATH_SUFFIXES \"src\""))
              #t))
+         (add-after 'unpack 'adjust-backward-cpp-includes
+           (lambda _
+             ;; XXX: The bundled backward-cpp exports a CMake "interface"
+             ;; that includes external libraries such as libdl from glibc.
+             ;; By default, CMake interface includes are treated as "system
+             ;; headers", and GCC behaves poorly when glibc is passed as a
+             ;; system header (causing #include_next failures).
+
+             ;; Here we prevent targets that consume the Backward::Backward
+             ;; interface from treating it as "system includes".
+             (substitute* "CMakeLists.txt"
+               (("target_link_libraries\\((.+) Backward::Backward\\)" all 
target)
+                (string-append "set_property(TARGET " target " PROPERTY "
+                               "NO_SYSTEM_FROM_IMPORTED true)\n"
+                               all)))
+             #t))
          (add-after 'unpack 'add-libiberty
            ;; Build fails upon linking executables without this.
            (lambda _



reply via email to

[Prev in Thread] Current Thread [Next in Thread]