unofficial mirror of help-guix@gnu.org 
 help / color / mirror / Atom feed
From: "Philip McGrath" <philip@philipmcgrath.com>
To: help-guix@gnu.org
Subject: Re: Debugging cross-compilation dependencies
Date: Fri, 29 Jul 2022 01:36:31 -0400	[thread overview]
Message-ID: <5edb2b76-2df5-42d4-84ec-f844a8bbf985@www.fastmail.com> (raw)
In-Reply-To: <9b97fff1-9de9-4e81-bb5d-1dd20a17b6fb@www.fastmail.com>

On Sat, Jul 23, 2022, at 7:30 AM, Philip McGrath wrote:
> Hi Guix,
>
> For the upcoming Racket 8.6 release, I've been trying to get the 
> Chez-Scheme–based implementation working for architectures without 
> native code-generation backends [1] and initial support for 
> cross-compilation. (Full support for cross-compilation will come after 
> there is a `racket-build-system`, since it involved building a 
> cross-compilation plugin for the compiler, and tooling for doing so 
> lives in a different package, but I had a problem during the 
> bootstrapping process with QEMU [2].)
>
> I thought I had things working at least up through 
> `chez-scheme-for-racket`, but, when I later removed the QEMU 
> binfmt_misc package from my (foreign) system, I discovered that a 
> dependency was incorrectly being cross-compiled when it needed to be 
> run on the build machine. Specifically, the problem was with Zuo (a 
> tiny Racket-like language for build scripts, [3] which replaces complex 
> makefiles in 8.6), which was particularly surprising, since it is only 
> ever used in `native-inputs`.
>
> I've put my work in progress at [4]. 

Much to my surprise, I discovered I can avoid the problem by changing code for #:make-flags like this:

```
#~(string-append "ZUO="
                                  #$(this-package-native-input "zuo")
                                  "/bin/zuo"))
```

to instead use `%build-inputs`, like this:

```
#~(string-append "ZUO="
                                  (search-input-file %build-inputs
                                                     "/bin/zuo"))
```

Is this expected behavior? Maybe `this-package-native-input` is supposed to only be used under `ungexp-native`, rather than `ungexp`?

-Philip


  reply	other threads:[~2022-07-29  5:37 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-07-23 11:30 Debugging cross-compilation dependencies Philip McGrath
2022-07-29  5:36 ` Philip McGrath [this message]
2022-08-09 20:16   ` Ludovic Courtès
2022-08-09 20:16   ` 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=5edb2b76-2df5-42d4-84ec-f844a8bbf985@www.fastmail.com \
    --to=philip@philipmcgrath.com \
    --cc=help-guix@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.
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).