PDF Tools is, among other things, a replacement of Emacs's DocView for PDF
files. The key difference is that pages are not pre-rendered by
e.g. ghostscript and stored in the file-system, but rather created on-demand and
stored in memory. This rendering is performed by a special library named, for
whatever reason, poppler, running inside a server program. This program is
called epdfinfo and its job is to successively read requests from Emacs and
produce the proper results, i.e. the PNG image of a PDF page.
Actually, displaying PDF files is just one part of PDF Tools. Since poppler can
provide us with all kinds of information about a document and is also able to
modify it, there is a lot more we can do with it.
print/pdf-tools: Add pkgconf build dependency and fix configure env
The recent import of pkgconf into the FreeBSD base system temporarily
caused a print/pdf-tools build failure and exposed two issues with the
port. First, pkgconf should be a direct build dependency. Second,
${CONFIGURE_ENV} should be passed to ./configure so that
PKG_CONFIG_LIBDIR is set correctly regardless of the pkgconf
implementation in the environment.
Sponsored by: The FreeBSD Foundation
Emacs Lisp ports framework: Overhaul
This overhaul introduces four key changes to the elisp ports framework:
1. Remove support for packaged byte-compiled elisp.
The primary motivation is to remove a large number of flavor-specific
packages and to simplify the ports tree. As an example, supporting
byte-compiled elisp for devel/tablist required six packages, one for
each flavor of editors/emacs and editors/emacs-devel. With over 100
elisp ports and requests for new Emacs flavors, this was
unmanageable.
2. Install configuration to integrate with Emacs's native compilation
machinery, allowing elisp from ports to be compiled into the standard
(Only the first 15 lines of the commit message are shown above )
print/pdf-tools: Add lexical-binding cookie to pdf-tools-init.el
As of 9f25d46568b in upstream's master branch, Emacs emits a run-time
warning when lexical binding is unset. This serves as a reminder that
lexical binding is preferred.
Sponsored by: The FreeBSD Foundation
Chase major version update of editors/emacs-devel
Bump PORTREVISION of most USES=emacs ports after editors/emacs-devel
major version increased from 30 to 31.
Sponsored by: The FreeBSD Foundation
Chase editors/emacs update to 29.4
- Bump Emacs version in Mk/Uses/emacs.mk to update version-specific
paths
- Bump PORTREVISION of ports with USES=emacs. This is required for two
reasons. Emacs lisp files need to be byte compiled for the new Emacs
version, and files installed under, e.g., EMACS_VERSION_SITE_LISPDIR
need to be relocated.
Reviewed by: ashish, yasu
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D45705
Chase editors/emacs update
- Bump Emacs version in Mk/Uses/emacs.mk to update version-specific
paths
- Bump PORTREVISION of ports with USES=emacs. This is required for two
reasons. Emacs lisp files need to be byte compiled for the new Emacs
version, and files installed under, e.g., EMACS_VERSION_SITE_LISPDIR
need to be relocated.
Reviewed by: ashish
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D44492
*/*: Chase editors/emacs update
- Bump Emacs version in Mk/Uses/emacs.mk to update version-specific
paths
- Bump PORTREVISION of ports with USES=emacs. This is required for two
reasons. Emacs lisp files need to be byte compiled for the new Emacs
version, and files installed under, e.g., EMACS_VERSION_SITE_LISPDIR
need to be relocated.
Reviewed by: ashish
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D43615
*/*: Sunset 12.4-RELEASE/12-STABLE from ports tree
- Remove all references to defunct ARCH arm
- Remove all references to defunct ARCH sparc64
- Remove x11-drivers/xf86-video-sunffb which requires defunct sparc64
ARCH
- Remove sysutils/afbinit requires defunct sparc64 ARCH
- Remove all references to bktr driver
- Remove all references to defunct FreeBSD_12
- Remove all references to OSVERSION/OSREL corresponding to 12
- Remove conditionals in Mk/Uses/cabal.mk
- Remove sparc reference from Mk/Uses/qt-dist.mk
- Remove BROKEN_sparc64/NOT_FOR_ARCH=sparc64
- Remove BROKEN_FreeBSD_12* from:
- Remove OpenSSL patches from:
- Remove conditional flags for OSVERSION >= 1300000 to fixed flags.
Also move conditional flags for non sparc64/arm ARCH to fixed flags.
Reviewed by: brooks, jbeich, rene, salvadore
Differential Revision: https://reviews.freebsd.org/D42068
print/pdf-tools: Fix build after editors/emacs update to 29.1
PR: 273249
Reported by: Robert Cina <transitive@gmail.com>
Sponsored by: The FreeBSD Foundation
editors/emacs: Update to 29.1
* Update Canna patch to the one for Emacs 29.
* Add new options PGTK, SQLITE3, TREESITTER and WEBP. SQLITE3 and
TREESITTER are ON by default. PGTK and WEBP options are excluded
from nox flavor.
* CARGO option doesn't imply XFT but prevents it. It is caused as a
result of adding pure GTK support (PGTK option).
* OTK options doesn't imply XTF any more. It is also caused as a
result of adding pure GTK support.
* Update NATIVECOMP option so it specifies ahead-of-time compilation
via the configure argument.
* Remove "experimental" from NATIVECOMP_DESC.
* Add print/freetype2 and x11-fonts/fontconfig to CAIRO_LIB_DEPENDS
and GTK3_LIB_DEPENDS. Necessary to link emacs binary with shared
(Only the first 15 lines of the commit message are shown above )
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
print/pdf-tools: Update and fix build with devel_full flavor
The batch-update-autoloads function is no longer available in the master
branch, so use loaddefs-generate-batch for the devel_full flavor.
Sponsored by: The FreeBSD Foundation
Fix CONFLICTS entries of multiple ports
There have been lots of missing CONFLICTS_INSTALL entries, either
because conflicting ports were added without updating existing ports,
due to name changes of generated packages, due to mis-understanding
the format and semantics of the conflicts entries, or just due to
typoes in package names.
This patch is the result of a comparison of all files contained in
the official packages with each other. This comparison was based on
packages built with default options and may therefore have missed
further conflicts with optionally installed files.
Where possible, version numbers in conflicts entries have been
generalized, some times taking advantage of the fact that a port
(Only the first 15 lines of the commit message are shown above )
graphics/poppler: update to 21.12
Release 21.12.0:
core:
* Add API to add images
* CairoOutputDev: Fix de-duping of Flate images
* Fix crash on broken files when using non-default
ENABLE_ZLIB_UNCOMPRESS. Issue #393
* Minor code improvements
glib:
* Add API for validation of signatures
* Add API to read/save to file descriptor
utils:
* pdftohtml: Reduce sensitivity of duplicate detection. Issue #1117
build system:
* Increase C++ standard to 17
Exp-run by: antoine
PR: 260344
framework: Add new USES 'magick' for graphics/ImageMagick*
A new USES has been added to depend on ImageMagick.
USES=magick
adds a LIB_DEPENDS on graphics/ImageMagick${IMAGEMAGICK_DEFAULT}.
If a specific version is required, use for example
USES=magick:6 resp. USES=magick:7
If only a build, run or test is required, use for example
USES=magick:build resp. USES=magick:6,build,test
(Only the first 15 lines of the commit message are shown above )
graphics/poppler: update to 21.09
Release 21.09.0:
core:
* Splash: Massive speed improvement on files that use lots of
save/restore (q/Q) operators
* Correct decoding of signature properties Reason & Location when they
are Unicode
* Fix issues with malformed files
* MSVC build fixes
build system:
* Call cmake_minium_required() before project()
* Always append to CMAKE_{C,CXX}_FLAGS_${CMAKE_BUILD_TYPE}
* correctly forward user-provided flags to try_compile()
Exp-run by: antoine
PR: 258206
graphics/poppler: update to 21.08.0
Release 21.08.0:
core:
* Add API to allow addition and modification of outlines into a PDF
* Use additional samples to test for constant parts of an axial
gradient
* forms: Create fallback fonts for some well known font names
* Support reading the PDF Version from the Catalog
* Fix XRef::copy when there are modified objects
* Take into account that Date string may be in unicode
* JBIG2Stream: Fix regression in "Do not consider a size-0 to be an
error"
* Replace a local bubble sort implementation by std::sort
* Fix issues with malformed files
build system:
(Only the first 15 lines of the commit message are shown above )
graphics/poppler: update to 21.07.0
Release 21.07.0:
core:
* JBIG2Stream: Do not consider a size-0 to be an error. Issue #535
* PSOutputDev: fix off-by-one error for image masking in L1/L2 output.
Issue #1088
* CairoOutputDev: Fix memory leak on broken files
* Minor code improvements
build system:
* set C standard to 11 without extensions
Exp-run by: antoine
PR: 256981
graphics/poppler: update to 21.06.0
Release 21.06.0:
core:
* Fix rendering of some extended latin1 characters in annotations.
Issue #1070
* Support some not so well formed documents with password. Issue #1083
* Add API to get notified if the xref is reconstructed
* Add somewhat fancier left/right signature visual representation
* Fix crashes in malformed files
* Minor code improvements
qt6:
* Change some functions to return std::unique_ptr
qt5/qt6:
(Only the first 15 lines of the commit message are shown above )
graphics/poppler: update to 21.05.0
Release 21.05.0:
core:
* Fix crashes in malformed files
* Export SplashFont* symbols used by Scribus
* Minor code improvements
qt5/qt6:
* Make sure new signatures are always properly oriented
* Allow to pass the border width when signing
glib:
* Enhance find to support multi-line matching
utils:
* pdftoppm: Fix regression when using single scaleTo. Issue #1062
build system:
* Allow to disable building manual tests
PR: 255562
Exp-run by: antoine
graphics/poppler: update to 21.04.0
Release 21.04.0:
core:
* Hide symbols by default
* TextSelectionDumper: fix word order for RTL text
* Fix rendering of text in some files. Issue #1052
* Implement rendering of Masks of Image subtype. Issue #1058
* Forms: fix unclicking standalone form buttons. Issue #1034
glib:
* Expose more fields from MediaRendition in PopplerMedia
* Use stock glib macro to define boxed type
* Remove incorrecly used volatile from enum type registration code
(Only the first 15 lines of the commit message are shown above )
graphics/poppler: update to 21.03.0
Release 21.03.0:
core:
* Fix parsing text in some broken pdf files. Issue #1040
* Fix memory issue when using threads. Issue #1050
* TextSelectionDumper: Fix getText() for space after word
* Change signature of OutputDev:tilingPatternFill
* Make PDFDocBuilder return a std::unique_ptr
* Improve well formed check for shading functions
* Fix leak in case of fread failing
* Fix memory leak in broken file in JBIG2Stream::readGenericBitmap
* PSOutputDev: Fix stack overflow in broken files
glib:
(Only the first 15 lines of the commit message are shown above )
graphics/poppler: update to 21.02
Release 21.02.0:
core:
* GfxCal*ColorSpace: introduce Bradford transform for chromatic
adaptation
* Fix memory leak if saving the file fails
* Internal code improvements
* Fix various issues handling broken files
* Make checkedAdd work for long long in MSVC
qt5:
* Properly export NewSignatureData class
* Fix regression in QIODeviceOutStream + MSVC
qt6:
* Properly export NewSignatureData class
* Fix regression in QIODeviceOutStream + MSVC
utils:
* pdftohtml: Fix error() parameter type
PR: 253183
Exp-run by: antoine
graphics/poppler: update to 21.01.0
Release 21.01.0:
core:
* Faster routines for jpeg decoding
* Fix reading signatures in encrypted files
* Add white point correction when lcms is used
* JBIG2Stream: Fix byte counting
* Fix potential data loss if we try to fetch a non existing Ref after
modifying the document
* Specifically use DeviceGray instead of DefaultGray for softmasks
* Fix various issues handling broken files
utils:
* pdftocairo: Setmode binary for windows
* pdfsig: Add hability to digitally sign files
(Only the first 15 lines of the commit message are shown above )
graphics/poppler: update to 20.12.0
Changelog:
core:
* Draw better circles for circle annotations
* Fix annotation line width if no appearance stream or style are given
* Tweak rendering of highlight annotations
* Fix border rendering of some annotations
* Fix rendering of some files. Issue #976 Issue #567
* PSOutputDev: provide options to set the rasterization color space and
ICC profile
* PSOutputDev: for splashModeCMYK8 and language level >=2 activate
overprint emulation
* PSOutputDev: use the DeviceN8 bitmap for rasterization with
CMYK-output + overprint
* Use the font name without subset tag when querying for a system font
* Splash: Fix wrong x adjustment during clipping
* Splash: Fix blitImage in uncolored tiling patterns
(Only the first 15 lines of the commit message are shown above )
graphics/poppler: update to 20.11.0
Release 20.11.0:
core:
* More work on rendering of standalone Annot Widgets. Issue #806
* Fix crashes in embedded file handling on broken files. Issue #967
* Fix uninitialized memory read on broken files
* Save a bit of memory in Dict data
cpp:
* Fix crashes in embedded file handling on broken files. Issue #966
utils:
* pdftohtml: HTML and XML output includes font opacity.
(Only the first 15 lines of the commit message are shown above )
graphics/poppler: update to 20.10.0
Release 20.10.0:
core:
* Filter out repeated forms
* Implement EmbedStream::reset()
* CairoOutputDev: evict just font faces owned solely by cache.
* Splash: Rename Yd to Ydown, Xu to Xup, etc.
* Splash: fix crash in out-of-memory situation.
* Fix some undefined behaviour situation with forged files
PR: 250052
Exp-run by: antoine
graphics/poppler: update to 20.09.0
Release 20.09.0:
core:
* Compability fix for Forms
* Fix fetching of Objects failing in some cases
* Fix clearing date in Annot setModified/setDate
* TextSelectionPainter: support glyphless fonts
* Splash: Don't try read past end of image
* avoid abort() on large memory allocation
* Fix memory leak on broken files
* Fix potential invalid memory read
* Small code improvements
qt5:
(Only the first 15 lines of the commit message are shown above )
editors/emacs: Update to version 27.1
Please refer to the 20200811 UPDATING entry when upgrading
dependent (*-emacs26-*) ports.
Port changes:
- depend on math/gmp
- match upstream by turning CAIRO, HARFBUZZ, and JSON options and on and
turning MAGICK off by default
- remove OPENMP check for graphics/ImageMagick as the openmp is now
included in base
- update EMACS_VER in Mk/Uses/emacs.mk
- bump USES=emacs ports or remove BROKEN for net-im/jabber.el and
deskutils/howm, which now build
Submitted by: HIROSE Yuuji <yuuji@gentei.org> (canna patch)
Reviewed by: ashish
Differential Revision: https://reviews.freebsd.org/D23966
graphics/poppler: update to 0.90
Release 0.90.0:
core:
* Color profile tweaks
* Small signature improvements
* BBoxOutputDev: Fix calculation when type3 fonts are involved
* Fix potential crash when reading Forms
* Fix infinite loop in broken file
glib:
* Fix adding annots in rotated pages
* Add ability to reset forms
* Several fixes to the documentation
qt5:
* Make it clear we require Qt 5.5
(Only the first 15 lines of the commit message are shown above )
graphics/poppler: update to 0.89.0
Release 0.89.0:
core:
* Add support for ResetForm action. Issue #225
* Fix crash in PDFDoc::getSignatureFields when there's no Forms at all
* Fix exporting to PS of some files with CID fonts
* Use ICC profiles in PS output (if new enough lcms is used)
* Allow almost-singular tiling pattern matrices. Issue #894
* Fix memory leak when failing to load some fonts
* CairoOutputDev: Use stroke opacity when clipping to a stroke path
* CairoOutputDev: Fix tiling patterns when pattern cell is too far.
Issue #190
glib:
* Add poppler_movie_get_aspect
cpp:
* Add the font infos to the text_box object
Exp-run by: antoine
PR: 246848
graphics/poppler: update to 0.88.0
Release 0.88.0:
core:
* Support Widget Annotation Buttons not linked to any Form
* SplashOuputDev: Use stroking opacity when clipping to a stroke path
* Handle 1 bit RGB images in ICC colorspace
* Internal code improvements
qt5:
* Add Document::signatures. Returns signatures not attached to any page
* ArthurOutputDev: Fix font hinting
* ArthurOutputDev: Set the opacity when filling with axial gradients
* ArthurOutputDev: Implement the clipToStrokePath method
(Only the first 15 lines of the commit message are shown above )
print/pdf-tools: Update and depend on graphics/ImageMagick7
editors/emacs switched to depend on graphics/ImageMagick7 in r533098. That
caused fallout when building print/pdf-tools, because graphics/ImageMagick6
and graphics/ImageMagick7 conflict. Switch this port to the newer
ImageMagick to fix the conflict.
graphics/poppler: update to 0.87.0
Release 0.87.0:
core:
* Fix crashes due to inconsistent vtables for Clang builds
* Fix leak in broken files
* Internal code improvements
qt5:
* Add option to get form choice for export value
* ArthurOutputDev: Avoid division by zero in updateLineDash. Issue #695
glib:
* Internal code improvements
utils:
* pdftohtml: Fix memory leak in HtmlOutputDev::getLinkDest
PR: 245150
Exp-run by: antoine
Unmark certain ports as broken on powerpc64 elfv2, after a trybroken run.
(Note that these have not yet been re-tested on elfv1.)
While here, pet portlint (e.g. location of BROKEN_*, and, in one case,
USES).
Approved by: portmgr (tier-2 blanket)
graphics/poppler: update to 0.84.0
Release 0.84.0:
core:
* Fix crash when converting from Unicode to ASCII-7
* Splash::scaleImageYdXu: Protect against crash if srcWidth is too big
* JBIG2Stream: fix potential crash in malformed documents
* JBIG2Stream: fix leak in reset() if called several times
* Internal code improvements
utils:
* pdfimages: Add error message if first page is larger then number of
pages.
* pdfinfo: Improved paper size recognition
* pdfsig: Fix exit code when dumping signatures
* pdftocairo: Error out when even/odd selects 0 pages
(Only the first 15 lines of the commit message are shown above )
editors/emacs-devel: Update to latest master branch commit, 4f2b415
This update includes an Emacs major version change from 27.0.50 to 28.0.50.
Ports that may depend on editors/emacs-devel must chase this update
with a PORTREVISION bump.
Submitted by: ashish (maintainer)
Differential Revision: https://reviews.freebsd.org/D23012
graphics/poppler: update to 0.82.0
Release 0.82.0:
core:
* Fix not being able to open some files. Issue #832
* Fix crashes in malformed files
* Fix memory leak on broken files
* Minor performance improvements
* Minor code improvements
glib:
* Add poppler_document_new_from_bytes
* PopplerAttachment: Silence deprecation warnings for ctime/mtime
build system:
* pdf-inspector: Support builddir != srcdir
* Install Cairo* headers if Cairo has been found
Thanks to adridg@ for fixing all the fallout.
Exp-run by: antoine
PR: 241532
Approved by: gnome (kwm, implicit)
graphics/poppler: update to 0.80.0
Release 0.80.0:
core:
* Annotations: Implement support for setting a different text in the appearance
stream than the real text
* Splash: Optionally use small_vector from boost
* Fix memory leaks on broken files
* Fix abort on broken files
* Small code simplifications
* Remove USE_FIXEDPOINT support. Issue #821
qt5:
* Fix MSVC build
* Add subsitute-font information
* Fix since marker of some functions
(Only the first 15 lines of the commit message are shown above )
graphics/poppler: update to 0.79.0
Release 0.79.0:
core:
* Fix regression on TextSelectionPainter
* Fix parsing of DefaultAppearance
* Fix memory leak in PostScriptFunction
* Fix crashes in fuzzed files
qt5:
* Implemented support for setIcon by changing appearance
* Added option to set the form available to print
* QString::null is deprecated, use QString()
* Replace deprecated qStableSort with std::stable_sort
build system:
* Turn README into README.md and expand it
PR: 239277
Exp-run by: antoine
Approved by: gnome (kwm, implicit)
graphics/poppler: update to 0.78.0
Release 0.78.0:
core:
* Fix line annotation arrows for usage in dimensioning
* Handle Ink annots without an InkList but with an AP
* Fix typos preventing parsing of Movie start and duration
* Fix crash on malformed files
glib:
* Add poppler_document_create_dests_tree()
* Don't use the deprecated g_type_class_add_private()
* Document the differences between render() and render_for_printing()
* Fix introspection for poppler_document_new_from_data
* Don't create PopplerInputStream with length 0. Issue #414
(Only the first 15 lines of the commit message are shown above )
graphics/poppler: update to 0.76.1
From Changelog at https://poppler.freedesktop.org/releases.html :
Release 0.76.1:
core:
* Make the mul tables be calculated at compile time with constexpr.
* splash: Fix compile with SPLASH_CMYK enabled
* Some typo fixing in error messages
qt5:
* Fix regression in annotation handling
build system:
* Fix some typos in build system output and comments
(Only the first 15 lines of the commit message are shown above )
graphics/poppler: update to 0.75
Release 0.75.0:
core:
* Fix rendering of some annotations
* Fix crashes in broken files
* Small internal code improvements
cpp:
* Improve documentation
* tests: Add showing version information to poppler-dump
utils:
* pdfattach: new util
* pdftohtml: add -dataurls parameter
* pdftoppm: add -sep and -forcenum parameters
* pdftohtml: make singleHtml and stout not mutually exclusive
* pdfsig: fix use after free
- bump revisions of dependent ports due to shlib version change
PR: 236791
Exp-run by: antoine
Approved by: kwm (gnome)
Bump revisions after poppler upgrade.
As reported libreoffice requires a bump in revision, to be on the save
side, bump all the consumers of poppler.
Reported by: Walter Schwarzenfeld <w.schwarzenfeld@utanet.at>
Update poppler to 0.72
This update brings many changes
- the build system has switched to cmake
- some ports needed to be switched to use their bundled
version of poppler:
- print/tex-luatex (r487226)
- print/tex-xetex (r487226)
- editors/opeonffice-devel
- Qt4 support has been dropped
- print/frescobaldi has been removed for this reason.
- most of the added patches can be removed with the next
upgrade of the concerning port.
PR: 233452
Exp-run by: antoine
Approved by: gnome (kwm)
Differential Revision: https://reviews.freebsd.org/D17456