all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Andy Wingo <wingo@igalia.com>
To: Jan Nieuwenhuizen <janneke@gnu.org>
Cc: guix-devel@gnu.org
Subject: Re: [PATCH v6 01/10] gnu: cross: Use CROSS_*_INCLUDE_PATH for system headers.
Date: Fri, 29 Apr 2016 11:36:21 +0200	[thread overview]
Message-ID: <877ffgpxii.fsf@igalia.com> (raw)
In-Reply-To: <87k2jh5w0o.fsf@drakenvlieg.flower> (Jan Nieuwenhuizen's message of "Thu, 28 Apr 2016 22:16:39 +0200")

Hi :)

On Thu 28 Apr 2016 22:16, Jan Nieuwenhuizen <janneke@gnu.org> writes:

>>> @@ -167,7 +172,11 @@ without requiring the source code to be rewritten.")
>>>                    (let ((bash (assoc-ref inputs "bash")))
>>>                      (substitute* "module/ice-9/popen.scm"
>>>                        (("/bin/sh")
>>> -                       (string-append bash "/bin/bash")))))
>>> +                       ,(if (mingw-target?)
>>> +                            "cmd.exe"
>>> +                            `(if bash
>>> +                                 (string-append bash "/bin/bash")
>>> +                                 "bash"))))))
>>>                  %standard-phases)))

Note that this patch has an extra level of quoting for the not-mingw
case.

>>
>> I guess the thing is, cmd.exe is part of the system, so it should be
>> linked "dynamically" (i.e. via the PATH); but is cmd.exe really a bash
>> replacement?  Is this the right way for open-pipe in Guile to work?
>
> Good question.  I don't really know.  Probably it's not; but then, even
> if we have bash would't you expect some utils like cat/grep/sed?  FWIW,
> I spent two nights trying to port bash before I decided to give up, err
> re-prioritise.  I'd love to provide that all, and I'd also love to get
> some help with that ;-)
>
> I can imagine that if I somehow installed a version of bash.exe
> (msys/cygwin) in PATH, I would expect open-pipe to use that rather than
> cmd.
>
> I'm not sure if you have a suggestion for change here, or if we should
> get more input first?

3 options:

 1. Run cmd.exe from path.  Disadvantage: incompatible interface.

 2. Build bash in mingw for Guix; no special cases.  The Right Thing.
    However I'm OK with accepting a patch that doesn't do this, in the
    interests of moving things forward.

 3. Run bash from path.  Disadvantage: bash probably not in the path and
    the invocation would fail.  Arguably an early failure is the right
    thing, though!

I think I'd go with (3) rather than (1).  WDYT?  From a Guile
perspective you can always use `open-pipe*' which doesn't trampoline
through a shell at all.

> So, most of the difficulties I had should be fixed now; not sure what
> difficulties the next person will have.  So, what to write exactly?
>
> Below is a first attempt that I didn't want to send as a proper patch
> yet.  I could do with some input, especially from Manolis.

It's really helpful to me, thank you!

Andy

  parent reply	other threads:[~2016-04-29 10:13 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-04-27 19:27 [PATCH v6 01/10] gnu: cross: Use CROSS_*_INCLUDE_PATH for system headers Jan Nieuwenhuizen
2016-04-28  8:18 ` Andy Wingo
2016-04-28 20:16   ` Jan Nieuwenhuizen
2016-04-28 20:41     ` Jan Nieuwenhuizen
2016-04-29  9:36     ` Andy Wingo [this message]
2016-04-29 12:54       ` Jan Nieuwenhuizen

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=877ffgpxii.fsf@igalia.com \
    --to=wingo@igalia.com \
    --cc=guix-devel@gnu.org \
    --cc=janneke@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.