diff options
Diffstat (limited to 'Master/bin/win32/epstopdf.texlua')
-rwxr-xr-x | Master/bin/win32/epstopdf.texlua | 75 |
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] |