Revision: 103479 https://trac.macports.org/changeset/103479 Author: ryandesign@macports.org Date: 2013-02-26 20:11:49 -0800 (Tue, 26 Feb 2013) Log Message: ----------- enscript: update to 1.6.6; update homepage and master_sites; add mediaLetter default variant to clarify to the user what the existing mediaA4 variant is in opposition to; license GPL-3+ Modified Paths: -------------- trunk/dports/print/enscript/Portfile Removed Paths: ------------- trunk/dports/print/enscript/files/patch-CVE-2008-3863-and-4306 trunk/dports/print/enscript/files/patch-afm_Makefile.in trunk/dports/print/enscript/files/patch-configure trunk/dports/print/enscript/files/patch-lib_Makefile.in trunk/dports/print/enscript/files/patch-src_gsint.h trunk/dports/print/enscript/files/patch-src_main.c trunk/dports/print/enscript/files/patch-src_psgen.c trunk/dports/print/enscript/files/patch-src_util.c trunk/dports/print/enscript/files/patch-states_hl_Makefile.in Modified: trunk/dports/print/enscript/Portfile =================================================================== --- trunk/dports/print/enscript/Portfile 2013-02-27 01:53:54 UTC (rev 103478) +++ trunk/dports/print/enscript/Portfile 2013-02-27 04:11:49 UTC (rev 103479) @@ -2,10 +2,10 @@ PortSystem 1.0 name enscript -version 1.6.4 -revision 4 +version 1.6.6 categories print maintainers nomaintainer +license GPL-3+ description Replacement for Adobe's 'enscript' program long_description \ GNU enscript is a drop-in replacement for the enscript program. Enscript \ @@ -14,38 +14,30 @@ platforms darwin sunos -homepage http://www.codento.com/people/mtr/genscript/ -#master_sites ${homepage} -master_sites freebsd +homepage http://www.gnu.org/software/enscript/ +master_sites gnu -checksums md5 b5174b59e4a050fb462af5dbf28ebba3 \ - sha1 9dd7128a508d4c9671659b9520028d12add50cfa +checksums rmd160 eae37efdd916fbd2520834c2e2428e7b729621f1 \ + sha256 6d56bada6934d055b34b6c90399aa85975e66457ac5bf513427ae7fc77f5c0bb depends_lib port:gettext -patchfiles patch-afm_Makefile.in patch-lib_Makefile.in \ - patch-src_gsint.h patch-src_main.c patch-src_psgen.c \ - patch-src_util.c patch-states_hl_Makefile.in \ - patch-configure patch-CVE-2008-3863-and-4306 - # add ruby syntax support from # http://www.freebsd.org/cgi/cvsweb.cgi/ports/print/enscript-letter/ # and from http://support.rubyforge.org/svn/trunk/support/ruby.st patchfiles-append patch-ruby_syntax.diff -configure.args --mandir=${prefix}/share/man --with-media=Letter \ - --infodir=${prefix}/share/info - -post-destroot { - file delete -force ${destroot}${prefix}/lib/charset.alias \ - ${destroot}${prefix}/share/locale/locale.alias -} - test.run yes test.target check -variant mediaA4 description "use A4" { - configure.args-delete --with-media=Letter +variant mediaA4 conflicts mediaLetter description {use A4-size media} { configure.args-append --with-media=A4 } +variant mediaLetter conflicts mediaA4 description {use Letter-size media} { + configure.args-append --with-media=Letter +} + +if {![variant_isset mediaA4] && ![variant_isset mediaLetter]} { + default_variants +mediaLetter +} Deleted: trunk/dports/print/enscript/files/patch-CVE-2008-3863-and-4306 =================================================================== --- trunk/dports/print/enscript/files/patch-CVE-2008-3863-and-4306 2013-02-27 01:53:54 UTC (rev 103478) +++ trunk/dports/print/enscript/files/patch-CVE-2008-3863-and-4306 2013-02-27 04:11:49 UTC (rev 103479) @@ -1,94 +0,0 @@ -Patch for CVE-2008-3863 and CVE-2008-4306 - -Obtained from: http://cvs.fedoraproject.org/viewvc/devel/enscript/enscript-CVE-2008-3863%2B... - ---- src/psgen.c -+++ src/psgen.c 2008-10-29 10:43:08.512598143 +0100 -@@ -24,6 +24,7 @@ - * Boston, MA 02111-1307, USA. - */ - -+#include <limits.h> - #include "gsint.h" - - /* -@@ -124,7 +125,7 @@ struct gs_token_st - double xscale; - double yscale; - int llx, lly, urx, ury; /* Bounding box. */ -- char filename[512]; -+ char filename[PATH_MAX]; - char *skipbuf; - unsigned int skipbuf_len; - unsigned int skipbuf_pos; -@@ -135,11 +136,11 @@ struct gs_token_st - Color bgcolor; - struct - { -- char name[512]; -+ char name[PATH_MAX]; - FontPoint size; - InputEncoding encoding; - } font; -- char filename[512]; -+ char filename[PATH_MAX]; - } u; - }; - -@@ -248,7 +249,7 @@ static int do_print = 1; - static int user_fontp = 0; - - /* The user ^@font{}-defined font. */ --static char user_font_name[256]; -+static char user_font_name[PATH_MAX]; - static FontPoint user_font_pt; - static InputEncoding user_font_encoding; - -@@ -978,7 +979,8 @@ large for page\n"), - FATAL ((stderr, - _("user font encoding can be only the system's default or `ps'"))); - -- strcpy (user_font_name, token.u.font.name); -+ memset (user_font_name, 0, sizeof(user_font_name)); -+ strncpy (user_font_name, token.u.font.name, sizeof(user_font_name) - 1); - user_font_pt.w = token.u.font.size.w; - user_font_pt.h = token.u.font.size.h; - user_font_encoding = token.u.font.encoding; -@@ -1444,7 +1446,7 @@ read_special_escape (InputStream *is, To - buf[i] = ch; - if (i + 1 >= sizeof (buf)) - FATAL ((stderr, _("too long argument for %s escape:\n%.*s"), -- escapes[i].name, i, buf)); -+ escapes[e].name, i, buf)); - } - buf[i] = '\0'; - -@@ -1452,7 +1454,8 @@ read_special_escape (InputStream *is, To - switch (escapes[e].escape) - { - case ESC_FONT: -- strcpy (token->u.font.name, buf); -+ memset (token->u.font.name, 0, sizeof(token->u.font.name)); -+ strncpy (token->u.font.name, buf, sizeof(token->u.font.name) - 1); - - /* Check for the default font. */ - if (strcmp (token->u.font.name, "default") == 0) -@@ -1465,7 +1468,8 @@ read_special_escape (InputStream *is, To - FATAL ((stderr, _("malformed font spec for ^@font escape: %s"), - token->u.font.name)); - -- strcpy (token->u.font.name, cp); -+ memset (token->u.font.name, 0, sizeof(token->u.font.name)); -+ strncpy (token->u.font.name, cp, sizeof(token->u.font.name) - 1); - xfree (cp); - } - token->type = tFONT; -@@ -1544,7 +1548,8 @@ read_special_escape (InputStream *is, To - break; - - case ESC_SETFILENAME: -- strcpy (token->u.filename, buf); -+ memset (token->u.filename, 0, sizeof(token->u.font.name)); -+ strncpy (token->u.filename, buf, sizeof(token->u.filename) - 1); - token->type = tSETFILENAME; - break; Deleted: trunk/dports/print/enscript/files/patch-afm_Makefile.in =================================================================== --- trunk/dports/print/enscript/files/patch-afm_Makefile.in 2013-02-27 01:53:54 UTC (rev 103478) +++ trunk/dports/print/enscript/files/patch-afm_Makefile.in 2013-02-27 04:11:49 UTC (rev 103479) @@ -1,25 +0,0 @@ ---- afm/Makefile.in.orig Wed Mar 5 00:40:06 2003 -+++ afm/Makefile.in Sat Feb 12 00:46:10 2005 -@@ -172,6 +172,8 @@ - sysconfdir = @sysconfdir@ - target_alias = @target_alias@ - -+DESTDIR= -+ - default_afm = agd.afm agdo.afm agw.afm agwo.afm bkd.afm bkdi.afm \ - bkl.afm bkli.afm cob.afm cobo.afm com.afm coo.afm hv.afm hvb.afm \ - hvbo.afm hvc.afm hvcb.afm hvcbo.afm hvcdo.afm hvn.afm hvnb.afm \ -@@ -319,10 +321,10 @@ - - - install-data-local: -- $(top_srcdir)/mkinstalldirs $(datadir)/enscript -- $(top_srcdir)/mkinstalldirs $(datadir)/enscript/afm -+ $(top_srcdir)/mkinstalldirs $(DESTDIR)$(datadir)/enscript -+ $(top_srcdir)/mkinstalldirs $(DESTDIR)$(datadir)/enscript/afm - for f in $(EXTRA_DIST); do \ -- $(INSTALL_DATA) $(srcdir)/$$f $(datadir)/enscript/afm/$$f; \ -+ $(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)$(datadir)/enscript/afm/$$f; \ - done - - uninstall-local: Deleted: trunk/dports/print/enscript/files/patch-configure =================================================================== --- trunk/dports/print/enscript/files/patch-configure 2013-02-27 01:53:54 UTC (rev 103478) +++ trunk/dports/print/enscript/files/patch-configure 2013-02-27 04:11:49 UTC (rev 103479) @@ -1,12 +0,0 @@ ---- configure.orig 2003-03-05 16:40:58.000000000 +0900 -+++ configure 2008-07-15 01:22:09.000000000 +0900 -@@ -314,6 +314,9 @@ - ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO AMTAR install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM AWK SET_MAKE CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CPP EGREP U ANSI2KNR ALLOCA LIBOBJS RANLIB ac_ct_RANLIB YACC LEX LEXLIB LEX_OUTPUT_ROOT MEDIA SPOOLER PSLEVEL MKINSTALLDIRS MSGFMT GMSGFMT XGETTEXT MSGMERGE build build_cpu build_vendor build_os host host_cpu host_vendor host_os GLIBC21 LIBICONV LTLIBICONV INTLBISON USE_NLS BUILD_INCLUDED_LIBINTL USE_INCLUDED_LIBINTL CATOBJEXT INTLOBJS DATADIRNAME INSTOBJEXT GENCAT INTL_LIBTOOL_SUFFIX_PREFIX INTLLIBS LIBINTL LTLIBINTL POSUB PERL LTLIBOBJS' - ac_subst_files='' - -+# ignore CC environment to fix macports #13855 -+CC= -+ - # Initialize some variables set by options. - ac_init_help= - ac_init_version=false Deleted: trunk/dports/print/enscript/files/patch-lib_Makefile.in =================================================================== --- trunk/dports/print/enscript/files/patch-lib_Makefile.in 2013-02-27 01:53:54 UTC (rev 103478) +++ trunk/dports/print/enscript/files/patch-lib_Makefile.in 2013-02-27 04:11:49 UTC (rev 103479) @@ -1,19 +0,0 @@ ---- lib/Makefile.in.orig Wed Mar 5 00:40:07 2003 -+++ lib/Makefile.in Sat Feb 12 00:32:30 2005 -@@ -345,12 +345,12 @@ - all-local: enscript.cfg - - install-data-local: enscript.cfg -- $(top_srcdir)/mkinstalldirs $(sysconfdir) -- if test -r $(sysconfdir)/enscript.cfg; then \ -- cp $(sysconfdir)/enscript.cfg $(sysconfdir)/enscript.cfg.old; \ -+ $(top_srcdir)/mkinstalldirs $(DESTDIR)$(sysconfdir) -+ if test -r $(DESTDIR)$(sysconfdir)/enscript.cfg; then \ -+ cp $(DESTDIR)$(sysconfdir)/enscript.cfg $(DESTDIR)$(sysconfdir)/enscript.cfg.old; \ - else :; \ - fi -- $(INSTALL_DATA) enscript.cfg $(sysconfdir)/enscript.cfg -+ $(INSTALL_DATA) enscript.cfg $(DESTDIR)$(sysconfdir)/enscript.cfg - - uninstall-local: - rm -f $(sysconfdir)/enscript.cfg Deleted: trunk/dports/print/enscript/files/patch-src_gsint.h =================================================================== --- trunk/dports/print/enscript/files/patch-src_gsint.h 2013-02-27 01:53:54 UTC (rev 103478) +++ trunk/dports/print/enscript/files/patch-src_gsint.h 2013-02-27 04:11:49 UTC (rev 103479) @@ -1,12 +0,0 @@ ---- src/gsint.h.orig -+++ src/gsint.h -@@ -701,4 +701,9 @@ - */ - void printer_close ___P ((void *context)); - -+/* -+ * Escape filenames for shell usage -+ */ -+char *shell_escape ___P ((const char *fn)); -+ - #endif /* not GSINT_H */ Deleted: trunk/dports/print/enscript/files/patch-src_main.c =================================================================== --- trunk/dports/print/enscript/files/patch-src_main.c 2013-02-27 01:53:54 UTC (rev 103478) +++ trunk/dports/print/enscript/files/patch-src_main.c 2013-02-27 04:11:49 UTC (rev 103479) @@ -1,45 +0,0 @@ ---- src/main.c.orig -+++ src/main.c -@@ -1546,9 +1546,13 @@ - buffer_append (&cmd, intbuf); - buffer_append (&cmd, " "); - -- buffer_append (&cmd, "-Ddocument_title=\""); -- buffer_append (&cmd, title); -- buffer_append (&cmd, "\" "); -+ buffer_append (&cmd, "-Ddocument_title=\'"); -+ if ((cp = shell_escape (title)) != NULL) -+ { -+ buffer_append (&cmd, cp); -+ free (cp); -+ } -+ buffer_append (&cmd, "\' "); - - buffer_append (&cmd, "-Dtoc="); - buffer_append (&cmd, toc ? "1" : "0"); -@@ -1565,8 +1569,14 @@ - /* Append input files. */ - for (i = optind; i < argc; i++) - { -- buffer_append (&cmd, " "); -- buffer_append (&cmd, argv[i]); -+ char *cp; -+ if ((cp = shell_escape (argv[i])) != NULL) -+ { -+ buffer_append (&cmd, " \'"); -+ buffer_append (&cmd, cp); -+ buffer_append (&cmd, "\'"); -+ free (cp); -+ } - } - - /* And do the job. */ -@@ -1627,7 +1637,7 @@ - buffer_ptr (opts), buffer_len (opts)); - } - -- buffer_append (&buffer, " \"%s\""); -+ buffer_append (&buffer, " \'%s\'"); - - input_filter = buffer_copy (&buffer); - input_filter_stdin = "-"; Deleted: trunk/dports/print/enscript/files/patch-src_psgen.c =================================================================== --- trunk/dports/print/enscript/files/patch-src_psgen.c 2013-02-27 01:53:54 UTC (rev 103478) +++ trunk/dports/print/enscript/files/patch-src_psgen.c 2013-02-27 04:11:49 UTC (rev 103479) @@ -1,34 +0,0 @@ ---- src/psgen.c.orig -+++ src/psgen.c -@@ -2034,8 +2034,9 @@ - else - { - ftail++; -- strncpy (buf, fname, ftail - fname); -- buf[ftail - fname] = '\0'; -+ i = ftail - fname >= sizeof (buf)-1 ? sizeof (buf)-1 : ftail - fname; -+ strncpy (buf, fname, i); -+ buf[i] = '\0'; - } - - if (nup > 1) -@@ -2385,9 +2386,10 @@ - MESSAGE (2, (stderr, "^@epsf=\"%s\"\n", token->u.epsf.filename)); - - i = strlen (token->u.epsf.filename); -+ /* - if (i > 0 && token->u.epsf.filename[i - 1] == '|') - { -- /* Read EPS data from pipe. */ -+ / * Read EPS data from pipe. * / - token->u.epsf.pipe = 1; - token->u.epsf.filename[i - 1] = '\0'; - token->u.epsf.fp = popen (token->u.epsf.filename, "r"); -@@ -2400,6 +2402,7 @@ - } - } - else -+ */ - { - char *filename; - Deleted: trunk/dports/print/enscript/files/patch-src_util.c =================================================================== --- trunk/dports/print/enscript/files/patch-src_util.c 2013-02-27 01:53:54 UTC (rev 103478) +++ trunk/dports/print/enscript/files/patch-src_util.c 2013-02-27 04:11:49 UTC (rev 103479) @@ -1,79 +0,0 @@ ---- src/util.c.orig -+++ src/util.c -@@ -1239,6 +1239,8 @@ - - /* Create result. */ - cp = xmalloc (len + 1); -+ if (cp == NULL) -+ return NULL; - for (i = 0, j = 0; string[i]; i++) - switch (string[i]) - { -@@ -1879,6 +1881,7 @@ - char *cmd = NULL; - int cmdlen; - int i, pos; -+ char *cp; - - is->is_pipe = 1; - -@@ -1902,12 +1905,16 @@ - { - case 's': - /* Expand cmd-buffer. */ -- cmdlen += strlen (fname); -- cmd = xrealloc (cmd, cmdlen); -+ if ((cp = shell_escape (fname)) != NULL) -+ { -+ cmdlen += strlen (cp); -+ cmd = xrealloc (cmd, cmdlen); - -- /* Paste filename. */ -- strcpy (cmd + pos, fname); -- pos += strlen (fname); -+ /* Paste filename. */ -+ strcpy (cmd + pos, cp); -+ pos += strlen (cp); -+ free (cp); -+ } - - i++; - break; -@@ -2115,4 +2122,37 @@ - buffer_len (Buffer *buffer) - { - return buffer->len; -+} -+ -+/* -+ * Escapes the name of a file so that the shell groks it in 'single' -+ * quotation marks. The resulting pointer has to be free()ed when not -+ * longer used. -+*/ -+char * -+shell_escape(const char *fn) -+{ -+ size_t len = 0; -+ const char *inp; -+ char *retval, *outp; -+ -+ for(inp = fn; *inp; ++inp) -+ switch(*inp) -+ { -+ case '\'': len += 4; break; -+ default: len += 1; break; -+ } -+ -+ outp = retval = malloc(len + 1); -+ if(!outp) -+ return NULL; /* perhaps one should do better error handling here */ -+ for(inp = fn; *inp; ++inp) -+ switch(*inp) -+ { -+ case '\'': *outp++ = '\''; *outp++ = '\\'; *outp++ = '\'', *outp++ = '\''; break; -+ default: *outp++ = *inp; break; -+ } -+ *outp = 0; -+ -+ return retval; - } Deleted: trunk/dports/print/enscript/files/patch-states_hl_Makefile.in =================================================================== --- trunk/dports/print/enscript/files/patch-states_hl_Makefile.in 2013-02-27 01:53:54 UTC (rev 103478) +++ trunk/dports/print/enscript/files/patch-states_hl_Makefile.in 2013-02-27 04:11:49 UTC (rev 103479) @@ -1,25 +0,0 @@ ---- states/hl/Makefile.in.orig Wed Mar 5 00:40:07 2003 -+++ states/hl/Makefile.in Sat Feb 12 01:00:13 2005 -@@ -171,6 +171,8 @@ - sysconfdir = @sysconfdir@ - target_alias = @target_alias@ - -+DESTDIR= -+ - misc = enscript.st describe_languages.st default_faces.st - - styles = style_emacs.st style_emacs_verbose.st style_ifh.st \ -@@ -330,10 +332,10 @@ - - - install-data-local: -- $(top_srcdir)/mkinstalldirs $(datadir)/enscript -- $(top_srcdir)/mkinstalldirs $(datadir)/enscript/hl -+ $(top_srcdir)/mkinstalldirs $(DESTDIR)$(datadir)/enscript -+ $(top_srcdir)/mkinstalldirs $(DESTDIR)$(datadir)/enscript/hl - for f in $(states); do \ -- $(INSTALL_DATA) $(srcdir)/$$f $(datadir)/enscript/hl/$$f; \ -+ $(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)$(datadir)/enscript/hl/$$f; \ - done - - uninstall-local: