Revision: 111792 https://trac.macports.org/changeset/111792 Author: dports@macports.org Date: 2013-10-01 16:47:49 -0700 (Tue, 01 Oct 2013) Log Message: ----------- texlive-bin: backport various fixes from upstream (see #39334, and http://www.tug.org/pipermail/tldistro/2013q3/000218.html) Modified Paths: -------------- trunk/dports/tex/texlive-bin/Portfile Added Paths: ----------- trunk/dports/tex/texlive-bin/files/patch-svn31126-luatex.diff trunk/dports/tex/texlive-bin/files/patch-svn31303-dvipdfmx.diff trunk/dports/tex/texlive-bin/files/patch-svn31313-pdftex-luatex.diff trunk/dports/tex/texlive-bin/files/patch-svn31350-dvips.diff trunk/dports/tex/texlive-bin/files/patch-svn31358-luatex.diff trunk/dports/tex/texlive-bin/files/patch-svn31547-dvips.diff trunk/dports/tex/texlive-bin/files/patch-svn31621-mendex.diff trunk/dports/tex/texlive-bin/files/patch-svn31700-dvipdfmx.diff trunk/dports/tex/texlive-bin/files/patch-svn31735-metapost.diff Modified: trunk/dports/tex/texlive-bin/Portfile =================================================================== --- trunk/dports/tex/texlive-bin/Portfile 2013-10-01 22:07:04 UTC (rev 111791) +++ trunk/dports/tex/texlive-bin/Portfile 2013-10-01 23:47:49 UTC (rev 111792) @@ -7,7 +7,7 @@ name texlive-bin version 2013 -revision 2 +revision 3 categories tex maintainers dports @@ -83,6 +83,17 @@ # # fixes for makefile brokenness not otherwise specified patchfiles-append patch-libs-freetype-Makefile.in.diff +# backported fixes from upstream +# svn31700 fixes #39334 +patchfiles-append patch-svn31126-luatex.diff \ + patch-svn31303-dvipdfmx.diff \ + patch-svn31313-pdftex-luatex.diff \ + patch-svn31350-dvips.diff \ + patch-svn31358-luatex.diff \ + patch-svn31621-mendex.diff \ + patch-svn31700-dvipdfmx.diff \ + patch-svn31735-metapost.diff + post-patch { reinplace "s|@@TEXMFDIST@@|${texlive_texmfdist}|" ${worksrcpath}/texk/texlive/linked_scripts/Makefile.in reinplace "s|@@TEXMFDIST@@|${texlive_texmfdist}|" ${worksrcpath}/texk/texlive/tl_scripts/Makefile.in Added: trunk/dports/tex/texlive-bin/files/patch-svn31126-luatex.diff =================================================================== --- trunk/dports/tex/texlive-bin/files/patch-svn31126-luatex.diff (rev 0) +++ trunk/dports/tex/texlive-bin/files/patch-svn31126-luatex.diff 2013-10-01 23:47:49 UTC (rev 111792) @@ -0,0 +1,26 @@ +upstream svn31126 fix for luatex +--- + texk/web2c/luatexdir/ChangeLog | 5 +++++ + texk/web2c/luatexdir/pdf/pdfgen.w | 4 ++-- + 2 files changed, 7 insertions(+), 2 deletions(-) + +--- texk/web2c/luatexdir/pdf/pdfgen.w ++++ texk/web2c/luatexdir/pdf/pdfgen.w +@@ -572,7 +572,7 @@ + { + char s[24]; + int w; +- w = snprintf(s, 23, "%" LONGINTEGER_PRI "d", n); ++ w = snprintf(s, 23, "%" LONGINTEGER_PRI "d", (LONGINTEGER_TYPE) n); + check_nprintf(w, 23); + pdf_out_block(pdf, (const char *) s, (size_t) w); + } +@@ -719,7 +719,7 @@ + if (pdf->seek_write_length && pdf->draftmode == 0) { + xfseeko(pdf->file, (off_t)pdf->stream_length_offset, SEEK_SET, + pdf->job_name); +- fprintf(pdf->file, "%" LONGINTEGER_PRI "i", pdf->stream_length); ++ fprintf(pdf->file, "%" LONGINTEGER_PRI "i", (LONGINTEGER_TYPE) pdf->stream_length); + xfseeko(pdf->file, 0, SEEK_END, pdf->job_name); + } + pdf->seek_write_length = false; Added: trunk/dports/tex/texlive-bin/files/patch-svn31303-dvipdfmx.diff =================================================================== --- trunk/dports/tex/texlive-bin/files/patch-svn31303-dvipdfmx.diff (rev 0) +++ trunk/dports/tex/texlive-bin/files/patch-svn31303-dvipdfmx.diff 2013-10-01 23:47:49 UTC (rev 111792) @@ -0,0 +1,16 @@ +upstream svn31303 fix for dvipdfmx +--- + texk/dvipdfmx/src/jpegimage.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- texk/dvipdfmx/src/jpegimage.c ++++ texk/dvipdfmx/src/jpegimage.c +@@ -360,7 +360,7 @@ + struct JPEG_APPn_JFIF *app_data; + int i; + for (i = 0; i < j_info->num_appn; i++) { +- if (j_info->appn[i].marker == JM_APP0 || ++ if (j_info->appn[i].marker == JM_APP0 && + j_info->appn[i].app_sig == JS_APPn_JFIF) + break; + } Added: trunk/dports/tex/texlive-bin/files/patch-svn31313-pdftex-luatex.diff =================================================================== --- trunk/dports/tex/texlive-bin/files/patch-svn31313-pdftex-luatex.diff (rev 0) +++ trunk/dports/tex/texlive-bin/files/patch-svn31313-pdftex-luatex.diff 2013-10-01 23:47:49 UTC (rev 111792) @@ -0,0 +1,81 @@ +upstream svn31313 fix for pdftex and luatex +--- + texk/web2c/luatexdir/ChangeLog | 5 +++++ + texk/web2c/luatexdir/font/writettf.w | 7 +++---- + texk/web2c/pdftexdir/ChangeLog | 5 +++++ + texk/web2c/pdftexdir/ttf2afm.c | 6 +++--- + texk/web2c/pdftexdir/writettf.c | 7 +++---- + 5 files changed, 19 insertions(+), 11 deletions(-) + +--- texk/web2c/luatexdir/font/writettf.w ++++ texk/web2c/luatexdir/font/writettf.w +@@ -816,14 +816,13 @@ + } + } + break; ++ default: ++ pdftex_warn("unsupported format (%.8X) of `post' table, assuming 3.0", ++ (unsigned int) post_format); + case 0x00030000: + for (glyph = glyph_tab; glyph - glyph_tab < NMACGLYPHS; glyph++) { + glyph->name_index = (TTF_USHORT) (glyph - glyph_tab); + } +- break; +- default: +- pdftex_fail("unsupported format (%.8X) of `post' table", +- (unsigned int) post_format); + } + } + +--- texk/web2c/pdftexdir/ChangeLog ++++ texk/web2c/pdftexdir/ChangeLog +@@ -1,3 +1,8 @@ ++2013-07-30 Peter Breitenlohner <peb@mppmu.mpg.de> ++ ++ * ttf2afm.c, writettf.c: Treat unknown 'post' table versions ++ (found in some broken fonts) as 3.0, i.e., no Glyph names. ++ + 2013-04-22 Akira Kakuto <kakuto@fuk.kindai.ac.jp> + + * pdftex.web: pdftex_revision = "14" +--- texk/web2c/pdftexdir/ttf2afm.c ++++ texk/web2c/pdftexdir/ttf2afm.c +@@ -521,15 +521,15 @@ + } + } + break; ++ default: ++ ttf_warn("unsupported format (%.8X) of `post' table, assuming 3.0", ++ post_format); + case 0x00030000: + if (print_glyph == AS_NAME) { + ttf_warn + ("no names available in `post' table, print glyph names as indices"); + print_glyph = AS_INDEX; + } +- break; +- default: +- ttf_fail("unsupported format (%.8X) of `post' table", post_format); + } + ttf_seek_tab("loca", 0); + if (loca_format == 1) { +--- texk/web2c/pdftexdir/writettf.c ++++ texk/web2c/pdftexdir/writettf.c +@@ -517,14 +517,13 @@ + } + } + break; ++ default: ++ pdftex_warn("unsupported format (%.8X) of `post' table, assuming 3.0", ++ (unsigned int) post_format); + case 0x00030000: + for (glyph = glyph_tab; glyph - glyph_tab < NMACGLYPHS; glyph++) { + glyph->name_index = glyph - glyph_tab; + } +- break; +- default: +- pdftex_fail("unsupported format (%.8X) of `post' table", +- (unsigned int) post_format); + } + } + Added: trunk/dports/tex/texlive-bin/files/patch-svn31350-dvips.diff =================================================================== --- trunk/dports/tex/texlive-bin/files/patch-svn31350-dvips.diff (rev 0) +++ trunk/dports/tex/texlive-bin/files/patch-svn31350-dvips.diff 2013-10-01 23:47:49 UTC (rev 111792) @@ -0,0 +1,22 @@ +upstream svn31350 fix dvips +--- + texk/dvipsk/ChangeLog | 5 +++++ + texk/dvipsk/bbox.c | 4 ++-- + 2 files changed, 7 insertions(+), 2 deletions(-) + + 2013-04-07 Karl Berry <karl@tug.org> + + * resident.c (getdefaults) <m>: if <= 0, set to INT_MAX. +--- texk/dvipsk/bbox.c ++++ texk/dvipsk/bbox.c +@@ -346,8 +346,8 @@ + if (v - bcd->ury < lly) lly = v - bcd->ury; + if (v - bcd->lly > ury) ury = v - bcd->lly; + } else { +- if (h + bcd->ury < llx) llx = h + bcd->ury; +- if (h + bcd->lly > urx) urx = h + bcd->lly; ++ if (h + bcd->ury > urx) urx = h + bcd->ury; ++ if (h + bcd->lly < llx) llx = h + bcd->lly; + if (v + bcd->llx < lly) lly = v + bcd->llx; + if (v + bcd->urx > ury) ury = v + bcd->urx; + } Added: trunk/dports/tex/texlive-bin/files/patch-svn31358-luatex.diff =================================================================== --- trunk/dports/tex/texlive-bin/files/patch-svn31358-luatex.diff (rev 0) +++ trunk/dports/tex/texlive-bin/files/patch-svn31358-luatex.diff 2013-10-01 23:47:49 UTC (rev 111792) @@ -0,0 +1,17 @@ +upstream svn31358 fix for luatex +--- + texk/web2c/luatexdir/ChangeLog | 5 +++++ + texk/web2c/luatexdir/font/writecff.w | 2 ++ + 2 files changed, 7 insertions(+) + +--- texk/web2c/luatexdir/font/writecff.w ++++ texk/web2c/luatexdir/font/writecff.w +@@ -3389,6 +3389,8 @@ + } + pdf_begin_obj(pdf, cidset, OBJSTM_NEVER); + pdf_begin_dict(pdf); ++ pdf_dict_add_streaminfo(pdf); ++ pdf_end_dict(pdf); + pdf_begin_stream(pdf); + pdf_out_block(pdf, stream, l); + pdf_end_stream(pdf); Added: trunk/dports/tex/texlive-bin/files/patch-svn31547-dvips.diff =================================================================== --- trunk/dports/tex/texlive-bin/files/patch-svn31547-dvips.diff (rev 0) +++ trunk/dports/tex/texlive-bin/files/patch-svn31547-dvips.diff 2013-10-01 23:47:49 UTC (rev 111792) @@ -0,0 +1,22 @@ +upstream svn31547 fix for dvips +--- + texk/dvipsk/ChangeLog | 5 +++++ + texk/dvipsk/writet1.c | 4 +++- + 2 files changed, 8 insertions(+), 1 deletion(-) + + 2013-08-05 Akira Kakuto <kakuto@fuk.kindai.ac.jp> + + * bbox.c: Fix a bug in bbdopage() to obtain correct BoundingBox in +--- texk/dvipsk/writet1.c ++++ texk/dvipsk/writet1.c +@@ -1167,7 +1167,9 @@ + t1_getline(); + while (!t1_prefix("/Encoding")) { + t1_scan_param(); +- t1_putline(); ++ if (!(t1_prefix("/UniqueID") && ++ !strncmp(t1_line_array + strlen(t1_line_array) -4, "def", 3))) ++ t1_putline(); + t1_getline(); + } + if (is_reencoded(fm_cur)) Added: trunk/dports/tex/texlive-bin/files/patch-svn31621-mendex.diff =================================================================== --- trunk/dports/tex/texlive-bin/files/patch-svn31621-mendex.diff (rev 0) +++ trunk/dports/tex/texlive-bin/files/patch-svn31621-mendex.diff 2013-10-01 23:47:49 UTC (rev 111792) @@ -0,0 +1,78 @@ +upstream svn31621 fix for mendex +--- + texk/mendexk/ChangeLog | 9 +++++++++ + texk/mendexk/Makefile.am | 9 +++++++++ + texk/mendexk/fwrite.c | 4 ++-- + texk/mendexk/tests/foo.idx | 3 +++ + texk/mendexk/tests/foo.ind | 5 +++++ + texk/mendexk/tests/mendex.test | 16 ++++++++++++++++ + 6 files changed, 44 insertions(+), 2 deletions(-) + +--- texk/mendexk/Makefile.am ++++ texk/mendexk/Makefile.am +@@ -50,3 +50,12 @@ + indexsty \ + mendex.doc + ++## Tests ++## ++TESTS = tests/mendex.test ++EXTRA_DIST += $(TESTS) ++ ++## tests/mendex.test ++EXTRA_DIST += tests/foo.idx tests/foo.ind ++DISTCLEANFILES = foo.* ++ +--- texk/mendexk/fwrite.c ++++ texk/mendexk/fwrite.c +@@ -15,7 +15,7 @@ + static void linecheck(char *lbuff, char *tmpbuff); + static void crcheck(char *lbuff, FILE *fp); + +-#define TAIL(x) (x+strlen(x)) ++#define TAIL(x) ((x)+strlen(x)) + + /* if we don't have vsnprintf() */ + /* #define vsnprintf(buff,len,format,argptr) vsprintf(buff,format,argptr) */ +@@ -385,7 +385,7 @@ + } + if (strlen(ind.p[j].enc)>0) { + sprintf(tmpbuff,"%s%s%s",encap_prefix,ind.p[j].enc,encap_infix); +- sprintf(tmpbuff,"%s%s%s",ind.p[j].page,encap_suffix,delim_n); ++ sprintf(TAIL(tmpbuff),"%s%s%s",ind.p[j].page,encap_suffix,delim_n); + linecheck(lbuff,tmpbuff); + } + } +--- /dev/null ++++ texk/mendexk/tests/foo.idx +@@ -0,0 +1,3 @@ ++\indexentry{foo|(}{1} ++\indexentry{foo|mac}{1} ++\indexentry{foo|)}{1} +--- /dev/null ++++ texk/mendexk/tests/foo.ind +@@ -0,0 +1,5 @@ ++\begin{theindex} ++ ++ \item foo, \mac{1}, 1 ++ ++\end{theindex} +--- /dev/null ++++ texk/mendexk/tests/mendex.test +@@ -0,0 +1,16 @@ ++#! /bin/sh ++ ++# Copyright (C) 2013 Peter Breitenlohner <tex-live@tug.org> ++# You may freely use, modify and/or distribute this file. ++ ++TEXMFCNF=$srcdir/../kpathsea ++export TEXMFCNF ++ ++rm -f foo.* ++ ++./mendex $srcdir/tests/foo.idx -o foo.ind1 -t foo.ilg1 \ ++ && diff $srcdir/tests/foo.ind foo.ind1 || exit 1 ++ ++cat $srcdir/tests/foo.idx | ./mendex >foo.ind2 2>foo.ilg2 \ ++ && diff $srcdir/tests/foo.ind foo.ind2 || exit 1 ++ Added: trunk/dports/tex/texlive-bin/files/patch-svn31700-dvipdfmx.diff =================================================================== --- trunk/dports/tex/texlive-bin/files/patch-svn31700-dvipdfmx.diff (rev 0) +++ trunk/dports/tex/texlive-bin/files/patch-svn31700-dvipdfmx.diff 2013-10-01 23:47:49 UTC (rev 111792) @@ -0,0 +1,96 @@ +Index: source/texk/dvipdf-x/dpxcrypt.c +=================================================================== +--- texk/dvipdfmx/src/dpxcrypt.c (revision 31699) ++++ texk/dvipdfmx/src/dpxcrypt.c (revision 31700) +@@ -28,12 +28,6 @@ + # include <sys/types.h> + #endif + #include <string.h> +-#ifdef HAVE_INTTYPES_H +-# include <inttypes.h> +-#endif +-#ifdef HAVE_STDINT_H +-# include <stdint.h> +-#endif + + #include "dpxcrypt.h" + +@@ -289,7 +283,7 @@ + #define X(a) do { *p++ = hd->a; *p++ = hd->a >> 8; \ + *p++ = hd->a >> 16; *p++ = hd->a >> 24; } while (0) + #else /* little endian */ +-#define X(a) do { *(unsigned long *)p = (*hd).a ; p += 4; } while (0) ++#define X(a) do { *(uint32_t *)p = (*hd).a ; p += sizeof(uint32_t); } while (0) + #endif + X(A); + X(B); +Index: source/texk/dvipdf-x/dpxcrypt.h +=================================================================== +--- texk/dvipdfmx/src/dpxcrypt.h (revision 31699) ++++ texk/dvipdfmx/src/dpxcrypt.h (revision 31700) +@@ -24,10 +24,16 @@ + #define _DPXCRYPT_H_ + + #include <stdio.h> ++#ifdef HAVE_INTTYPES_H ++# include <inttypes.h> ++#endif ++#ifdef HAVE_STDINT_H ++# include <stdint.h> ++#endif + + /* libgcrypt md5 */ + typedef struct { +- unsigned long A,B,C,D; /* chaining variables */ ++ uint32_t A,B,C,D; /* chaining variables */ + unsigned long nblocks; + unsigned char buf[64]; + int count; +Index: source/texk/dvipdf-x/dpxcrypt.c +=================================================================== +--- texk/xdvipdfmx/src/dpxcrypt.c (revision 31699) ++++ texk/xdvipdfmx/src/dpxcrypt.c (revision 31700) +@@ -28,12 +28,6 @@ + # include <sys/types.h> + #endif + #include <string.h> +-#ifdef HAVE_INTTYPES_H +-# include <inttypes.h> +-#endif +-#ifdef HAVE_STDINT_H +-# include <stdint.h> +-#endif + + #include "dpxcrypt.h" + +@@ -289,7 +283,7 @@ + #define X(a) do { *p++ = hd->a; *p++ = hd->a >> 8; \ + *p++ = hd->a >> 16; *p++ = hd->a >> 24; } while (0) + #else /* little endian */ +-#define X(a) do { *(unsigned long *)p = (*hd).a ; p += 4; } while (0) ++#define X(a) do { *(uint32_t *)p = (*hd).a ; p += sizeof(uint32_t); } while (0) + #endif + X(A); + X(B); +Index: source/texk/dvipdf-x/dpxcrypt.h +=================================================================== +--- texk/xdvipdfmx/src/dpxcrypt.h (revision 31699) ++++ texk/xdvipdfmx/src/dpxcrypt.h (revision 31700) +@@ -24,10 +24,16 @@ + #define _DPXCRYPT_H_ + + #include <stdio.h> ++#ifdef HAVE_INTTYPES_H ++# include <inttypes.h> ++#endif ++#ifdef HAVE_STDINT_H ++# include <stdint.h> ++#endif + + /* libgcrypt md5 */ + typedef struct { +- unsigned long A,B,C,D; /* chaining variables */ ++ uint32_t A,B,C,D; /* chaining variables */ + unsigned long nblocks; + unsigned char buf[64]; + int count; Added: trunk/dports/tex/texlive-bin/files/patch-svn31735-metapost.diff =================================================================== --- trunk/dports/tex/texlive-bin/files/patch-svn31735-metapost.diff (rev 0) +++ trunk/dports/tex/texlive-bin/files/patch-svn31735-metapost.diff 2013-10-01 23:47:49 UTC (rev 111792) @@ -0,0 +1,23 @@ +upstream svn31735 fix for metapost +--- + texk/web2c/mplibdir/ChangeLog | 4 ++++ + texk/web2c/mplibdir/mp.w | 4 ++-- + 2 files changed, 6 insertions(+), 2 deletions(-) + +--- texk/web2c/mplibdir/mp.w ++++ texk/web2c/mplibdir/mp.w +@@ -1,4 +1,4 @@ +-% $Id: mp.w 1918 2013-06-13 12:47:55Z taco $ ++% $Id: mp.w 1924 2013-09-20 15:02:58Z taco $ + % + % This file is part of MetaPost; + % the MetaPost program is in the public domain. +@@ -32727,7 +32727,7 @@ + mp_number arg1; + new_number (arg1); + number_clone (arg1, x); +- number_multiply_int (x, 16); ++ number_multiply_int (arg1, 16); + make_scaled (x, arg1, internal_value (mp_design_size)); + free_number (arg1); + }
participants (1)
-
dports@macports.org