Subject: Re: [PATCH] gnu: polkit: Fix cross-compiling

From: Jean Pierre De Jesus DIAZ <[email-masked]>
Date: Fri, 12 Aug 2022 09:57:04 +0000

However, the patch to introduce G-Expressions is welcome as I did
only fix the inputs/native-inputs usage.

>+                            (let ((out (assoc-ref outputs "out")))

Can be removed probably, and replace `out' here:

>+                                     (string-append "sysconfdir=" out "/etc")
>+                                     (string-append "polkit_actiondir=" out
>+                                                    "/share/polkit-1/actions")

By #$output. But, rethinking it again, I would investigate if this phase
can be removed and instead use `#:make-flags' if possible directly as
make-flags can be specified as a G-Expression.

>+                          (lambda* (#:key outputs #:allow-other-keys)
>+                            (let ((out (assoc-ref outputs "out")))
>+                              (substitute* (find-files "." "Makefile.in")
>+                                (("@INTROSPECTION_GIRDIR@")
>+                                 (string-append out "/share/gir-1.0/"))
>+                                (("@INTROSPECTION_TYPELIBDIR@")
>+                                 (string-append out "/lib/girepository-1.0/"))))))

Same here. And then:

>+                          (lambda* (#:key outputs #:allow-other-keys)

Is just then:

--8<---------------cut here---------------start------------->8---
(lambda _
  ...)
--8<---------------cut here---------------start------------->8---

>+     (list #:configure-flags `(list "--sysconfdir=/etc" "--enable-man-pages"
>+                                    ;; Prevent ‘configure: error: cannot check for
>+                                    ;; file existence when cross compiling’.
>+                                    ,@(if (%current-target-system)
>+                                          '("--with-os-type=unknown")
>+                                          '()))

G-Expressions can be used here too, e.g:

--8<---------------cut here---------------start------------->8---
(list #:configure-flags #~(list "--sysconfdir=/etc"
                                "--enable-man-pages"
                               ;; Prevent ‘configure: error: cannot check for
                               ;; file existence when cross compiling’.
                               #$@(if (%current-target-system)
                                     '("--with-os-type=unknown")
                                     '()))
--8<---------------cut here---------------start------------->8---

—
Jean-Pierre De Jesus DIAZ

------- Original Message -------
On Friday, August 12th, 2022 at 11:42 AM, Jean Pierre De Jesus DIAZ <[email-masked]> wrote:

> This issue is already solved:
> 
> https://issues.guix.gnu.org/56252
> 
> > Pushed to 'staging' in 7767d30f55, thanks!
> 
> 
> Was fixed for both polkit-mozjs and polkit-duktape.
> 
> —
> Jean-Pierre De Jesus DIAZ