diff --git a/print/epson-inkjet-printer-escpr/Makefile b/print/epson-inkjet-printer-escpr/Makefile index f5eaa8f6c5d7..85905c95042a 100644 --- a/print/epson-inkjet-printer-escpr/Makefile +++ b/print/epson-inkjet-printer-escpr/Makefile @@ -1,32 +1,33 @@ PORTNAME= epson-inkjet-printer-escpr -PORTVERSION= 1.7.7 +DISTVERSION= 1.7.9 DISTVERSIONSUFFIX= -1lsb3.2 CATEGORIES= print -MASTER_SITES= https://download3.ebz.epson.net/dsc/f/03/00/10/49/18/f3016be6120a7271a6d9cb64872f817bce1920b8/ +MASTER_SITES= https://download3.ebz.epson.net/dsc/f/03/00/12/50/95/322b8d6b915ab85add33d41f04ba5130866aadbe/ MAINTAINER= tatsuki_makino@hotmail.com COMMENT= Epson Inkjet Printer Driver (ESC/P-R) for Linux LICENSE= GPLv2+ LICENSE_FILE= ${WRKSRC}/COPYING +RUN_DEPENDS= ${LOCALBASE}/libexec/cups/filter/gstoraster:print/cups-filters LIB_DEPENDS= libcupsimage.so:print/cups USES= autoreconf dos2unix gmake libtool -WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION} +WRKSRC= ${WRKDIR}/${PORTNAME}-${DISTVERSION} PORTDOCS= AUTHORS NEWS README README.ja GNU_CONFIGURE= yes CONFIGURE_ARGS= --enable-lsb INSTALL_TARGET= install-strip SUB_FILES= pkg-message USE_LDCONFIG= yes OPTIONS_DEFINE= DOCS -PORTSCOUT= ignore # MASTER_SITES is changed in each version +PORTSCOUT= ignore:1 # MASTER_SITES is changed in each version post-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} cd ${WRKSRC} && ${INSTALL_DATA} ${PORTDOCS} ${STAGEDIR}${DOCSDIR} .include diff --git a/print/epson-inkjet-printer-escpr/distinfo b/print/epson-inkjet-printer-escpr/distinfo index 5898c132fd3d..5cace489e2be 100644 --- a/print/epson-inkjet-printer-escpr/distinfo +++ b/print/epson-inkjet-printer-escpr/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1577415600 -SHA256 (epson-inkjet-printer-escpr-1.7.7-1lsb3.2.tar.gz) = 8d964368a1395a8902b8637e3dc176d6793f0afdfe3f21e95509f29894700d4e -SIZE (epson-inkjet-printer-escpr-1.7.7-1lsb3.2.tar.gz) = 4767015 +TIMESTAMP = 1613962800 +SHA256 (epson-inkjet-printer-escpr-1.7.9-1lsb3.2.tar.gz) = 80bdfbe70e93f0613680e8ff7129cf2eead725d771e9396ccbd6f51ae186d08c +SIZE (epson-inkjet-printer-escpr-1.7.9-1lsb3.2.tar.gz) = 4831399 diff --git a/print/epson-inkjet-printer-escpr/files/patch-ppd_Makefile.am b/print/epson-inkjet-printer-escpr/files/patch-ppd_Makefile.am index fe5caf615fcf..416ff807db74 100644 --- a/print/epson-inkjet-printer-escpr/files/patch-ppd_Makefile.am +++ b/print/epson-inkjet-printer-escpr/files/patch-ppd_Makefile.am @@ -1,18 +1,18 @@ ---- ppd/Makefile.am.orig 2019-08-28 05:35:05 UTC +--- ppd/Makefile.am.orig 2021-02-15 02:27:34 UTC +++ ppd/Makefile.am -@@ -624,8 +624,10 @@ EXTRA_DIST = $(cupsppd_DATA) +@@ -639,8 +639,10 @@ EXTRA_DIST = $(cupsppd_DATA) # LSBビルド環境の場合、~/.rpmmacros %adjust_ppds が担っている処理を実施 install-data-hook: -if LSB -else - echo "Make CUPS filter paths in the PPDs absolute" - sed -i 's,0 epson-escpr-wrapper,0 @CUPS_FILTER_DIR@/epson-escpr-wrapper,' $(DESTDIR)$(cupsppddir)/*.ppd -endif +#if LSB +#else +# echo "Make CUPS filter paths in the PPDs absolute" +# sed -i 's,0 epson-escpr-wrapper,0 @CUPS_FILTER_DIR@/epson-escpr-wrapper,' $(DESTDIR)$(cupsppddir)/*.ppd +#endif + @echo "Make CUPS filter paths in the PPDs absolute" + $(SED) -i '' 's,0 epson-escpr-wrapper,0 @CUPS_FILTER_DIR@/epson-escpr-wrapper,' $(DESTDIR)$(cupsppddir)/*.ppd diff --git a/print/epson-inkjet-printer-escpr/files/patch-src_filter.c b/print/epson-inkjet-printer-escpr/files/patch-src_filter.c index 6eef8c20262e..1a9fa21f3c65 100644 --- a/print/epson-inkjet-printer-escpr/files/patch-src_filter.c +++ b/print/epson-inkjet-printer-escpr/files/patch-src_filter.c @@ -1,103 +1,130 @@ ---- src/filter.c.orig 2019-07-31 06:49:48 UTC +--- src/filter.c.orig 2020-10-12 02:31:41 UTC +++ src/filter.c @@ -32,7 +32,10 @@ #include "epson-protocol.h" #include "epson-escpr-api.h" +#include "epson-escpr-api-private.h" +#include "epson-escpr-services.h" #include "epson-escpr-mem.h" +#include "epson-escpage.h" #include "err.h" #include "mem.h" @@ -41,6 +44,7 @@ #include "libprtX.h" #include "optBase.h" #include "linux_cmn.h" +#include "xfifo.h" #define WIDTH_BYTES(bits) (((bits) + 31) / 32 * 4) +@@ -225,7 +229,7 @@ main (int argc, char *argv[]) + EPS_BANDBMP bandBmp; + + /* Fifo for Backend */ +-// context = (void*)XFIFOOpen(); ++ context = (void*)XFIFOOpen(); + + /////////////////////////////////////////////////////////////////////////////////////////////////////////// + memset (&jobAttr, 0, sizeof(jobAttr)); @@ -380,7 +384,7 @@ main (int argc, char *argv[]) } printJob.jobStatus = EPS_STATUS_ESTABLISHED; - int printHeight = 0; + EPS_UINT32 printHeight = 0; /////////////////////////////////////////////////////////////////////////////////////////////////////////// print_area_x = printJob.printableAreaWidth; @@ -409,7 +413,7 @@ main (int argc, char *argv[]) while ((read_page_no = read (STDIN_FILENO, &page_num, 1)) > 0) // 最初に page番号を読み込み { long x_count, y_count; - int band_line_count; + EPS_UINT32 band_line_count; y_count = 0; band_line_count = 0; @@ -497,7 +501,11 @@ main (int argc, char *argv[]) pagebuf+= bandBmp.widthBytes; posbuf+=bandBmp.widthBytes; + if (band_line_count > printHeight) { band_line_count -= printHeight; + } else { + band_line_count = 0; + } bandBmp.bits += band_line_count; } @@ -508,13 +516,17 @@ main (int argc, char *argv[]) memcpy(pagebuf, bandBmp.bits, bandBmp.widthBytes); pagebuf+= bandBmp.widthBytes; posbuf+= bandBmp.widthBytes; + if (band_line_count > printHeight) { band_line_count -= printHeight; + } else { + band_line_count = 0; + } bandBmp.bits += band_line_count; } int revert = 0; int pos = posbuf - bandBmp.widthBytes ; - char *rever_buf = malloc(bandBmp.widthBytes + 1000); + EPS_UINT8 *rever_buf = (EPS_UINT8 *)malloc(bandBmp.widthBytes + 1000); for (revert = print_area_y; revert > 0; revert--) { if (3 != byte_par_pixel) @@ -658,7 +670,11 @@ main (int argc, char *argv[]) #endif debug_msg("printHeight = %d\n", printHeight); debug_msg("widthByte = %d\n", bandBmp.widthBytes); + if (band_line_count > printHeight) { band_line_count -= printHeight; + } else { + band_line_count = 0; + } bandBmp.bits += band_line_count; } @@ -680,7 +696,11 @@ main (int argc, char *argv[]) fprintf(fp, "\n"); fclose(fp); #endif + if (band_line_count > printHeight) { band_line_count -= printHeight; + } else { + band_line_count = 0; + } bandBmp.bits += band_line_count; } +@@ -710,7 +730,7 @@ quit:; + mem_free(paper); + debug_msg("PRINT SUCCESS\n"); + +-// XFIFOClose(&context); ++ XFIFOClose(&context); + + return 0; + } +@@ -871,7 +891,7 @@ static int getMediaTypeID(char *rsc_name) + + EPS_INT32 print_spool_fnc(void* hParam, const EPS_UINT8* pBuf, EPS_UINT32 cbBuf) + { +-#if 1 ++#if 0 + long int i; + for (i = 0; i < cbBuf; i++) + putc(*(pBuf + i), outfp); @@ -879,7 +899,7 @@ EPS_INT32 print_spool_fnc(void* hParam, const EPS_UINT // fwrite (pBuf, cbBuf, 1, outfp); -- XFIFOWrite(context, pBuf, cbBuf); +-// XFIFOWrite(context, pBuf, cbBuf); + XFIFOWrite(context, (char *)pBuf, cbBuf); return 1; } diff --git a/print/epson-inkjet-printer-escpr/files/pkg-message.in b/print/epson-inkjet-printer-escpr/files/pkg-message.in index a5a828058431..431799b8b964 100644 --- a/print/epson-inkjet-printer-escpr/files/pkg-message.in +++ b/print/epson-inkjet-printer-escpr/files/pkg-message.in @@ -1,24 +1,56 @@ [ { type: install message: <