[tex-live] Repstopdf and Shell Escape

Heiko Oberdiek heiko.oberdiek at googlemail.com
Tue Jul 13 18:12:45 CEST 2010


On Tue, Jul 13, 2010 at 05:10:22PM +0200, Manuel Pégourié-Gonnard wrote:

> Le 13/07/2010 15:08, Herbert Schulz a écrit :
> > A problem has cropped up on the TeX on Mac OS X list with someone who is
> > using TL2010 pretest with all updates (as of 12 July). He is using pdflatex
> > with --shell-escape and using both the graphicx and epstopdf package
> > (although the latter is not needed) and has given the full path
> > (/Users/<usename>/Pictures/xxx.eps) to the graphic. In spite of using
> > --shell-escape the xxx-eps-converted-to.pdf file is not created and there is
> > an error message about restricted mode (I guess repstopdf is always used
> > since that is what is set in epstopdf-sys.cfg). In TL2009 (where there was no
> > restricted mode) this worked with --shell-escape. Shouldn't repstopdf behave
> > exactly like epstopdf if --shell-escape is present?
> > 
> Hum, this is no easy question. The core problem is, pdftex and repstopdf are
> different processes, and there is currently no way for repstopdf to know which
> options were passed to pdftex.
> 
> A possible way to solve this problem would be :
> - make --shell-escape imply openout_any=a and openin_any=a;
> - change the \write18 code so that a few critical values (such as shell_escape
> and open{in,out}_any) are copied in the environement of the child process.
> 
> It looks like the long-term correct fix to me, but of course, such changes are
> not going to happen before TL2010 is released.
> 
> Manuel.
> 
> PS : in the meanwhile, \esptopdfsetup{program at epstopdf=epstopdf} should to the
> trick.

%%% cut %%% epstopdf-sys.cfg %%% cut %%%
% Public domain.
% History:
% 2010/06/06 v1.2
% 2010/07/13 v1.3
% * Use `epstopdf' instead of `repstopdf' if \pdfshellescape == 1
%
\ProvidesFile{epstopdf-sys.cfg}%
  [2010/07/13 v1.3 Configuration of (r)epstopdf for TeX Live]%
\def\epstopdf at sys@cmd{repstopdf}% default is restricted epstopdf
% epstopdf-sys loads pdftexcmds, \pdf at shellescape is provided
% for LuaTeX as well
\begingroup\expandafter\expandafter\expandafter\endgroup
\expandafter\ifx\csname pdf at shellescape\endcsname\relax
\else
  \ifcase\pdf at shellescape
  \or
    \def\epstopdf at sys@cmd{epstopdf}% unrestricted if \pdfshellescape == 1
  \fi
\fi
\epstopdfsetup{%
  program at epstopdf=\epstopdf at sys@cmd
}%
\endinput
%%% cut %%% epstopdf-sys.cfg %%% cut %%%

\endinput
%%% cut %%% epstopdf-sys.cfg %%% cut %%%

(untested)

Yours sincerely
  Heiko Oberdiek


More information about the tex-live mailing list