diff options
Diffstat (limited to 'Master/bin/i386-linux/texlua-perl-runner')
-rwxr-xr-x | Master/bin/i386-linux/texlua-perl-runner | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/Master/bin/i386-linux/texlua-perl-runner b/Master/bin/i386-linux/texlua-perl-runner new file mode 100755 index 00000000000..ca2bfbf7418 --- /dev/null +++ b/Master/bin/i386-linux/texlua-perl-runner @@ -0,0 +1,53 @@ +#!/usr/bin/env texlua +--*-Lua-*- +-- $Id: texlua-perl-runner 6485 2008-02-01 20:15:06Z reinhardk $ + +-- Copyright (C) 2007 2008 Reinhard Kotucha, Norbert Preining +-- You may freely use, modify and/or distribute this file. + +-- Wrapper for Perl scripts. +-- Support for -sys variants + + +if string.find(arg[0], "/") then -- UNIX path + filename=select(1, string.gsub(arg[0], ".*/", "")) +elseif string.find(arg[0], "\\") then -- Windows path + filename=select(1, string.gsub(arg[0], ".*\\", "")) +else -- no path + filename=arg[0] +end + +basename=select(1, string.gsub(filename, "\.texlua$", "")) + +kpse.set_program_name(filename) + +TEXDIR=kpse.var_value("SELFAUTOPARENT") + +-- if we are on win32 we have to use the shipped perl +perlbin="perl" +if (os.type == "windows") then + os.setenv("PERL5LIB", TEXDIR.."/tlpkg/tlperl/lib") + perlbin=TEXDIR.."/tlpkg/tlperl/bin/perl.exe" +end + +script=kpse.find_file(basename..".pl", "texmfscripts") + +if (not(script)) then + print ("Cannot find "..basename..".pl".." using kpse, exiting!") + os.exit(1) +end + +if (os.type == "windows") then + command={'"'..perlbin..'"', '"'..script..'"'} +else + command={ perlbin, script } +end +command[0] = perlbin + +for i=1, #arg do + command[#command+1]=arg[i] +end + +ret=os.spawn(command) +os.exit(ret) + |