all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Stephen Leake <stephen_leake@stephe-leake.org>
To: emacs-devel <emacs-devel@gnu.org>
Subject: how to run makeinfo in a subprocess on Windows?
Date: Sun, 05 Sep 2021 15:47:38 -0700	[thread overview]
Message-ID: <86bl56skqd.fsf@stephe-leake.org> (raw)

I'm working on automatically publishing html doc files for ELPA
packages.

When the source for a doc is .texi, that requires running "makeinfo".
elpa-admin does this via call-process, doing something like:

(let ((default-directory "c:/Projects/elpa/packages/ada-mode/")
      (docfile "ada-mode.texi")
      (html-file "doc/ada-mode/ada-mode.html"))
  (call-process "makeinfo" docfile nil nil "--no-split" "--html" "-o" html-file))

and that works fine on Debian.

However, on Windows, I get :
let: Searching for program: Permission denied, makeinfo

I suspect the problem is that "makeinfo" is actually a perl script, and
it has "#! /usr/bin/perl" on the first line. On Debian, the lower-level
system call that actually starts the process apparently knows how to
handle that; it starts perl, and passes it "makeinfo" and the other args.

However, on Windows that doesn't happen. I suspect if I was running the
mingw64 version of Emacs, it would work. The emacs I'm running is built
using mingw64 tools, but it uses the native Windows OS, not the
mingw64 layer.

Is there a suggested way to handle this? I can just add code to
elpa-admin to run perl explicitly when on Windows, but I'm hoping
there's already code somewhere that handles this.

-- 
-- Stephe



             reply	other threads:[~2021-09-05 22:47 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-09-05 22:47 Stephen Leake [this message]
2021-09-06  2:52 ` how to run makeinfo in a subprocess on Windows? Stefan Monnier
2021-09-06  5:20 ` Eli Zaretskii
2021-09-06 16:20   ` Stephen Leake
2021-09-06 16:56     ` Stephen Leake

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=86bl56skqd.fsf@stephe-leake.org \
    --to=stephen_leake@stephe-leake.org \
    --cc=emacs-devel@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/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.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.