texlive[47327] Master/bin/win32/runscript.tlu: introduce a new

commits+kakuto at tug.org commits+kakuto at tug.org
Fri Apr 6 23:07:14 CEST 2018


Revision: 47327
          http://tug.org/svn/texlive?view=revision&revision=47327
Author:   kakuto
Date:     2018-04-06 23:07:13 +0200 (Fri, 06 Apr 2018)
Log Message:
-----------
introduce a new function to check Windows OS

Modified Paths:
--------------
    trunk/Master/bin/win32/runscript.tlu

Modified: trunk/Master/bin/win32/runscript.tlu
===================================================================
--- trunk/Master/bin/win32/runscript.tlu	2018-04-06 15:25:15 UTC (rev 47326)
+++ trunk/Master/bin/win32/runscript.tlu	2018-04-06 21:07:13 UTC (rev 47327)
@@ -264,6 +264,9 @@
           use sys_user_progs instead, add kanji-config-updmap
     2018/03/12
         - introduce a new function gettexmfdist() for security.
+    2018/04/06
+        - introduce a new function is_64bit_windows_os() to
+          check Windows OS.
 ]]
 
 -- HELPER SUBROUTINES --
@@ -426,6 +429,28 @@
   return str
 end
 
+--
+-- Is the Windows OS 64bit?
+--
+local function is_64bit_windows_os()
+  local return_val = false
+  -- 32 bit binaries always work, thus the default is false
+  local architecture = os.getenv('PROCESSOR_ARCHITECTURE')
+  if architecture ~= nil then
+    if architecture == 'x86' then
+      local is_wow64 = os.getenv('PROCESSOR_ARCHITEW6432')
+      if is_wow64 == nil then
+        return_val = false
+      else
+        return_val = true
+      end
+    else
+      return_val = true
+    end
+  end
+  return return_val
+end
+
 -- MAIN_CHUNK -- encapsulated in a function for more robust execution with pcall
 
 local function MAIN_CHUNK()
@@ -671,7 +696,11 @@
 elseif progname == 'asy' then
   os.setenv('ASYMPTOTE_GS', GSEXE)
   os.setenv('CYGWIN', 'nodosfilewarning')
-  ARGV = {[0]=TEXDIR..'/tlpkg/asymptote/asy.exe', 'asy'}
+  if is_64bit_windows_os() then
+    ARGV = {[0]=TEXDIR..'/tlpkg/asymptote64/asy.exe', 'asy'}
+  else
+    ARGV = {[0]=TEXDIR..'/tlpkg/asymptote/asy.exe', 'asy'}
+  end
 elseif progname == 'dviout' then
   local fontsdir = kpse.var_value('TEXMFVAR') .. '/fonts'
   if (lfs.attributes(fontsdir, 'mode') ~= 'directory') then 



More information about the tex-live-commits mailing list