summaryrefslogtreecommitdiff
path: root/Master/bin/win32/epstopdf.texlua
diff options
context:
space:
mode:
authorReinhard Kotucha <reinhard.kotucha@web.de>2008-02-24 23:01:28 +0000
committerReinhard Kotucha <reinhard.kotucha@web.de>2008-02-24 23:01:28 +0000
commit506efaea286d392d8c49a0c4cff49f06a791171b (patch)
treeb42aaa62be7fa9c2c1ff41a6f30cac5f3e4ca478 /Master/bin/win32/epstopdf.texlua
parentc643077d95770f48d43b78454ac8ffbc00ebcb40 (diff)
New wrappers.
git-svn-id: svn://tug.org/texlive/trunk@6751 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/bin/win32/epstopdf.texlua')
-rwxr-xr-xMaster/bin/win32/epstopdf.texlua75
1 files changed, 53 insertions, 22 deletions
diff --git a/Master/bin/win32/epstopdf.texlua b/Master/bin/win32/epstopdf.texlua
index 15604ae9392..b8b0c4ab870 100755
--- a/Master/bin/win32/epstopdf.texlua
+++ b/Master/bin/win32/epstopdf.texlua
@@ -1,14 +1,14 @@
-#!/xusr/bin/env texlua
+#! /usr/bin/env texlua
--*-Lua-*-
-- $Id$
--- Copyright (C) 2007 Reinhard Kotucha.
+-- Copyright (C) 2007 Reinhard Kotucha, Norbert Preining.
-- You may freely use, modify and/or distribute this file.
--- Wrapper for Perl scripts.
+-- Wrapper for scripts.
-function fixwin (args_unix)
- if os.type == "windows" then
+function fixwin(args_unix)
+ if os.type == 'windows' then
local args_win={} -- new table
args_win[0]=args_unix[1]
for i=1, #args_unix do
@@ -20,34 +20,65 @@ function fixwin (args_unix)
end
end
-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], ".*\\", ""))
+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$", ""))
+basename=select(1, string.gsub(filename, '\.texlua$', ''))
-kpse.set_program_name(filename)
+sys=false
-if string.find(basename, "-sys$") then
- basename=select(1, string.gsub(basename, "-sys$", ""))
- os.setenv("TEXMFVAR", kpse.var_value("TEXMFSYSVAR"))
- os.setenv("TEXMFCONFIG", kpse.var_value("TEXMFSYSCONFIG"))
+if string.find(basename, '-sys$') then
+ basename=select(1, string.gsub(basename, '-sys$', ''))
+ sys=true
end
-TEXDIR=kpse.var_value("SELFAUTOPARENT")
+kpse.set_program_name(filename, basename)
+TEXDIR=kpse.var_value('SELFAUTOPARENT')
+BINDIR=kpse.var_value('SELFAUTOLOC')
-os.setenv("PERL5LIB", TEXDIR.."/tlpkg/tlperl/lib")
-os.setenv("GS_LIB", TEXDIR.."/tlpkg/tlgs/lib")
-os.setenv("PATH", TEXDIR.."/tlpkg/tlgs/bin;"..os.getenv("PATH"))
+os.setenv('PERL5LIB', TEXDIR..'/tlpkg/tlperl/lib')
+os.setenv('GS_LIB', TEXDIR..'/tlpkg/tlgs/lib')
+os.setenv('PATH', TEXDIR..'/tlpkg/tlgs/bin;'..os.getenv('PATH'))
-perlbin=TEXDIR.."/tlpkg/tlperl/bin/perl.exe"
-script=kpse.find_file(basename..".pl", "texmfscripts")
+if sys then
+ os.setenv('TEXMFVAR', kpse.var_value('TEXMFSYSVAR'))
+ os.setenv('TEXMFCONFIG', kpse.var_value('TEXMFSYSCONFIG'))
+ os.setenv('TEX_SYS_PROG', 'true')
+end
-command={perlbin, script}
+if sys and lfs.isfile(BINDIR..'/'..basename..'.exe') then
+ command={BINDIR..'/'..basename..'.exe'}
+elseif lfs.isfile(BINDIR..'/'..basename..'-bin.exe')
+ command={BINDIR..'/'..basename..'-bin.exe'}
+elseif lfs.isdir(BINDIR..'/'..basename..'.pl') then
+ perlbin=TEXDIR..'/tlpkg/tlperl/bin/perl.exe'
+ script=BINDIR..'/'..basename..'.pl'
+ command={perlbin, script}
+elseif kpse.find_file(basename..'.pl', 'texmfscripts') then
+ perlbin=TEXDIR..'/tlpkg/tlperl/bin/perl.exe'
+ script=kpse.find_file(basename..'.pl', 'texmfscripts')
+ command={perlbin, script}
+elseif kpse.find_file(basename..'.rb', 'texmfscripts') then
+ script=kpse.find_file(basename..'.rb', 'texmfscripts')
+ command={'ruby', script}
+elseif kpse.find_file(basename..'.py', 'texmfscripts') then
+ script=kpse.find_file(basename..'.py', 'texmfscripts')
+ command={'python', script}
+elseif kpse.find_file(basename..'.texlua', 'texmfscripts') then
+ script=kpse.find_file(basename..'.texlua', 'texmfscripts')
+ command={'texlua', script}
+elseif kpse.find_file(basename..'.lua', 'texmfscripts') then
+ script=kpse.find_file(basename..'.lua', 'texmfscripts')
+ command={'texlua', script}
+else
+ os.stderr:write(filename..'.texlua: No interpreter found for '..
+ basename..'\n')
+end
for i=1, #arg do
command[#command+1]=arg[i]