bug-texinfo
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: "[7031] filter_files zero return status" commit not working on OpenB


From: Ingo Feinerer
Subject: Re: "[7031] filter_files zero return status" commit not working on OpenBSD
Date: Wed, 18 May 2016 21:17:50 +0200
User-agent: Mutt/1.6.1 (2016-04-27)

On Wed, May 18, 2016 at 07:01:38PM +0100, Gavin Smith wrote:
> On 14 May 2016 at 18:33, Ingo Feinerer <address@hidden> wrote:
> > Hi,
> >
> > I am suffering from the same problem as described in
> > https://lists.gnu.org/archive/html/bug-texinfo/2016-02/msg00121.html .
> > However, the fix from
> > https://lists.gnu.org/archive/html/texinfo-commits/2016-02/msg00057.html
> > unfortunately does not work for me on an OpenBSD system.
> >
> > The reason appears to be the shell executing the texi2dvi script. On OpenBSD
> > /bin/sh is in fact ksh
> > (http://man.openbsd.org/?query=sh&apropos=0&sec=0&arch=default&manpath=OpenBSD-current).
> > If I change the first line of texi2dvi to point to bash (/usr/local/bin/bash
> > on OpenBSD) the problem is gone.
> 
> I don't know I'm afraid. Have you tried the latest version at
> http://ftp.gnu.org/gnu/texinfo/texi2dvi ? If that doesn't work either,

Yes, same behavior.

> could you send the file that doesn't work and the output you get? Is
> it the same file that didn't work in the email you linked to?

I am using test1.tex from
https://lists.gnu.org/archive/html/bug-texinfo/2016-02/msg00133.html

$ ./texi2dvi -v                                                                 
          
texi2dvi (GNU Texinfo 6.1+dev) 7139

There appears to be a bigger problem than originally reported (which was
masked as I just saw the output from R which in turn called texi2dvi
internally). In fact

$ ./texi2dvi test1.tex

neither prints anything to stdout nor generates a file. With debug
output we obtain

$ ./texi2dvi --debug test1.tex


#  Main program main loop - TeXify each file in turn.
for command_line_filename
do
  verbose "Processing $command_line_filename ..."

  input_file_name_decode

  # `texinfo' or `latex'?
  in_lang=`compute_language "$command_line_filename"`

  # An auxiliary directory used for all the auxiliary tasks involved
  # in compiling this document.
  case $build_dir in
      '' | . ) t2ddir=$out_noext.t2d ;;
      *) # Avoid collisions between multiple occurrences of the same
         # file, so depend on the output path.  Remove leading `./',
         # at least to avoid creating a file starting with `.!', i.e.,
         # an invisible file. The sed expression is fragile if the cwd
         # has active characters.  Transform / into ! so that we don't
         # need `mkdir -p'.  It might be something to reconsider.
         t2ddir=$build_dir/`echo "$out_dir_abs/$out_noext.t2d" |
             $SED "s,^$orig_pwd/,,;s,^\./,,;s,/,!,g"`
  esac
  # Remove it at exit if clean mode.
  trap "cleanup" 0 1 2 15

  ensure_dir "$build_dir" "$t2ddir"

  # We will change directory, better work with an absolute path...
  t2ddir=`absolute "$t2ddir"`
  # Sometimes there are incompatibilities between auxiliary files for
  # DVI and PDF.  The contents can also change whether we work on PDF
  # and/or DVI.  So keep separate spaces for each.
  workdir=$t2ddir/`out_lang_tex`
  ensure_dir "$workdir"

  # _build.  In a tidy build, where the auxiliary files are output.
  if $tidy; then
    work_build=$workdir/build
  else
    work_build=.
  fi

  # _bak.  Copies of the previous auxiliary files (another round is
  # run if they differ from the new ones).
  work_bak=$workdir/bak

  # Make those directories.
  ensure_dir "$work_build" "$work_bak"

  # Decide how to find auxiliary files created by TeX.
  decide_aux_files_method
  
  case $action in
    compile)
      # Compile the document.
      compile
      cleanup
      ;;

    mostly-clean)
      xref_files_new=`generated_files_get`
      mostly_clean
      ;;
  esac
done
+ verbose Processing test1.tex ...
+ input_file_name_decode
+ compute_language ./test1.tex
+ in_lang=latex
+ t2ddir=test1.t2d
+ trap cleanup 0 1 2 15
+ ensure_dir . test1.t2d
+ absolute test1.t2d
+ t2ddir=/home/feinerer/texi2dvi/test1.t2d
+ out_lang_tex
+ workdir=/home/feinerer/texi2dvi/test1.t2d/dvi
+ ensure_dir /home/feinerer/texi2dvi/test1.t2d/dvi
+ false
+ work_build=.
+ work_bak=/home/feinerer/texi2dvi/test1.t2d/dvi/bak
+ ensure_dir . /home/feinerer/texi2dvi/test1.t2d/dvi/bak
+ decide_aux_files_method

When changing the first line of texi2dvi to

#! /usr/bin/env bash 

texi2dvi works as expected.

Best regards,
Ingo



reply via email to

[Prev in Thread] Current Thread [Next in Thread]