--- Imakefile +++ Imakefile 2006-07-31 17:14:30.000000000 +0000 @@ -1,7 +1,3 @@ -#ifndef XCOMM -#define XCOMM # -#endif - XCOMM Top level Makefile for TransFig XCOMM TransFig: Facility for Translating Fig code @@ -24,6 +20,7 @@ XCOMM type "xmkmf", "make Makefiles", "m #define IHaveSubdirs #define PassCDebugFlags 'CDEBUGFLAGS=$(CDEBUGFLAGS)' +MFLAGS = XFIGLIBDIR=_DATA/xfig DEPLIBS = SUBDIRS = fig2dev transfig MakeSubdirs($(SUBDIRS)) --- doc/manual/Makefile +++ doc/manual/Makefile 2007-07-24 15:30:27.000000000 +0000 @@ -2,7 +2,7 @@ # TransFig makefile # -all: trans.tex +all: trans.tex manual.pdf # translation into latex @@ -12,3 +12,16 @@ clean:: rm -f trans.tex cleandir:: + +manual.ps: manual.dvi + dvips -o $@ $^ + +manual.dvi: manual.tex trans.tex + latex manual.tex + latex manual.tex + latex manual.tex + +manual.pdf: manual.tex trans.tex + pdflatex manual.tex + pdflatex manual.tex + pdflatex manual.tex --- fig2dev/Imakefile +++ fig2dev/Imakefile 2007-07-24 15:04:29.000000000 +0000 @@ -34,7 +34,7 @@ XCOMM ****** XCOMM You should point XFIGLIBDIR to the same directory you did when you compiled XCOMM and installed xfig. -XFIGLIBDIR = /usr/local/lib/X11/xfig +XFIGLIBDIR = $(LIBDIR)/xfig XCOMM ****** XCOMM If your system doesn't have the strerror() function (has sys_errlist) then @@ -53,7 +53,7 @@ XCOMM Uncomment the following line if yo XCOMM inline functions. With the "INLINE" keyword, you should notice that XCOMM the display will be a bit faster in complex figures -XCOMM USEINLINE = -DUSE_INLINE +USEINLINE = -DUSE_INLINE XCOMM **************** XCOMM Change RGB if necessary, to point to your rgb.txt color database @@ -97,11 +97,11 @@ XPMINC = -I/usr/include/X11 XCOMM **************** XCOMM Uncomment the following to set default paper size to A4 -XCOMM DDA4 = -DA4 +DDA4 = -DA4 XCOMM **************** XCOMM Uncomment the following to set IBM Graphics Enhancement Cartridge -XCOMM DDIBMGEC = -DIBMGEC +DDIBMGEC = -DIBMGEC XCOMM **************** XCOMM Comment out the DDNFSS = ... line if you don't want NFSS2 font selection @@ -117,6 +117,7 @@ XCOMM probably want to include neither. DDNFSS = -DNFSS DDLATEX2E_GRAPHICS = -DLATEX2E_GRAPHICS +XCOMM Use modern garphics style, not older epsfig style XCOMM DDEPSFIG = -DEPSFIG XCOMM **************** @@ -141,7 +142,7 @@ XCOMM Comment out the next line if you h #ifdef I18N I18N_DEFS = -DI18N -FIG2DEV_LIBDIR = /usr/local/lib/fig2dev +FIG2DEV_LIBDIR = $(XFIGLIBDIR)/fig2dev I18N_DEV_DEFS = $(I18N_DEFS) -DFIG2DEV_LIBDIR=$(FIG2DEV_LIBDIR) -DFIG2DEV_LIBDIR_STR=\\\"$(FIG2DEV_LIBDIR)\\\" #endif /* I18N */ @@ -150,7 +151,7 @@ XCOMM ********************************** XCOMM *** You shouldn't have to change anything below this point *** XCOMM ************************************************************** -DIR_DEFS= -DBITMAPDIR=\\\"$(DESTDIR)$(XFIGLIBDIR)/bitmaps\\\" +DIR_DEFS= -DBITMAPDIR=\\\"$(XFIGLIBDIR)/bitmaps\\\" #ifdef USEPNG DUSEPNG = -DUSE_PNG @@ -229,7 +230,7 @@ install:: else (set -x; $(MKDIRHIER) $(DESTDIR)$(XFIGLIBDIR)/bitmaps ); fi ; \ echo Copying bitmap files for tk to $(DESTDIR)$(XFIGLIBDIR)/bitmaps ; \ for f in * ; do \ - $(INSTALL) -c $$f $(DESTDIR)$(XFIGLIBDIR)/bitmaps ; \ + $(INSTALL) -m644 $$f $(DESTDIR)$(XFIGLIBDIR)/bitmaps ; \ done) ; install.all:: --- fig2dev/dev/genps.c +++ fig2dev/dev/genps.c 2007-07-24 15:15:36.000000000 +0000 @@ -37,6 +37,8 @@ */ #include +#include +#include #include "fig2dev.h" #include "object.h" #include "bound.h" @@ -786,25 +788,46 @@ F_compound *objects; fprintf(tfp, "%s\n", SPLINE_PS); #ifdef I18N if (support_i18n && iso_text_exist(objects)) { - char *libdir, *locale; + char *libdir, *locale, *codeset; char localefile[512], str[512]; + size_t llen; FILE *fp; libdir = getenv("FIG2DEV_LIBDIR"); #ifdef FIG2DEV_LIBDIR_STR if (libdir == NULL) libdir = FIG2DEV_LIBDIR_STR; #endif - locale = getenv("LANG"); + locale = setlocale(LC_CTYPE, NULL); + llen = strcspn(locale, ".@"); + codeset = nl_langinfo(CODESET); if (locale == NULL) { fprintf(stderr, "fig2dev: LANG not defined; assuming C locale\n"); locale = "C"; } - sprintf(localefile, "%s/%s.ps", libdir, locale); + snprintf(localefile, sizeof(localefile)-1, "%s/%s.ps", libdir, locale); /* get filename like ``/usr/local/lib/fig2dev/japanese.ps'' */ fp = fopen(localefile, "rb"); - if (fp == NULL) { + if (fp == NULL) fprintf(stderr, "fig2dev: can't open file: %s\n", localefile); - } else { + + if (fp == NULL && strlen(locale) != llen) { + locale[llen] = '\0'; + /* get filename like ``/usr/local/lib/fig2dev/de_DE.ps'' */ + snprintf(localefile, sizeof(localefile)-1, "%s/%s.ps", libdir, locale); + fp = fopen(localefile, "rb"); + if (fp == NULL) + fprintf(stderr, "fig2dev: B can't open file: %s\n", localefile); + } + + if (fp == NULL && codeset) { + /* get filename like ``/usr/local/lib/fig2dev/ISO-8859-9.ps'' */ + snprintf(localefile, sizeof(localefile)-1, "%s/%s.ps", libdir, codeset); + fp = fopen(localefile, "rb"); + if (fp == NULL) + fprintf(stderr, "fig2dev: C can't open file: %s\n", localefile); + } + + if (fp) { while (fgets(str, sizeof(str), fp)) { if (strstr(str, "CompositeRoman")) enable_composite_font = True; fputs(str, tfp); --- fig2dev/dev/genpstex.c +++ fig2dev/dev/genpstex.c 2013-02-08 12:45:41.649945157 +0000 @@ -37,6 +37,7 @@ * Jose Alberto. */ +#include #include "fig2dev.h" #include "genps.h" #include "genpdf.h" @@ -64,10 +65,13 @@ extern void genps_spline (), genlatex_option (), genlatex_text (), - genps_text (); + genps_text (), + genpdf_option(), + genpdf_start(); extern int genlatex_end (), - genps_end (); + genps_end (), + genpdf_end(); static char pstex_file[1000] = ""; static int iObjectsRead = 0; --- fig2dev/dev/gensvg.c +++ fig2dev/dev/gensvg.c 2009-12-14 13:29:42.000000000 +0000 @@ -816,9 +816,11 @@ gensvg_text (t) x, y, degrees (t->angle)); x = y = 0; } - fprintf (tfp, "", - x, y, rgbColorVal (t->color), family[t->font / 4], + fprintf (tfp, + "color), family[t->font / 4]); + fprintf (tfp, + "font-style=\"%s\" font-weight=\"%s\" font-size=\"%d\" text-anchor=\"%s\">", ( (t->font % 2 == 0 || t->font >31) ? "normal" : "italic"), ( (t->font % 4 < 2 || t->font >31) ? "normal" : "bold"), (int) (ceil (t->size * 12 * mag)), anchor[t->type]); --- fig2dev/fig2dev.c +++ fig2dev/fig2dev.c 2007-07-24 15:08:45.000000000 +0000 @@ -24,6 +24,7 @@ #include #endif #include +#include #include "fig2dev.h" #include "alloc.h" #include "object.h" @@ -31,9 +32,14 @@ #include "bound.h" #include "read.h" +#ifndef __GLIBC__ extern int fig_getopt(); extern char *optarg; extern int optind; +#else +# include +# define fig_getopt getopt +#endif char lang[40]; int parse_gridspec(); static void grid_usage(); @@ -380,6 +386,7 @@ char *argv[]; F_compound objects; int status; + setlocale(LC_CTYPE, ""); #ifdef HAVE_SETMODE setmode(1,O_BINARY); /* stdout is binary */ #endif --- fig2dev/fig2dev.h +++ fig2dev/fig2dev.h 2007-07-24 15:09:55.000000000 +0000 @@ -23,6 +23,7 @@ #include #include #include +#include #include #include #include @@ -57,7 +58,7 @@ typedef char Boolean; #ifndef X_NOT_STDC_ENV # include #else -# ifdef SYSV +# if defined(SYSV) || defined(__GLIBC__) # include # else # include --- fig2dev/fig2ps2tex.script +++ fig2dev/fig2ps2tex.script 2006-07-31 16:26:56.000000000 +0000 @@ -3,6 +3,7 @@ # Fig2ps2tex - generate a TeX file for including a PostScript file # involves calculating the bounding box from fig2ps output # +set echo_style=bsd set bbox = `grep "^%%BoundingBox:" $1` set xsp = `echo "3k $bbox[4] $bbox[2] - 72 / p" | dc` --- fig2dev/getopt.c +++ fig2dev/getopt.c 2006-07-31 16:26:56.000000000 +0000 @@ -35,6 +35,7 @@ static char sccsfid[] = "@(#) getopt.c 5 #define EMSG "" #define ENDARGS "--" +#ifndef __GLIBC__ /* this is included because index is not on some UNIX systems */ static char * index (s, c) @@ -46,7 +47,9 @@ index (s, c) else s++; return (NULL); } +#endif +#ifndef __GLIBC__ /* * get option letter from argument vector */ @@ -95,4 +98,10 @@ fig_getopt(nargc,nargv,ostr) } return(fig_optopt); /* dump back option letter */ } - +#else +#include +fig_getopt(int nargc, char * const nargv[], const char *ostr) +{ + return getopt(nargc, nargv, ostr); +} +#endif --- transfig/Imakefile +++ transfig/Imakefile 2006-07-31 16:26:56.000000000 +0000 @@ -32,7 +32,7 @@ XCOMM Uncomment the USELATEX2E flag to u XCOMM \\usepackage{} command for LaTeX2e. XCOMM The default is to use \\documentstyle{} for LaTeX209. -XCOMM USELATEX2E = -DLATEX2E +USELATEX2E = -DLATEX2E XCOMM ******* DON'T CHANGE ANYTHING BELOW THIS POINT ******* --- transfig/sys.c +++ transfig/sys.c 2012-09-28 14:24:03.339507328 +0000 @@ -17,6 +17,7 @@ #include #include #include +#include #include "transfig.h" #define MAXSYS 10000 --- transfig/transfig.c +++ transfig/transfig.c 2012-09-28 14:24:24.443392989 +0000 @@ -26,6 +26,8 @@ #include #include +#include +#include #include "patchlevel.h" #include "transfig.h"