Add a printer output option, providing a menu item to print
to file or hardcopy. Note: xpdf4 only supports printing to CUPS. PR: 222283
This commit is contained in:
parent
646336fb3f
commit
408fb4e129
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=450077
4 changed files with 66 additions and 5 deletions
|
@ -2,6 +2,7 @@
|
|||
|
||||
PORTNAME= xpdf
|
||||
PORTVERSION= 4.02
|
||||
PORTREVISION= 1
|
||||
CATEGORIES= graphics print
|
||||
MASTER_SITES= http://www.xpdfreader.com/dl/
|
||||
.if !defined(MASTERDIR)
|
||||
|
@ -26,7 +27,7 @@ USES= cmake:outsource localbase
|
|||
CMAKE_ARGS+= -DOPI_SUPPORT:BOOL=ON -DCMAKE_DISABLE_FIND_PACKAGE_Qt4:BOOL=ON \
|
||||
-DUSE_LCMS:BOOL=OFF -DSYSTEM_XPDFRC=${PREFIX}/etc/xpdfrc
|
||||
|
||||
OPTIONS_DEFINE= TYPE1 LIBPAPER GUI
|
||||
OPTIONS_DEFINE= TYPE1 LIBPAPER GUI PRINT
|
||||
OPTIONS_DEFAULT= TYPE1 GUI
|
||||
OPTIONS_SUB= yes
|
||||
|
||||
|
@ -43,6 +44,12 @@ GUI_DESC= QT5 interface
|
|||
GUI_CMAKE_ARGS+= -DNO_TEXT_SELECT:BOOL=OFF
|
||||
GUI_USE= QT5=buildtools_build,qmake_build,concurrent,core,gui,widgets,printsupport
|
||||
|
||||
PRINT_CMAKE_ON= -DXPDFWIDGET_PRINTING:BOOL=ON -DCUPS:BOOL=ON
|
||||
PRINT_CMAKE_OFF= -DXPDFWIDGET_PRINTING:BOOL=OFF -DCUPS:BOOL=OFF
|
||||
PRINT_DESC= Print support (CUPS dependency)
|
||||
PRINT_LDFLAGS= -L${LOCALBASE}/lib
|
||||
PRINT_LIB_DEPENDS= libcups.so:print/cups
|
||||
|
||||
post-install:
|
||||
@cd ${STAGEDIR}${PREFIX}; \
|
||||
${LN} -sf ../libexec/xpdf/xpdf bin/xpdf
|
||||
|
|
12
graphics/xpdf4/files/patch-aconf.h.in
Normal file
12
graphics/xpdf4/files/patch-aconf.h.in
Normal file
|
@ -0,0 +1,12 @@
|
|||
--- aconf.h.in.orig 2017-08-08 16:22:50.000000000 -0700
|
||||
+++ aconf.h.in 2017-09-17 20:40:48.183421000 -0700
|
||||
@@ -110,4 +110,9 @@
|
||||
*/
|
||||
#cmakedefine01 BUILDING_XPDFREADER
|
||||
|
||||
+/*
|
||||
+ * Defined when print option selected
|
||||
+ */
|
||||
+#cmakedefine01 XPDFWIDGET_PRINTING
|
||||
+
|
||||
#endif
|
|
@ -1,6 +1,6 @@
|
|||
--- cmake-config.txt.orig 2017-09-02 20:30:45 UTC
|
||||
+++ cmake-config.txt
|
||||
@@ -79,6 +79,7 @@ option(USE_EXCEPTIONS "use C++ exception
|
||||
--- cmake-config.txt.orig 2017-08-08 16:22:50.000000000 -0700
|
||||
+++ cmake-config.txt 2017-09-17 21:03:21.838497000 -0700
|
||||
@@ -79,6 +79,7 @@
|
||||
option(USE_FIXEDPOINT "use fixed point (instead of floating point) arithmetic" OFF)
|
||||
option(SPLASH_CMYK "include support for CMYK rasterization" OFF)
|
||||
option(SPLASH_DEVICEN "include support for DeviceN rasterization" OFF)
|
||||
|
@ -8,7 +8,29 @@
|
|||
if (SPLASH_DEVICEN)
|
||||
set(SPLASH_CMYK ON)
|
||||
endif ()
|
||||
@@ -278,10 +279,34 @@ else()
|
||||
@@ -235,9 +236,7 @@
|
||||
if (XPDFWIDGET_PRINTING)
|
||||
set(QT_INCLUDES "${Qt5Widgets_INCLUDE_DIRS} ${Qt5PrintSupport_INCLUDE_DIRS}")
|
||||
set(QT_DEFINITIONS "${Qt5Widgets_DEFINITIONS} ${Qt5PrintSupport_DEFINITIONS}")
|
||||
- if (APPLE)
|
||||
- set(QT_LIBRARIES Qt5::Widgets Qt5::PrintSupport "-framework ApplicationServices")
|
||||
- elseif (UNIX)
|
||||
+ if (CUPS)
|
||||
set(QT_LIBRARIES Qt5::Widgets Qt5::PrintSupport cups)
|
||||
else ()
|
||||
set(QT_LIBRARIES Qt5::Widgets Qt5::PrintSupport)
|
||||
@@ -248,9 +247,7 @@
|
||||
set(QT_LIBRARIES Qt5::Widgets)
|
||||
endif ()
|
||||
if (XPDFWIDGET_PRINTING)
|
||||
- if (APPLE)
|
||||
- set(EXTRA_QT_LIBRARIES "-framework ApplicationServices")
|
||||
- elseif (UNIX)
|
||||
+ if (CUPS)
|
||||
set(EXTRA_QT_LIBRARIES cups)
|
||||
else ()
|
||||
set(EXTRA_QT_LIBRARIES "")
|
||||
@@ -278,10 +275,34 @@
|
||||
endif()
|
||||
|
||||
#--- look for libpaper
|
||||
|
|
20
graphics/xpdf4/files/patch-xpdf-qt_XpdfWidgetPrint.cc
Normal file
20
graphics/xpdf4/files/patch-xpdf-qt_XpdfWidgetPrint.cc
Normal file
|
@ -0,0 +1,20 @@
|
|||
--- xpdf-qt/XpdfWidgetPrint.cc.orig 2017-08-08 16:22:50.000000000 -0700
|
||||
+++ xpdf-qt/XpdfWidgetPrint.cc 2017-09-17 21:42:14.242967000 -0700
|
||||
@@ -21,7 +21,7 @@
|
||||
#elif defined(__APPLE__)
|
||||
# include <CoreFoundation/CoreFoundation.h>
|
||||
# include <ApplicationServices/ApplicationServices.h>
|
||||
-#elif defined(__linux__)
|
||||
+#elif defined(__linux__) || defined(__FreeBSD_cc_version)
|
||||
# include "PSOutputDev.h"
|
||||
# include <cups/cups.h>
|
||||
#endif
|
||||
@@ -315,7 +315,7 @@
|
||||
// Linux
|
||||
//------------------------------------------------------------------------
|
||||
|
||||
-#elif defined(__linux__)
|
||||
+#elif defined(__linux__) || defined(__FreeBSD_cc_version)
|
||||
|
||||
static void fileOut(void *stream, const char *data, int len) {
|
||||
fwrite(data, 1, len, (FILE *)stream);
|
Loading…
Reference in a new issue