wkhtmltopdf and wkhtmltoimage are powerful utilities to convert HTML to PDF
or an image file using a patched static build of Qt and the webkit rendering
engine.
A webpage can be downloaded directly from the web and rendered into a PDF
document or an image file (multiple formats are supported).
Features of the static version:
* Convert web pages into PDF documents (or images) using webkit
* Adding headers and footers
* TOC generation
* Batch mode conversions
* XServer is not required (however the X11 client libs must be installed)
For proper functionality you may need to install the following port(s):
x11-fonts/webfonts
all: drop support for expired FreeBSD 14.0
Simplify expressions for FreeBSD 13.X
Reviewed by: many
Differential Revision: https://reviews.freebsd.org/D46601
converters/wkhtmltopdf: do not force USE_GCC
- builds on all versions, run tests look ok as well
- moved deprecation date to end of 2024 for now
See latest comments in PR
PR: 269313
*/*: 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
converters/wkhtmltopdf: Always build with default GCC
- Building with the default GCC version (12) always works.
- GCC 13, soon to become the default GCC version, also works.
- It simplifies the port.
- The port will not build with llvm 16.
PR: 269313
Approved by: pi (maintainer)
converters/wkhtmltopdf: fix build on armv7
Import an old QT4 patch to fix the build.
Obtained from: b0d780b0342270fef8bd26b4ae301d18467f5d04
MFH: 2023Q4
converters/wkhtmltopdf: unbreak build
- remove "register" keyword usage from C++ files
This fixes breakage introduced in 95274bf4f99c71fc056013d966aec239161dfd74
PR: 273334
converters/wkhtmltopdf: Mark BROKEN on 14
- Fails to build with:
use of undeclared identifier 'needsToUnregister'
Have treid to build with llvm14 and llvm15 with the same result
- Mark DEPRECATED as upstream has abandoned the project. See for more
information:
https://wkhtmltopdf.org/status.html
- Consider print/py-weasyprint as a replacemnent
- Set EXPIRATION_DATE to 2024-06-30 expecting that we will have llvm16
on 13.3 and 13.3 will be released around mid of 2024
Approved by: portmgr (blanket)
Sponsored by: The FreeBSD Foundation
*/*: Fix build with llvm16 on 13.2-STABLE
As like as HEAD(14.0-RELEASE) llvm16 was merged in base for 13.2-STABLE
with the OSVERSION 1302507.
- Utilize USE_CXXSTD=c++14 or similar solution where applicable
- Update conditionals to addtionally check for OSVERSION greater than
1302507 and less than 1400000
Approved by: portmgr (blanket)
Sponsored by: The FreeBSD Foundation
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 )
converters: remove 'Created by' lines
A big Thank You to the original contributors of these ports:
* Aaron Dalton <aaron@FreeBSD.org>
* Akinori MUSHA aka knu <knu@idaemons.org>
* Alex Keda <admin@lissyara.su>
* Alex Semenyaka <alex@rinet.ru>
* Alexandr Kovalenko <never@nevermind.kiev.ua>
* Andreas Klemm <andreas@klemm.gtn.com>
* Andrey A. Chernov <ache@FreeBSD.org>
* Anton Berezin <tobez@FreeBSD.org>
* Blaz Zupan <blaz@amis.net>
* Brent J. Nordquist <bjn@visi.com>
* Carlos J. Puga Medina <cpm@fbsd.es>
(Only the first 15 lines of the commit message are shown above )
converters/wkhtmltopdf: future-proof compiler version check
During an exp-run for llvm 14 (see bug 261742), it turned out that
converters/wkhtmltopdf fails to build with clang 14:
c++ -Wl,-rpath=/usr/local/lib/gcc8 -Wl,-O1 -pthread -shared
-Wl,-soname,libwkhtmltox.so.0 -o libwkhtmltox.so.0.12.6 loadsettings.o logging.o
multipageloader.o tempfile.o converter.o websettings.o reflect.o utilities.o
pdfsettings.o pdfconverter.o outline.o tocstylesheet.o imagesettings.o
imageconverter.o pdf_c_bindings.o image_c_bindings.o moc_multipageloader_p.o
moc_converter_p.o moc_pdfconverter_p.o moc_imageconverter_p.o
moc_pdf_c_bindings_p.o moc_image_c_bindings_p.o moc_converter.o
moc_multipageloader.o moc_utilities.o moc_pdfconverter.o moc_imageconverter.o
qrc_wkhtmltopdf.o -L/usr/local/lib
-L/wrkdirs/usr/ports/converters/wkhtmltopdf/work/wkhtmltopdf-0.12.6/build/qt/lib
-L/wrkdirs/usr/ports/converters/wkhtmltopdf/work/wkhtmltopdf-0.12.6/build/qt/plugins/codecs
-lqcncodecs
-L/wrkdirs/usr/ports/converters/wkhtmltopdf/work/wkhtmltopdf-0.12.6/build/qt/lib
-L/usr/local/lib -lqjpcodecs -lqkrcodecs -lqtwcodecs -lQtWebKit -lQtSvg
-lQtXmlPatterns -lQtGui -ljpeg -lpng -lXrender -lfontconfig -lfreetype -lXext
-lX11 -lQtNetwork -lssl -lcrypto -lQtCore -lz -lm
ld: error: unable to find library -lQtWebKit
c++: error: linker command failed with exit code 1 (use -v to see invocation)
gmake[2]: *** [Makefile:164: ../../bin/libwkhtmltox.so.0.12.6] Error 1
Ultimately this is caused by incorrect compiler version detection in
wkhtmltopdf's configure script. Something similar was fixed for clang 12
in ports commit 1049d80399ac327964eca41e4188f988430c5f7c, and later for
clang 13 in ports commit ad5fedf36832fd7e2447d8c4cb6b54128a2fcb20.
To fix this, future-proof the compiler version check, at least until it
goes higher than 99.x.
PR: 262814
Approved by: pi (maintainer)
MFH: 2022Q1
converters/wkhtmltopdf: Fix build on aarch64.
QtWebkit module is not built on aarch64 if clang12 is not recognize.
Approved by: portmgr (build fix blanket)
converters/wkhtmltopdf: fix build on GCC architectures
Both GCC 4.2 and 9 can't build this port, but 8 can, so add GCC architectures to
the conditional.
Bump PORTREVISION for ports depending on the canonical version of GCC
as defined in Mk/bsd.default-versions.mk which has moved from GCC 8.3
to GCC 9.1 under most circumstances now after revision 507371.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, everything INDEX-11 shows with a dependency on lang/gcc9 now.
PR: 238330
converters/wkhtmltopdf: unbreak with openssl111
1) Building the port with openssl from ports leads to an error:
Error: /usr/local/bin/wkhtmltoimage is linked to
/usr/local/lib/libssl.so.9 from security/openssl
but it is not declared as a dependency
2) Building the port with openssl111 from ports does not fail any more.
The Patch fixes both issues.
PR: 236755
Submitted by: dinoex
Bump PORTREVISION for ports depending on the canonical version of GCC
defined via Mk/bsd.default-versions.mk which has moved from GCC 7.4 t
GCC 8.2 under most circumstances.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, as a double check, everything INDEX-11 showed depending on lang/gcc7.
PR: 231590
converters/wkhtmltopdf: fix build on powerpc64
- requires USES=compiler:c++11-lang to build on powerpc64
- It also requires changing values in mkspecs to point to proper compiler
PR: 231858
Submitted by: Piotr Kubaj <pkubaj@anongoth.pl>
Sponsored by: Hardware by IntegriCloud
converters/wkhtmltopdf: add run-dependency on x11-fonts/webfonts
- otherwise characters are rendered as small blocks
PR: 189424
Submitted by: Vick Khera <vivek@khera.org>
Add more information to stub error messages.
Remove BROKEN lines where IGNORE has already been set.
While here, pet portlint.
Approved by: portmgr (tier-2 blanket)
For ports that are marked BROKEN on armv6, and also fail to build on
armv7, mark them so.
This is part two of a multipart commit to bring armv7 ports to parity
with armv6.
Approved by: portmgr (tier-2 blanket)
Obtained from: lonesome.com -exp run
Update to 0.12.4
Also:
- strips binaries
- changes plist to alphabetical order
- adds a patch from 0.12.5-dev to support the use of client certificates
and private CAs (-ssl-key-password,--ssl-crt-path,--ssl-key-path),
see also https://github.com/wkhtmltopdf/wkhtmltopdf/pull/3206
PR: 217922
Approved by: mm (maintainer)
converters/wkhtmltopdf: unbreak with clang 4.0 (same as r431742)
src/3rdparty/webkit/Source/WebCore/html/HTMLImageElement.cpp:77:24: error:
ordered comparison between pointer and zero ('const int *' and 'int')
if (optionalHeight > 0)
~~~~~~~~~~~~~~ ^ ~
PR: 216211
Obtained from: upstream (excerpt)
Approved by: portmgr blanket
MASTER_SITES cleanup.
- Replace ${MASTER_SITE_FOO} with FOO.
- Merge MASTER_SITE_SUBDIR into MASTER_SITES when possible. (This means 99.9%
of the time.)
- Remove occurrences of MASTER_SITE_LOCAL when no subdirectory was present and
no hint of what it should be was present.
- Fix some logic.
- And generally, make things more simple and easy to understand.
While there, add magic values to the FESTIVAL, GENTOO, GIMP, GNUPG, QT and
SAMBA macros.
Also, replace some EXTRACT_SUFX occurences with USES=tar:*.
Checked by: make fetch-urlall-list
With hat: portmgr
Sponsored by: Absolight
converters/libiconv:
- Remove const qualifier from iconv(3) to match POSIX:
http://pubs.opengroup.org/onlinepubs/9699919799/functions/iconv.html
- Patch iconv.h to expose more GNU extensions when LIBICONV_PLUG is
defined because the base system iconv supports these extensions too.
Add/remove patches to/from ports to call iconv with non-const arguments.
This breaks some ports on FreeBSD 10 because base system iconv.h still has
the const qualifier. Fix this by letting USES=iconv add a build dependency
on converters/libiconv so ports can use its iconv.h (with LIBICONV_PLUG
defined) instead of the base system iconv.h.
This exposed some ports that link with libiconv when it is available instead
of using libc iconv. In these cases one of the following changes has been
(Only the first 15 lines of the commit message are shown above )
The FreeBSD x11@ and graphics team proudly presents
a zeising, kwm production, with help from dumbbell, bdrewery:
NEW XORG ON FREEBSD 9-STABLE AND 10-STABLE
This update switches over to use the new xorg stack by default on FreeBSD 9
and 10 stable, on osversions where vt(9) is available.
It is still possible to use the old stack by specifying WITHOUT_NEW_XORG in
/etc/make.conf .
FreeBSD 8-STABLE and released versions of FreeBSD still use
the old version.
A package repository with binary packages for new xorg will
be available soon.
This patch also contains updates of libxcb and related ports, pixman, as well
(Only the first 15 lines of the commit message are shown above )
Update to libmpc version 1.0.1 which brings the following fixes:
- Switched to automake 1.11.6, see CVE-2012-3386.
- #14669: Fixed extraction of CC from gmp.h.
- Fixed case of intermediate zero real or imaginary part in mpc_fma,
found by hydra with GMP_CHECK_RANDOMIZE=1346362345.
This is on top of the following changes from version 1.0
- Licence change towards LGPLv3+ for the code and GFDLv1.3+ (with no
invariant sections) for the documentation.
- 100% of all lines are covered by tests
- Renamed functions
. mpc_mul_2exp to mpc_mul_2ui
. mpc_div_2exp to mpc_div_2ui
(Only the first 15 lines of the commit message are shown above )
Simple shell utility to convert html to pdf using a custom static build
of qt and the webkit rendering engine.
Features of the static version:
* Convert web pages into PDF documents using webkit
* Adding headers and footers
* TOC generation
* Batch mode conversions
* XServer is not required (however the X11 client libs must be installed)
WWW: http://code.google.com/p/wkhtmltopdf/