From: taylanbayirli@gmail.com (Taylan Ulrich Bayırlı/Kammer)
To: "Ludovic Courtès" <ludo@gnu.org>
Cc: guix-devel@gnu.org
Subject: Re: [PATCH] gnu: qt: Fix for i686.
Date: Fri, 01 May 2015 09:15:30 +0200 [thread overview]
Message-ID: <87egn0g44t.fsf@taylan.uni.cx> (raw)
In-Reply-To: <87mw1pdzjy.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Fri, 01 May 2015 00:25:05 +0200")
ludo@gnu.org (Ludovic Courtès) writes:
> taylanbayirli@gmail.com (Taylan Ulrich "Bayırlı/Kammer") skribis:
>
>> This is really hacky but seems to work.
>
> Good. :-)
>
>> From 35fdd9e2fcd5b953b3a088d0bb22d84f7dc5ded9 Mon Sep 17 00:00:00 2001
>> From: =?UTF-8?q?Taylan=20Ulrich=20Bay=C4=B1rl=C4=B1/Kammer?=
>> <taylanbayirli@gmail.com>
>> Date: Fri, 24 Apr 2015 10:43:57 +0200
>> Subject: [PATCH 4/4] gnu: qt: Fix for i686.
>
> “Fix compilation on i686.”
>
>> See <https://bugreports.qt.io/browse/QTBUG-45205>.
>>
>> * gnu/packages/qt.scm (qt): Copy mesa's GL headers to a temporary directory,
>> patching them for Qt.
>
> [...]
>
>> `(#:phases
>> (alist-replace
>> 'configure
>> - (lambda* (#:key outputs #:allow-other-keys)
>> - (let ((out (assoc-ref outputs "out")))
>> + (lambda* (#:key inputs outputs #:allow-other-keys)
>> + ;; Mesa headers need monkey-patching for Qt. See:
>> + ;; https://bugreports.qt.io/browse/QTBUG-45205
>> + (let* ((out (assoc-ref outputs "out"))
>> + (mesa (assoc-ref inputs "mesa"))
>> + (mesa-include (string-append mesa "/include"))
>> + (mesa-pkgconfig (string-append mesa "/lib/pkgconfig"))
>> + (mesa* (tmpnam))
>> + (mesa*-include (string-append mesa* "/include"))
>> + (mesa*-pkgconfig (string-append mesa* "/lib/pkgconfig")))
>> + (copy-recursively mesa-include mesa*-include)
>> + (substitute* (string-append mesa*-include "/GL/glext.h")
>> + (("typedef ptrdiff_t GLsizeiptr;" all)
>> + (string-append "#ifndef BUILDING_CHROMIUM\n" all))
>> + (("typedef ptrdiff_t GLintptr;" all)
>> + (string-append all "\n#endif")))
>> + (copy-recursively mesa-pkgconfig mesa*-pkgconfig)
>> + (substitute* (find-files mesa*-pkgconfig "\\.pc$")
>> + (("includedir=.*")
>> + (string-append "includedir=" mesa*-include "\n")))
>> + (setenv "PKG_CONFIG_PATH"
>> + (string-append mesa*-pkgconfig ":"
>> + (getenv "PKG_CONFIG_PATH")))
>
> For clarity, could you make it a separate phase before the ‘configure’
> phase, and also augment the comment to mention that we do the
> monkey-patching here rather than using the bundled copy so we can still
> use our own headers and DSO (what Mark explained)?
>
> OK to push with this change, thanks a lot!
>
> Ludo’.
I pushed another patch now, which uses the proper fix provided by the Qt
maintainers; sorry for making you go through the trouble to review
this. :-)
Taylan
prev parent reply other threads:[~2015-05-01 7:15 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-04-29 15:13 [PATCH] gnu: qt: Fix for i686 Taylan Ulrich Bayırlı/Kammer
2015-04-30 15:39 ` Taylan Ulrich Bayırlı/Kammer
2015-04-30 15:43 ` Andreas Enge
2015-05-01 6:26 ` Taylan Ulrich Bayırlı/Kammer
2015-04-30 22:25 ` Ludovic Courtès
2015-05-01 7:15 ` Taylan Ulrich Bayırlı/Kammer [this message]
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87egn0g44t.fsf@taylan.uni.cx \
--to=taylanbayirli@gmail.com \
--cc=guix-devel@gnu.org \
--cc=ludo@gnu.org \
/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 external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.