texlive[44675] Build/source/texk/dvidvi: texk/dvidvi [Windows]: Allow

commits+takuji at tug.org commits+takuji at tug.org
Fri Jun 23 16:55:46 CEST 2017


Revision: 44675
          http://tug.org/svn/texlive?view=revision&revision=44675
Author:   takuji
Date:     2017-06-23 16:55:46 +0200 (Fri, 23 Jun 2017)
Log Message:
-----------
texk/dvidvi [Windows]: Allow Unicode file names

Modified Paths:
--------------
    trunk/Build/source/texk/dvidvi/ChangeLog
    trunk/Build/source/texk/dvidvi/Makefile.am
    trunk/Build/source/texk/dvidvi/Makefile.in
    trunk/Build/source/texk/dvidvi/configure
    trunk/Build/source/texk/dvidvi/dvidvi.c

Modified: trunk/Build/source/texk/dvidvi/ChangeLog
===================================================================
--- trunk/Build/source/texk/dvidvi/ChangeLog	2017-06-23 14:52:25 UTC (rev 44674)
+++ trunk/Build/source/texk/dvidvi/ChangeLog	2017-06-23 14:55:46 UTC (rev 44675)
@@ -1,3 +1,8 @@
+2017-06-23  TANAKA Takuji  <ttk at t-lab.opal.ne.jp>
+
+	* dvidvi.c, configure, Makefile.{am,in}:
+	Allow Unicode file names. (Windows only)
+
 2017-06-18  Hironobu Yamashita  <h.y.acetaminophen at gmail.com>
 
 	* dvidvi.c: Add support for pTeX tate-kumi DVI.

Modified: trunk/Build/source/texk/dvidvi/Makefile.am
===================================================================
--- trunk/Build/source/texk/dvidvi/Makefile.am	2017-06-23 14:52:25 UTC (rev 44674)
+++ trunk/Build/source/texk/dvidvi/Makefile.am	2017-06-23 14:55:46 UTC (rev 44675)
@@ -6,6 +6,10 @@
 AM_CPPFLAGS = $(KPATHSEA_INCLUDES) -DKPATHSEA -DASCIIPTEX -DUNIX
 AM_CFLAGS = $(WARNING_CFLAGS)
 
+if WIN32
+LDADD = $(KPATHSEA_LIBS)
+endif WIN32
+
 bin_PROGRAMS = dvidvi
 
 dvidvi_SOURCES = dvidvi.c

Modified: trunk/Build/source/texk/dvidvi/Makefile.in
===================================================================
--- trunk/Build/source/texk/dvidvi/Makefile.in	2017-06-23 14:52:25 UTC (rev 44674)
+++ trunk/Build/source/texk/dvidvi/Makefile.in	2017-06-23 14:55:46 UTC (rev 44675)
@@ -542,6 +542,7 @@
 top_srcdir = @top_srcdir@
 AM_CPPFLAGS = $(KPATHSEA_INCLUDES) -DKPATHSEA -DASCIIPTEX -DUNIX
 AM_CFLAGS = $(WARNING_CFLAGS)
+ at WIN32_TRUE@LDADD = $(KPATHSEA_LIBS)
 dvidvi_SOURCES = dvidvi.c
 dist_man1_MANS = dvidvi.1
 EXTRA_DIST = a5bookle.bat a5bookle.com a5bookle.hlp a5test.tex \

Modified: trunk/Build/source/texk/dvidvi/configure
===================================================================
--- trunk/Build/source/texk/dvidvi/configure	2017-06-23 14:52:25 UTC (rev 44674)
+++ trunk/Build/source/texk/dvidvi/configure	2017-06-23 14:55:46 UTC (rev 44675)
@@ -636,6 +636,7 @@
 am__EXEEXT_TRUE
 LTLIBOBJS
 LIBOBJS
+WIN32_TRUE
 KPATHSEA_RULE
 KPATHSEA_DEPEND
 KPATHSEA_LIBS

Modified: trunk/Build/source/texk/dvidvi/dvidvi.c
===================================================================
--- trunk/Build/source/texk/dvidvi/dvidvi.c	2017-06-23 14:52:25 UTC (rev 44674)
+++ trunk/Build/source/texk/dvidvi/dvidvi.c	2017-06-23 14:55:46 UTC (rev 44675)
@@ -73,6 +73,14 @@
 #endif
 #include <kpathsea/c-pathch.h>
 #define PATHSEP         ENV_SEP
+#ifdef WIN32
+#include <kpathsea/config.h>
+#include <kpathsea/variable.h>
+#undef fopen
+#undef fprintf
+#define fopen    fsyscp_fopen
+#define fprintf  win32_fprintf
+#endif
 #else  /* not KPATHSEA */
 #if defined(__TOS__)
 #define READBIN         "rb"    /* TOS must use binary mode */
@@ -169,6 +177,16 @@
 int ptexdvi ;            /* true if dvi file is extended (TATEKUMI) */
 #endif
 
+#ifdef WIN32
+void win32_fprintf(FILE *fp, const char *fmt, ...) {
+  va_list argp;
+
+  va_start(argp, fmt);
+  win32_vfprintf(fp, fmt, argp);
+  va_end(argp);
+}
+#endif
+
 /*
  *   This array holds values that indicate the length of a command, if
  *   we aren't concerned with that command (which is most of them) or
@@ -1241,6 +1259,16 @@
 }
 int main(int argc, char *argv[])
 {
+#if defined(WIN32) && defined(KPATHSEA)
+   int ac;
+   char **av, *enc;
+   kpse_set_program_name(argv[0], "dvidvi");
+   enc = kpse_var_value("command_line_encoding");
+   if (get_command_line_args_utf8(enc, &ac, &av)) {
+      argc = ac;
+      argv = av;
+   }
+#endif
    processargs(argc, argv) ;
    readdvifile() ;
    writedvifile() ;



More information about the tex-live-commits mailing list