From: Maxime Devos <maximedevos@telenet.be>
To: Zhu Zihao <all_but_last@163.com>
Cc: 54261@debbugs.gnu.org
Subject: [bug#54261] Acknowledgement ([PATCH]: Update GTK to 4.6.1.)
Date: Sat, 12 Mar 2022 10:17:55 +0100 [thread overview]
Message-ID: <92b1ba8ff3cb574dae5e642186b25bf204829b2d.camel@telenet.be> (raw)
In-Reply-To: <865yojnb25.fsf@163.com>
[-- Attachment #1.1: Type: text/plain, Size: 742 bytes --]
Zhu Zihao schreef op za 12-03-2022 om 10:38 [+0800]:
> > (*) Could be avoided by symlinking pkg-config files into the pkg-
> config
> > directories of their dependent libraries, as suggested by lilyp.
> >
> > [[End of PGP Signed Part]]
>
> Not only for pkg-config files, but also for headers.
>
> For example, the header of gtk4 may have following lines
>
> #include <pango.h>
This is getting a little off-topic, but for headers, symlinking is not
necessary, pango.h could be automatically replaced by the absolute file
name /gnu/store/.../include/pango.h in gtk4's header, see attachement.
(Idea suggested by lilyp on IRC). It needs some more work though,
see TODO's and lack of documentation.
Greetings,
Maxime.
[-- Attachment #1.2: absolute-inclusions.scm --]
[-- Type: text/x-scheme, Size: 1926 bytes --]
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2022 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (guix build absolute-inclusions)
#:export (absolute-inclusions patch-header-inclusions)
#:use-module (guix build utils)
#:use-module (ice-9 match)
#:use-module (rnrs exceptions))
(define (absolute-inclusions files header-locations)
(substitute* files
(("#include <(.*)>" original header-name)
(guard (c ((search-error? c) original))
;; TODO: libgcc & etc, maybe avoid increasing the closure size
;; by skipping glibc headers ...
(format #f "#include <~a>"
(search-input-file header-locations
(string-append "include/" header-name)))))))
(define* (patch-header-inclusions #:key inputs outputs #:allow-other-keys)
"Patch inclusions in C headers in OUTPUTS to use absolute file names."
(define header-locations (append outputs inputs))
(define header-file? (file-name-predicate "\\.(h|hpp)$"))
(for-each (match-lambda
((_ . output)
(absolute-inclusions
(find-files (string-append output "/include") header-file?)
header-locations)))
outputs))
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 260 bytes --]
next prev parent reply other threads:[~2022-03-12 9:19 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-03-05 15:00 [bug#54261] [PATCH]: Update GTK to 4.6.1 Zhu Zihao
[not found] ` <handler.54261.B.164649346324787.ack@debbugs.gnu.org>
2022-03-05 15:55 ` [bug#54261] Acknowledgement ([PATCH]: Update GTK to 4.6.1.) Zhu Zihao
2022-03-11 15:15 ` Zhu Zihao
2022-03-11 15:59 ` Maxime Devos
2022-03-11 16:01 ` Maxime Devos
2022-03-12 2:38 ` Zhu Zihao
2022-03-12 9:17 ` Maxime Devos [this message]
2022-03-12 9:32 ` Maxime Devos
2022-03-12 9:40 ` Maxime Devos
2022-03-11 16:03 ` Maxime Devos
2022-03-15 15:42 ` Zhu Zihao
2022-03-18 22:48 ` [bug#54261] [PATCH]: Update GTK to 4.6.1 Ludovic Courtès
2022-03-19 3:00 ` Zhu Zihao
2022-03-21 1:17 ` Zhu Zihao
2022-03-27 3:04 ` Zhu Zihao
2022-03-27 7:38 ` Liliana Marie Prikler
2022-03-28 15:37 ` Zhu Zihao
2022-03-28 18:19 ` Liliana Marie Prikler
2022-03-29 5:56 ` Zhu Zihao
2022-03-29 6:01 ` Zhu Zihao
2022-03-30 19:56 ` Ludovic Courtès
2022-03-31 5:13 ` Zhu Zihao
2022-03-29 13:34 ` Ludovic Courtès
2022-03-30 3:45 ` Zhu Zihao
2022-04-01 15:54 ` Ludovic Courtès
2022-04-02 3:41 ` Zhu Zihao
2022-04-04 20:12 ` bug#54261: " Ludovic Courtès
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://guix.gnu.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=92b1ba8ff3cb574dae5e642186b25bf204829b2d.camel@telenet.be \
--to=maximedevos@telenet.be \
--cc=54261@debbugs.gnu.org \
--cc=all_but_last@163.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/guix.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).