guix-commits
[Top][All Lists]
Advanced

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

10/17: gnu: Use 'search-input-directory' when looking for C/C++ library


From: guix-commits
Subject: 10/17: gnu: Use 'search-input-directory' when looking for C/C++ library headers.
Date: Sat, 24 Jul 2021 10:28:06 -0400 (EDT)

civodul pushed a commit to branch core-updates
in repository guix.

commit 425ccde6ae7bd4b448ee2fffd8c0b6b7bcbb543c
Author: Ludovic Courtès <ludo@gnu.org>
AuthorDate: Fri Jul 16 16:01:49 2021 +0200

    gnu: Use 'search-input-directory' when looking for C/C++ library headers.
    
    * gnu/packages/arcan.scm (arcan)[arguments]: Use
    'search-input-directory' for "include/libdrm" and "include/apr-1".
    * gnu/packages/bioinformatics.scm (sailfish): Likewise for jellyfish.
    * gnu/packages/boost.scm (boost-for-irods): Likewise for libcxx headers.
    * gnu/packages/cedille.scm (cedille): Likewise for IAL headers.
    * gnu/packages/compression.scm (snappy-with-clang6): Likewise for libcxx
    headers.
    * gnu/packages/cups.scm (hplip): Likewise for libusb headers.
    * gnu/packages/emulators.scm (pcsxr): Likewise for libcdio headers.
    * gnu/packages/game-development.scm (python2-renpy): Likewise for
    fribidi headers.
    * gnu/packages/games.scm (pokerth): Likewise for libircclient.
    * gnu/packages/guile-xyz.scm (guile-persist): Likewise for Guile.
    * gnu/packages/hurd.scm (hurd): Likewise for libtirpc.
    * gnu/packages/irods.scm (irods, irods-client-icommands): Likewise for
    libcxx, catch2, and nlohmann-json-cpp.
    * gnu/packages/julia.scm (julia): Use 'search-input-file' for libuv's
    errno.h.
    * gnu/packages/kde-pim.scm (kdepim-runtime): Use
    'search-input-directory' for "include/KF5".
    (kmessagelib): Likewise.
    * gnu/packages/kde.scm (kdeconnect): Likewise.
    * gnu/packages/llvm.scm (clang-runtime-3.5): Likewise for libtirpc.
    * gnu/packages/mpi.scm (openmpi): Likewise for "include/infiniband".
    * gnu/packages/pumpio.scm (pumpa): Use 'search-input-file' for "tidy.h"
    and "aspell.h".
    * gnu/packages/radio.scm (dream): Use 'search-input-file' and
    'search-input-directory' for pulseaudio, sndfile, etc.
    * gnu/packages/selinux.scm (policycoreutils): Likewise for PAM and
    libaudit.
    * gnu/packages/serialization.scm (avro-cpp-1.9-for-irods): Likewise for
    libcxx.
    * gnu/packages/sync.scm (nextcloud-client): Likewise for "include/KF5".
    * gnu/packages/video.scm (mkvtoolnix): Likewise for "include/gtest".
    (libopenshot): Likewise for "include/UnitTest++".
    * gnu/packages/virtualization.scm (criu): Likewise for libnl3 and for
    protobuf file.
---
 gnu/packages/arcan.scm            |  6 ++----
 gnu/packages/bioinformatics.scm   |  5 +++--
 gnu/packages/boost.scm            |  3 +--
 gnu/packages/cedille.scm          |  3 +--
 gnu/packages/compression.scm      |  4 ++--
 gnu/packages/cups.scm             |  5 ++---
 gnu/packages/emulators.scm        |  3 +--
 gnu/packages/game-development.scm |  4 +---
 gnu/packages/games.scm            |  3 +--
 gnu/packages/guile-xyz.scm        |  2 +-
 gnu/packages/hurd.scm             |  9 +++++----
 gnu/packages/irods.scm            | 17 +++++++----------
 gnu/packages/julia.scm            |  4 +---
 gnu/packages/kde-pim.scm          | 14 ++++++--------
 gnu/packages/kde.scm              | 10 ++++------
 gnu/packages/llvm.scm             | 13 ++++++-------
 gnu/packages/mpi.scm              |  9 ++++-----
 gnu/packages/pretty-print.scm     |  5 ++---
 gnu/packages/pumpio.scm           |  6 ++----
 gnu/packages/radio.scm            | 18 ++++++------------
 gnu/packages/selinux.scm          |  4 ++--
 gnu/packages/serialization.scm    |  3 +--
 gnu/packages/sync.scm             |  5 ++---
 gnu/packages/video.scm            | 11 ++++-------
 gnu/packages/virtualization.scm   | 12 ++++++------
 25 files changed, 73 insertions(+), 105 deletions(-)

diff --git a/gnu/packages/arcan.scm b/gnu/packages/arcan.scm
index a84bf0d..0ab157b 100644
--- a/gnu/packages/arcan.scm
+++ b/gnu/packages/arcan.scm
@@ -75,12 +75,10 @@
              (lambda* (#:key inputs #:allow-other-keys)
                (substitute* "src/platform/cmake/modules/FindGBMKMS.cmake"
                  (("/usr/local/include/libdrm")
-                  (string-append (assoc-ref inputs "libdrm")
-                                 "/include/libdrm")))
+                  (search-input-directory inputs "include/libdrm")))
                (substitute* "src/platform/cmake/modules/FindAPR.cmake"
                  (("/usr/local/apr/include/apr-1")
-                  (string-append (assoc-ref inputs "apr")
-                                 "/include/apr-1")))
+                  (search-input-directory inputs "include/apr-1")))
                #t))
            ;; Normally, it tries to fetch patched openal with git
            ;; but copying files manually in the right place seems to work too.
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index 6bc7018..1d359f5 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -9477,8 +9477,9 @@ dependency like SeqAn.")
                (("#include \"jellyfish/config.h\"") ""))
              (substitute* "src/CMakeLists.txt"
                
(("\\$\\{GAT_SOURCE_DIR\\}/external/install/include/jellyfish-2.2..")
-                (string-append (assoc-ref inputs "jellyfish")
-                               "/include/jellyfish-" ,(package-version 
jellyfish)))
+                (search-input-directory
+                 inputs
+                 (string-append "/include/jellyfish-" ,(package-version 
jellyfish))))
                
(("\\$\\{GAT_SOURCE_DIR\\}/external/install/lib/libjellyfish-2.0.a")
                 (string-append (assoc-ref inputs "jellyfish")
                                "/lib/libjellyfish-2.0.a"))
diff --git a/gnu/packages/boost.scm b/gnu/packages/boost.scm
index 14b6734..8b6bea3 100644
--- a/gnu/packages/boost.scm
+++ b/gnu/packages/boost.scm
@@ -238,8 +238,7 @@ across a broad spectrum of applications.")
              (let ((gcc (assoc-ref (or native-inputs inputs) "gcc")))
                (setenv "CPLUS_INCLUDE_PATH"
                        (string-join
-                        (cons (string-append (assoc-ref inputs "libcxx")
-                                             "/include/c++/v1")
+                        (cons (search-input-directory inputs "/include/c++/v1")
                               ;; Hide GCC's C++ headers so that they do not 
interfere with
                               ;; the Clang headers.
                               (delete (string-append gcc "/include/c++")
diff --git a/gnu/packages/cedille.scm b/gnu/packages/cedille.scm
index d3dd576..decaf25 100644
--- a/gnu/packages/cedille.scm
+++ b/gnu/packages/cedille.scm
@@ -89,8 +89,7 @@
          (add-after 'unpack 'copy-ial
            (lambda* (#:key inputs #:allow-other-keys)
              (copy-recursively
-              (string-append (assoc-ref inputs "agda-ial")
-                             "/include/agda/ial")
+              (search-input-directory inputs "/include/agda/ial")
               "ial")
              ;; Ambiguous module if main is included from ial
              (delete-file "ial/main.agda")
diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm
index 6341fcc..c6ddfb4 100644
--- a/gnu/packages/compression.scm
+++ b/gnu/packages/compression.scm
@@ -1277,8 +1277,8 @@ for most inputs, but the resulting compressed files are 
anywhere from 20% to
              (let ((gcc (assoc-ref (or native-inputs inputs) "gcc")))
                (setenv "CPLUS_INCLUDE_PATH"
                        (string-join
-                        (cons* (string-append (assoc-ref inputs 
"libcxx+libcxxabi")
-                                              "/include/c++/v1")
+                        (cons* (search-input-directory inputs
+                                                       "/include/c++/v1")
                                ;; Hide GCC's C++ headers so that they do not 
interfere with
                                ;; the Clang headers.
                                (delete (string-append gcc "/include/c++")
diff --git a/gnu/packages/cups.scm b/gnu/packages/cups.scm
index b2c7b1c..0cec211 100644
--- a/gnu/packages/cups.scm
+++ b/gnu/packages/cups.scm
@@ -1,6 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015, 2019, 2021 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2015, 2016, 2017, 2019 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2015, 2016, 2017, 2019, 2021 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2015, 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016 Danny Milosavljevic <dannym@scratchpost.org>
 ;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
@@ -600,8 +600,7 @@ should only be used as part of the Guix cups-pk-helper 
service.")
                  ;; FIXME Use beginning-of-word in regexp.
                  (("[[:blank:]]plugin\\.py[[:blank:]]") " ")
                  (("/usr/include/libusb-1.0")
-                  (string-append (assoc-ref inputs "libusb")
-                                 "/include/libusb-1.0"))
+                  (search-input-directory inputs "/include/libusb-1.0"))
                  (("hplip_statedir =.*$")
                   ;; Don't bail out while trying to create
                   ;; /var/lib/hplip.  We can safely change its value
diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm
index 68ec6f3..63a91f0 100644
--- a/gnu/packages/emulators.scm
+++ b/gnu/packages/emulators.scm
@@ -2053,8 +2053,7 @@ emulator.")
              (lambda* (#:key inputs #:allow-other-keys)
                (substitute* "cmake/FindCdio.cmake"
                  (("/usr/include/cdio")
-                  (string-append (assoc-ref inputs "libcdio") 
"/include/cdio")))
-               #t))
+                  (search-input-directory inputs "/include/cdio")))))
            (add-after 'install 'wrap-program
              (lambda* (#:key inputs outputs #:allow-other-keys)
                (wrap-program (string-append (assoc-ref outputs "out")
diff --git a/gnu/packages/game-development.scm 
b/gnu/packages/game-development.scm
index 32172b2..17b52e2 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -1199,9 +1199,7 @@ developed mainly for Ren'py.")
            (lambda* (#:key inputs #:allow-other-keys)
              (substitute* "module/setup.py"
                (("/usr/include/fribidi")
-                (string-append (assoc-ref inputs "fribidi")
-                               "/include/fribidi")))
-             #t))
+                (search-input-directory inputs "include/fribidi")))))
          (add-after 'set-paths 'set-build-vars
            (lambda* (#:key inputs native-inputs #:allow-other-keys)
              (setenv "RENPY_CYTHON"
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 857bf5e..8362300 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -12256,8 +12256,7 @@ game.")  ;thanks to Debian for description
                (("/opt/gsasl")
                 (assoc-ref inputs "gsasl"))
                (("\\$\\$\\{PREFIX\\}/include/libircclient")
-                (string-append (assoc-ref inputs "libircclient")
-                               "/include/libircclient"))
+                (search-input-directory inputs "/include/libircclient"))
                (("LIB_DIRS =")
                 (string-append "LIB_DIRS = "
                                (assoc-ref inputs "boost") "/lib")))
diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index e451f86..6c83469 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -2912,7 +2912,7 @@ chunks can be expressions as well as simple tokens.")
                (("/usr/local/lib/guile")
                 (string-append (assoc-ref outputs "out") "/lib/guile"))
                (("/usr/local/include/guile")
-                (string-append (assoc-ref inputs "guile") "/include/guile"))
+                (search-input-directory inputs "/include/guile"))
                (("-L/usr/local/lib")
                 (string-append "-L" (assoc-ref inputs "guile") "/lib")))
              #t))
diff --git a/gnu/packages/hurd.scm b/gnu/packages/hurd.scm
index 222ddbc..7a1827a 100644
--- a/gnu/packages/hurd.scm
+++ b/gnu/packages/hurd.scm
@@ -1,6 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2014, 2015, 2016, 2017 Manolis Fragkiskos Ragkousis 
<manolis837@gmail.com>
-;;; Copyright © 2018, 2020 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2018, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
@@ -374,9 +374,10 @@ Hurd-minimal package which are needed for both glibc and 
GCC.")
            (lambda* (#:key inputs #:allow-other-keys)
              (for-each (lambda (var)
                          (setenv var
-                                 (string-append (assoc-ref inputs "libtirpc")
-                                                "/include/tirpc:"
-                                                (or (getenv var) ""))))
+                                 (string-append
+                                  (search-input-directory inputs
+                                                          "include/tirpc")
+                                  ":" (or (getenv var) ""))))
                        '("CROSS_C_INCLUDE_PATH" "C_INCLUDE_PATH"
                          "CROSS_CPATH" "CPATH"))
              #t))
diff --git a/gnu/packages/irods.scm b/gnu/packages/irods.scm
index bb02636..e82888e 100644
--- a/gnu/packages/irods.scm
+++ b/gnu/packages/irods.scm
@@ -126,12 +126,9 @@
              (let ((gcc (assoc-ref inputs  "gcc")))
                (setenv "CPLUS_INCLUDE_PATH"
                        (string-join
-                        (cons* (string-append (assoc-ref inputs 
"libcxx+libcxxabi")
-                                              "/include/c++/v1")
-                               (string-append (assoc-ref inputs "catch2")
-                                              "/include/catch2")
-                               (string-append (assoc-ref inputs "json")
-                                              "/include/nlohmann")
+                        (cons* (search-input-directory inputs 
"/include/c++/v1")
+                               (search-input-directory inputs 
"/include/catch2")
+                               (search-input-directory inputs 
"/include/nlohmann")
                                ;; Hide GCC's C++ headers so that they do not 
interfere with
                                ;; the Clang headers.
                                (delete (string-append gcc "/include/c++")
@@ -231,10 +228,10 @@ stored.")
              (let ((gcc (assoc-ref inputs  "gcc")))
                (setenv "CPLUS_INCLUDE_PATH"
                        (string-join
-                        (cons* (string-append (assoc-ref inputs 
"libcxx+libcxxabi")
-                                              "/include/c++/v1")
-                               (string-append (assoc-ref inputs "json")
-                                              "/include/nlohmann")
+                        (cons* (search-input-directory inputs
+                                                       "include/c++/v1")
+                               (search-input-directory inputs
+                                                       "include/nlohmann")
                                ;; Hide GCC's C++ headers so that they do not 
interfere with
                                ;; the Clang headers.
                                (delete (string-append gcc "/include/c++")
diff --git a/gnu/packages/julia.scm b/gnu/packages/julia.scm
index abefc38..c637c36 100644
--- a/gnu/packages/julia.scm
+++ b/gnu/packages/julia.scm
@@ -312,9 +312,7 @@ libraries.  It is also a bit like @code{ldd} and 
@code{otool -L}.")
 
              (substitute* "base/Makefile"
                (("\\$\\(build_includedir\\)/uv/errno.h")
-                (string-append (assoc-ref inputs "libuv")
-                               "/include/uv/errno.h")))
-             #t))
+                (search-input-file inputs "/include/uv/errno.h")))))
          (add-before 'build 'replace-default-shell
            (lambda _
              (substitute* "base/client.jl"
diff --git a/gnu/packages/kde-pim.scm b/gnu/packages/kde-pim.scm
index db73941..0c7fa77 100644
--- a/gnu/packages/kde-pim.scm
+++ b/gnu/packages/kde-pim.scm
@@ -757,10 +757,9 @@ for KDE PIM.")
                       ;; found during one of the compilation steps without
                       ;; this hack.
                       (setenv "CPLUS_INCLUDE_PATH"
-                              (string-append (assoc-ref inputs "akonadi-mime")
-                                             "/include/KF5:"
-                                             (or (getenv "CPLUS_INCLUDE_PATH") 
"")))
-                      #t)))))
+                              (string-append
+                               (search-input-directory inputs "include/KF5")
+                               ":" (or (getenv "CPLUS_INCLUDE_PATH") ""))))))))
     (home-page "https://invent.kde.org/pim/kdepim-runtime";)
     (synopsis "Runtime components for Akonadi KDE")
     (description "This package contains Akonadi agents written using KDE
@@ -1369,10 +1368,9 @@ using a Qt/KMime C++ API.")
                       ;; FIXME: One of the compilation steps fail to find
                       ;; <Libkdepim/MultiplyingLine> without this hack.
                       (setenv "CPLUS_INCLUDE_PATH"
-                              (string-append (assoc-ref inputs "libkdepim")
-                                             "/include/KF5:"
-                                             (or (getenv "CPLUS_INCLUDE_PATH") 
"")))
-                      #t)))))
+                              (string-append
+                               (search-input-directory inputs "include/KF5")
+                               ":" (or (getenv "CPLUS_INCLUDE_PATH") ""))))))))
     (home-page "https://invent.kde.org/pim/messagelib";)
     (synopsis "KDE PIM messaging libraries")
     (description "This package provides several libraries for messages,
diff --git a/gnu/packages/kde.scm b/gnu/packages/kde.scm
index aff3ed5..3fa15f9 100644
--- a/gnu/packages/kde.scm
+++ b/gnu/packages/kde.scm
@@ -7,7 +7,7 @@
 ;;; Copyright © 2018 Gábor Boskovits <boskovits@gmail.com>
 ;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 ;;; Copyright © 2018, 2019, 2020 Hartmut Goebel <h.goebel@crazy-compilers.com>
-;;; Copyright © 2019, 2020 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
 ;;; Copyright © 2020, 2021 Michael Rohleder <mike@rohleder.de>
 ;;; Copyright © 2020 Prafulla Giri <pratheblackdiamond@gmail.com>
@@ -721,11 +721,9 @@ different notification systems.")
                       ;; FIXME: <kcmutils_version.h> is not found during one
                       ;; of the compilation steps without this hack.
                       (setenv "CPLUS_INCLUDE_PATH"
-                              (string-append (assoc-ref inputs "kcmutils")
-                                             "/include/KF5:"
-                                             (or (getenv "CPLUS_INCLUDE_PATH")
-                                                 "")))
-                      #t)))
+                              (string-append
+                               (search-input-directory inputs "include/KF5")
+                               ":" (or (getenv "CPLUS_INCLUDE_PATH") ""))))))
        #:tests? #f)) ; tests fail hard in our build environment
     (native-inputs
      `(("extra-cmake-modules" ,extra-cmake-modules)
diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm
index 38da281..f39a3ad 100644
--- a/gnu/packages/llvm.scm
+++ b/gnu/packages/llvm.scm
@@ -855,14 +855,13 @@ of programming tools as well as libraries with equivalent 
functionality.")
              (add-after 'unpack 'find-rpc-includes
                (lambda* (#:key inputs #:allow-other-keys)
                  (setenv "CPATH"
-                         (string-append (assoc-ref inputs "libtirpc")
-                                        "/include/tirpc/:"
-                                        (or (getenv "CPATH") "")))
+                         (string-append
+                          (search-input-directory inputs "/include/tirpc")
+                          ":" (or (getenv "CPATH") "")))
                  (setenv "CPLUS_INCLUDE_PATH"
-                         (string-append (assoc-ref inputs "libtirpc")
-                                        "/include/tirpc/:"
-                                        (or (getenv "CPLUS_INCLUDE_PATH") "")))
-                 #t))))))
+                         (string-append
+                          (search-input-directory inputs "/include/tirpc")
+                          ":" (or (getenv "CPLUS_INCLUDE_PATH") "")))))))))
       (inputs
        `(("libtirpc" ,libtirpc)
          ("llvm" ,llvm-3.5))))))
diff --git a/gnu/packages/mpi.scm b/gnu/packages/mpi.scm
index 2011cbc..af1de10 100644
--- a/gnu/packages/mpi.scm
+++ b/gnu/packages/mpi.scm
@@ -263,12 +263,11 @@ bind processes, and much more.")
                   (add-after 'unpack 'find-opensm-headers
                     (lambda* (#:key inputs #:allow-other-keys)
                       (setenv "C_INCLUDE_PATH"
-                              (string-append (assoc-ref inputs "opensm")
-                                             "/include/infiniband"))
+                              (search-input-directory inputs
+                                                      "/include/infiniband"))
                       (setenv "CPLUS_INCLUDE_PATH"
-                              (string-append (assoc-ref inputs "opensm")
-                                             "/include/infiniband"))
-                      #t))
+                              (search-input-directory inputs
+                                                      "/include/infiniband"))))
                   (add-before 'build 'remove-absolute
                     (lambda _
                       ;; Remove compiler absolute file names (OPAL_FC_ABSOLUTE
diff --git a/gnu/packages/pretty-print.scm b/gnu/packages/pretty-print.scm
index 1fc1441..d7a5ddc 100644
--- a/gnu/packages/pretty-print.scm
+++ b/gnu/packages/pretty-print.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2016, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016, 2021 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
-;;; Copyright © 2017, 2020 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2017, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2017–2021 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2019 Meiyo Peng <meiyo@riseup.net>
 ;;; Copyright © 2020 Paul Garlick <pgarlick@tourbillion-technology.com>
@@ -217,8 +217,7 @@ to @code{IOStreams}.")
              (let ((gcc (assoc-ref inputs "gcc")))
                (setenv "CPLUS_INCLUDE_PATH"
                        (string-join
-                        (cons (string-append (assoc-ref inputs "libcxx")
-                                             "/include/c++/v1")
+                        (cons (search-input-directory inputs "/include/c++/v1")
                               ;; Hide GCC's C++ headers so that they do not 
interfere with
                               ;; the Clang headers.
                               (delete (string-append gcc "/include/c++")
diff --git a/gnu/packages/pumpio.scm b/gnu/packages/pumpio.scm
index f8a60af..1cdb2fd 100644
--- a/gnu/packages/pumpio.scm
+++ b/gnu/packages/pumpio.scm
@@ -50,11 +50,9 @@
              ;; Fix dependency tests.
              (substitute* "pumpa.pro"
                (("/usr/include/tidy\\.h")
-                (string-append (assoc-ref inputs "tidy")
-                               "/include/tidy.h"))
+                (search-input-file inputs "/include/tidy.h"))
                (("/usr/include/aspell.h")
-                (string-append (assoc-ref inputs "aspell")
-                               "/include/aspell.h")))
+                (search-input-file inputs "/include/aspell.h")))
              ;; Run qmake with proper installation prefix.
              (let ((prefix (string-append "PREFIX="
                                           (assoc-ref outputs "out"))))
diff --git a/gnu/packages/radio.scm b/gnu/packages/radio.scm
index 6947c50..5aa27bf 100644
--- a/gnu/packages/radio.scm
+++ b/gnu/packages/radio.scm
@@ -1786,23 +1786,17 @@ Compatible hardware/software:
                                (assoc-ref outputs "out")
                                "/share/man/man1"))
                (("/usr/include/pulse/")
-                (string-append (assoc-ref inputs "pulseaudio")
-                               "/include/pulse/"))
+                (search-input-directory inputs "include/pulse"))
                (("/usr/include/sndfile\\.h")
-                (string-append (assoc-ref inputs "libsndfile")
-                               "/include/sndfile.h"))
+                (search-input-file inputs "/include/sndfile.h"))
                (("/usr/include/opus/")
-                (string-append (assoc-ref inputs "opus")
-                               "/include/opus/"))
+                (search-input-directory inputs "include/opus"))
                (("/usr/include/speex/")
-                (string-append (assoc-ref inputs "speexdsp")
-                               "/include/speex/"))
+                (search-input-directory inputs "include/speex"))
                (("/usr/include/qwt/")
-                (string-append (assoc-ref inputs "qwt")
-                               "/include/qwt/"))
+                (search-input-directory inputs "include/qwt"))
                (("\\$\\$OUT_PWD/include/neaacdec\\.h")
-                (string-append (assoc-ref inputs "faad2")
-                               "/include/neaacdec.h")))))
+                (search-input-file inputs "/include/neaacdec.h")))))
          (replace 'configure
            (lambda _
              (invoke "qmake"))))))
diff --git a/gnu/packages/selinux.scm b/gnu/packages/selinux.scm
index 41b8fdc..e7e6289 100644
--- a/gnu/packages/selinux.scm
+++ b/gnu/packages/selinux.scm
@@ -397,9 +397,9 @@ tools, and libraries designed to facilitate SELinux policy 
analysis.")
                             "setfiles/Makefile"
                             "run_init/Makefile")
                (("/usr(/include/security/pam_appl.h)" _ file)
-                (string-append (assoc-ref inputs "pam") file))
+                (search-input-file inputs file))
                (("/usr(/include/libaudit.h)" _ file)
-                (string-append (assoc-ref inputs "audit") file))))))))
+                (search-input-file inputs file))))))))
     (inputs
      `(("audit" ,audit)
        ("pam" ,linux-pam)
diff --git a/gnu/packages/serialization.scm b/gnu/packages/serialization.scm
index 95c7dce..7fd083f 100644
--- a/gnu/packages/serialization.scm
+++ b/gnu/packages/serialization.scm
@@ -107,8 +107,7 @@ implement RPC protocols.")
              (let ((gcc (assoc-ref inputs  "gcc")))
                (setenv "CPLUS_INCLUDE_PATH"
                        (string-join
-                        (cons* (string-append (assoc-ref inputs 
"libcxx+libcxxabi")
-                                              "/include/c++/v1")
+                        (cons* (search-input-directory inputs "include/c++/v1")
                                ;; Hide GCC's C++ headers so that they do not 
interfere with
                                ;; the Clang headers.
                                (delete (string-append gcc "/include/c++")
diff --git a/gnu/packages/sync.scm b/gnu/packages/sync.scm
index c85b4f8..d36e200 100644
--- a/gnu/packages/sync.scm
+++ b/gnu/packages/sync.scm
@@ -156,9 +156,8 @@
                (("ON CACHE") "OFF CACHE"))
              (substitute* "src/gui/CMakeLists.txt"
                (("@kwidgetsaddons@")
-                (string-append (assoc-ref inputs "kwidgetsaddons")
-                               "/include/KF5/KWidgetsAddons/")))
-             #t))
+                (search-input-directory inputs
+                                        "/include/KF5/KWidgetsAddons/")))))
          (add-before 'check 'pre-check
            (lambda _
              ;; Tests write to $HOME.
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 3f7d34e..b2bb7b8 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -977,10 +977,8 @@ H.264 (MPEG-4 AVC) video streams.")
              #t)))
          (add-before 'configure 'add-googletest
            (lambda* (#:key inputs #:allow-other-keys)
-             (symlink
-               (string-append (assoc-ref inputs "googletest")
-                              "/include/gtest") "lib/gtest")
-             #t))
+             (symlink (search-input-file inputs "/include/gtest")
+                      "lib/gtest")))
          (replace 'build
            (lambda _
              (let ((-j (list "-j" (number->string (parallel-job-count)))))
@@ -4597,9 +4595,8 @@ create smoother and stable videos.")
              (setenv "ZMQDIR"
                      (assoc-ref inputs "zeromq"))
              (setenv "UNITTEST_DIR"
-                     (string-append (assoc-ref inputs "unittest++")
-                                    "/include/UnitTest++"))
-             #t)))))
+                     (search-input-directory inputs
+                                             "include/UnitTest++")))))))
     (home-page "https://openshot.org";)
     (synopsis "Video-editing, animation, and playback library")
     (description "OpenShot Library (libopenshot) is a powerful C++ video
diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm
index 6a49f0c..c3459eb 100644
--- a/gnu/packages/virtualization.scm
+++ b/gnu/packages/virtualization.scm
@@ -1347,10 +1347,9 @@ domains, their live performance and resource utilization 
statistics.")
            (lambda* (#:key inputs #:allow-other-keys)
              ;; The includes for libnl are located in a sub-directory.
              (setenv "C_INCLUDE_PATH"
-                     (string-append (assoc-ref inputs "libnl")
-                                    "/include/libnl3:"
-                                    (or (getenv "C_INCLUDE_PATH") "")))
-             #t))
+                     (string-append
+                      (search-input-directory inputs "/include/libnl3")
+                      ":" (or (getenv "C_INCLUDE_PATH") "")))))
          (add-after 'configure 'fix-documentation
            (lambda* (#:key inputs outputs #:allow-other-keys)
              (substitute* "Documentation/Makefile"
@@ -1381,8 +1380,9 @@ domains, their live performance and resource utilization 
statistics.")
              ;; /usr/include/..., which obviously does not exist.
              (let* ((file "google/protobuf/descriptor.proto")
                     (target (string-append "images/" file))
-                    (source (string-append (assoc-ref inputs "protobuf")
-                                           "/include/" file)))
+                    (source (search-input-file
+                             inputs
+                             (string-append "include/" file))))
                (delete-file target)
                (symlink source target)
                #t)))



reply via email to

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