pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

dillo-devel: Update to 3.1



Module Name:	pkgsrc-wip
Committed By:	Michael Baeuerle <micha%NetBSD.org@localhost>
Pushed By:	micha
Date:		Mon May 6 16:46:37 2024 +0200
Changeset:	2275913451157e3374a0588d22efd024dc318190

Modified Files:
	dillo-devel/DESCR
	dillo-devel/Makefile
	dillo-devel/PLIST
	dillo-devel/README
	dillo-devel/distinfo
	dillo-devel/options.mk
	dillo-devel/patches/patch-configure.ac
Added Files:
	dillo-devel/COMMIT_MSG
	dillo-devel/patches/patch-dillo-install-hyphenation
	dillo-devel/patches/patch-doc_Makefile.am
Removed Files:
	dillo-devel/patches/patch-dpi_https.c

Log Message:
dillo-devel: Update to 3.1

- Switch to Github and update homepage
  The host dillo.org is no longer under control of Dillo developers.
- Use option "tls" instead of "ssl" for TLS support
- Add pkgsrc patch for hyphenation install script
- Add pkgsrc patch for build of HTML documentation

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=2275913451157e3374a0588d22efd024dc318190

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 dillo-devel/COMMIT_MSG                             | 90 ++++++++++++++++++++++
 dillo-devel/DESCR                                  | 13 +++-
 dillo-devel/Makefile                               | 32 ++++----
 dillo-devel/PLIST                                  | 18 +----
 dillo-devel/README                                 |  3 +-
 dillo-devel/distinfo                               | 11 +--
 dillo-devel/options.mk                             | 26 ++++---
 dillo-devel/patches/patch-configure.ac             | 23 +++---
 .../patches/patch-dillo-install-hyphenation        | 15 ++++
 dillo-devel/patches/patch-doc_Makefile.am          | 19 +++++
 dillo-devel/patches/patch-dpi_https.c              | 18 -----
 11 files changed, 191 insertions(+), 77 deletions(-)

diffs:
diff --git a/dillo-devel/COMMIT_MSG b/dillo-devel/COMMIT_MSG
new file mode 100644
index 0000000000..8f6db36cce
--- /dev/null
+++ b/dillo-devel/COMMIT_MSG
@@ -0,0 +1,90 @@
+www/dillo: Update to 3.1
+
+- Switch to Github and update homepage
+  The host dillo.org is no longer under control of Dillo developers.
+- Use option "tls" instead of "ssl" for TLS support
+- Add pkgsrc patch for hyphenation install script
+- Add pkgsrc patch for build of HTML documentation
+
+
+Summary
+=======
+
+This release contains a lot of changes accumulated from the 2015-2017 period,
+as well as fixes and small features introduced in 2024. Here is a summary:
+
+* Add support for floating HTML elements, which involved a big redesign.
+* Add support for OpenSSL, LibreSSL and mbed TLS for HTTPS.
+* Add a CI pipeline to build Dillo on Ubuntu, MacOS, FreeBSD and Windows
+  (via cygwin).
+* Add automatic HTML rendering tests.
+* Improve and extend the Dillo manual.
+
+In memory of Sebastian Geerken.
+
+
+Detailed changes
+================
+
+* Patches by Sebastian Geerken:
+  Floating elements.
+  Redesign of widget sizes ("GROWS").
+  Applied CSS attribute 'width' to all elements, 'height' is now also
+    supported.
+  Suport for 'min-width', 'max-width', 'min-height' and 'max-height'.
+  Suport for 'display: inline-block'.
+  <BUTTON>'s are now inline.
+  Image aspect ratio is preserved when one dimension is specified by a
+    percentage value.
+  New dillorc options 'adjust_min_width' and 'adjust_table_min_width'.
+  Make building of test/ files more robust.
+  Work on collapsing spaces: more cases supported.
+  Fix crash that's possible searching for text while page still being built.
+* Patches by corvid:
+  HTML5 character references.
+  Give images lower priority when requesting resources (responsiveness).
+  Reuse of connections for HTTP (disable w/ http_persistent_conns in dillorc).
+  Abort failed queries.
+  HTTP Strict Transport Security (disable with http_strict_transport_security
+    preference in dillorc).
+  Fix bug when closing popup using window manager (bug introduced in 3.0.3).
+  Block mixed content.
+  Improve cookies date recognition.
+  Use Mbed TLS
+  Iterate through the IP addrs for a host when trying to connect().
+* Patches by Jeremy Henty:
+  Doxygen fixes.
+* Patches by corvid and Benjamin Johnson
+  Move HTTPS from dpi into the browser, enable SNI, check more locations for
+    CA bundles and add --with-ca-certs-file and --with-ca-certs-dir to
+    configure, some improvement to security warning popups, etc.
+* Patches by Johannes Hofmann
+  Fix bookmarks DPI crash.
+  Fix OSX compilation issue with xembed.
+* Patches by Rodrigo Arias Mallo <rodarima%gmail.com@localhost>
+  Fix DuckDuckGo search links
+  Add scroll_step option to control the mouse wheel vertical step
+  Add support for OpenSSL 1.1, OpenSSL 3, mbedTLS 2 and mbedTLS 3
+  Replace configure flag --enable-ssl to --enable-tls
+  Enable TLS support by default for https.
+  Add automatic rendering tests (only enabled with --enable-html-tests).
+  Fix width calculation when using 'min-width' and 'max-width'.
+  Update website URL to https://dillo-browser.github.io/
+  Add ui_tab_height option to control the tab height. Default value increased
+    from 16 to 20 pixels to improve usability.
+  Switch tabs using the mouse wheel by default. Use the new option
+    scroll_switches_tabs to disable the behavior.
+  Fix OpenSSL handling of unexpected EOF without close notify alert.
+  Expand home tilde '~' in the file plugin.
+  Ignore width attribute with relative values for td and th elements.
+  Enable Doxygen for C files and use Awesome Doxygen theme.
+  Fix DPIs extension (.dpi.exe) in Windows systems via Cygwin.
+  Add support for the <main> HTML tag.
+  Fix W3C validator and remove broken WDG validator.
+  Simplify bookmark DPI page style and improve readability.
+  Improve the Dillo manual available from the help button.
+  Improve detection of XHTML documents.
+  Install desktop file with Dillo icon.
+  Add version in user manual and about:splash.
+* Patches by Mark Walker:
+  Add http_force_https mode.
diff --git a/dillo-devel/DESCR b/dillo-devel/DESCR
index a9adb3a924..6c73753853 100644
--- a/dillo-devel/DESCR
+++ b/dillo-devel/DESCR
@@ -1 +1,12 @@
-A very small and fast graphical web browser using FLTK 1.4.
+Dillo is a web browser designed to be fast, use few resources and
+support slow and unreliable networks on resource-constrained machines.
+It can load local and remote files via HTTP, HTTPS and FTP.
+Other protocols like Gemini, Gopher, IPFS and others are available as
+plugins.
+
+Dillo supports a subset of HTML 4.01 and CSS 2.1 but it doesn't support
+JavaScript and only implements some elements of HTML 5 and CSS 3.
+It also renders plain text documents and images in PNG, JPG and GIF
+formats.
+
+This package is for FLTK 1.4 (not released yet).
diff --git a/dillo-devel/Makefile b/dillo-devel/Makefile
index c85ae011a0..7ea8d3203f 100644
--- a/dillo-devel/Makefile
+++ b/dillo-devel/Makefile
@@ -1,22 +1,29 @@
 # $NetBSD$
 
-DISTNAME=	dillo-3.0.5
-PKGREVISION=	4
+DISTNAME=	dillo-3.1.0
 CATEGORIES=	www
-MASTER_SITES=	https://www.dillo.org/download/
-EXTRACT_SUFX=	.tar.bz2
+
+MASTER_SITES=	${MASTER_SITE_GITHUB:=dillo-browser/}
+GITHUB_TAG=	v${PKGVERSION_NOREV}
 
 MAINTAINER=	micha%NetBSD.org@localhost
-HOMEPAGE=	https://www.dillo.org/
+HOMEPAGE=	https://dillo-browser.github.io/
 COMMENT=	Very small and fast graphical web-browser
 LICENSE=	gnu-gpl-v3
 
-USE_LANGUAGES=		c c++
+USE_LANGUAGES=	c c++
+
+USE_TOOLS+=	autoconf automake autoreconf perl:run
+USE_FEATURES+=	snprintf vsnprintf
+
+DEPENDS+=	wget-[0-9]*:../../net/wget
+
+REPLACE_PERL+=	dillo-install-hyphenation
+
 GNU_CONFIGURE=		yes
 CONFIGURE_ARGS+=	--sysconfdir=${PKG_SYSCONFBASEDIR}
-
-REPLACE_PERL+=	dpid/dpidc dillo-install-hyphenation
-USE_TOOLS+=	autoconf perl:run wget:run
+CONFIGURE_ARGS+=	--disable-xembed
+CONFIGURE_ARGS+=	--enable-cookies
 
 PKG_SYSCONFSUBDIR=	dillo
 EGDIR=			${PREFIX}/share/examples/dillo
@@ -34,15 +41,12 @@ LIBS.SunOS+=	-liconv
 .include "options.mk"
 
 pre-configure:
-	cd ${WRKSRC} && autoconf
-
-post-install:
-	${INSTALL_DATA} ${WRKSRC}/doc/*.txt ${DESTDIR}${PREFIX}/share/doc/dillo
-	${INSTALL_DATA} ${WRKSRC}/doc/README ${DESTDIR}${PREFIX}/share/doc/dillo
+	cd ${WRKSRC} && autoreconf -fiv
 
 .include "../../converters/libiconv/buildlink3.mk"
 .include "../../devel/zlib/buildlink3.mk"
 .include "../../mk/jpeg.buildlink3.mk"
+.include "../../graphics/hicolor-icon-theme/buildlink3.mk"
 .include "../../graphics/png/buildlink3.mk"
 .include "../../wip/fltk14-devel/buildlink3.mk"
 .include "../../mk/pthread.buildlink3.mk"
diff --git a/dillo-devel/PLIST b/dillo-devel/PLIST
index 94486abb3c..eeb69bd329 100644
--- a/dillo-devel/PLIST
+++ b/dillo-devel/PLIST
@@ -10,24 +10,14 @@ lib/dillo/dpi/downloads/downloads.dpi
 lib/dillo/dpi/file/file.dpi
 lib/dillo/dpi/ftp/ftp.filter.dpi
 lib/dillo/dpi/hello/hello.filter.dpi
-lib/dillo/dpi/https/https.filter.dpi
 lib/dillo/dpi/vsource/vsource.filter.dpi
 man/man1/dillo.1
-share/doc/dillo/CCCwork.txt
-share/doc/dillo/Cache.txt
-share/doc/dillo/Cookies.txt
-share/doc/dillo/Dillo.txt
-share/doc/dillo/Dpid.txt
-share/doc/dillo/Dw.txt
-share/doc/dillo/HtmlParser.txt
-share/doc/dillo/IO.txt
-share/doc/dillo/Images.txt
-share/doc/dillo/Imgbuf.txt
-share/doc/dillo/NC_design.txt
-share/doc/dillo/README
-share/doc/dillo/Selection.txt
+share/applications/dillo.desktop
 share/doc/dillo/user_help.html
 share/examples/dillo/dillorc
 share/examples/dillo/domainrc
 share/examples/dillo/dpidrc
+share/examples/dillo/hsts_preload
 share/examples/dillo/keysrc
+share/icons/hicolor/128x128/apps/dillo.png
+share/icons/hicolor/48x48/apps/dillo.png
diff --git a/dillo-devel/README b/dillo-devel/README
index e92c73b0e8..dbe1e0ba68 100644
--- a/dillo-devel/README
+++ b/dillo-devel/README
@@ -1,3 +1,4 @@
-This package is based on www/dillo and patched to use wip/fltk14-devel.
+This package is patched to use wip/fltk14-devel.
+
 If FLTK 1.4 is compiled with the pango option, glyph substitution is supported
 on X11 platform.
diff --git a/dillo-devel/distinfo b/dillo-devel/distinfo
index b123609ea3..fa997f19bc 100644
--- a/dillo-devel/distinfo
+++ b/dillo-devel/distinfo
@@ -1,7 +1,8 @@
 $NetBSD$
 
-BLAKE2s (dillo-3.0.5.tar.bz2) = 7644d03e1ebf63ad7abcb1a1b629a112b34e5d82026631ccca1e6e13c4a3ef25
-SHA512 (dillo-3.0.5.tar.bz2) = d0e86f57e50da762debf592b6deb94de5ee58f84e0cae1159890262540a463aea8143d2b99c634021c1f273f91c2fe0918f30d72c3eaf91fdb541e741469b155
-Size (dillo-3.0.5.tar.bz2) = 734472 bytes
-SHA1 (patch-configure.ac) = 6c37d8aa1dbd1f6499cfa17dd57c487672e4abdf
-SHA1 (patch-dpi_https.c) = 1f95a8dfdc44a9ad6aa666cb880198708c6a5f1d
+BLAKE2s (dillo-3.1.0.tar.gz) = e15d9a6dafa97a6140047df208647e46675a8fa93f3eb287ff81b77fb150064f
+SHA512 (dillo-3.1.0.tar.gz) = c34995a9b7911458f962b1f7424a06a4b95ad8a3f01a3e84ecbf19fa6e6fd10992c5536712e4942ab45b2137e543e1d383751ffc50b58f95d4da9f5891d05c61
+Size (dillo-3.1.0.tar.gz) = 1514218 bytes
+SHA1 (patch-configure.ac) = 3a4f7a9ea5638704819b793b30e3688c141d87d9
+SHA1 (patch-dillo-install-hyphenation) = 27f3a481da421a691c4c39093f010c01abee2515
+SHA1 (patch-doc_Makefile.am) = ca7a9529aeafef944695347024d05adaac7ae2b7
diff --git a/dillo-devel/options.mk b/dillo-devel/options.mk
index e313112c2d..f7e8742c1a 100644
--- a/dillo-devel/options.mk
+++ b/dillo-devel/options.mk
@@ -1,26 +1,28 @@
 # $NetBSD$
 
 PKG_OPTIONS_VAR=	PKG_OPTIONS.dillo
-PKG_SUPPORTED_OPTIONS=	inet6 ssl
-PKG_SUGGESTED_OPTIONS=	inet6 ssl
+PKG_SUPPORTED_OPTIONS=	inet6 tls
+PKG_SUGGESTED_OPTIONS=	inet6 tls
 
 .include "../../mk/bsd.options.mk"
 
+# Support for IPv6 protocol
 .if !empty(PKG_OPTIONS:Minet6)
 CONFIGURE_ARGS+=	--enable-ipv6
+.else
+CONFIGURE_ARGS+=	--disable-ipv6
 .endif
 
-.if !empty(PKG_OPTIONS:Mssl)
-CONFIGURE_ARGS+=	--enable-ssl
+# Support for Transport Layer Security (TLS)
+.if !empty(PKG_OPTIONS:Mtls)
+CONFIGURE_ARGS+=	--enable-tls
+CONFIGURE_ARGS+=	--disable-mbedtls
+CONFIGURE_ARGS+=	--enable-openssl
+CONFIGURE_ARGS+=	--with-ca-certs-dir=${SSLCERTS}
 LIBS+=			-lssl
 .include "../../security/openssl/buildlink3.mk"
-
-SUBST_CLASSES+=		sslcerts
-SUBST_MESSAGE.sslcerts=	Fixing SSL certificate directory.
-SUBST_FILES.sslcerts=	dpi/https.c
-SUBST_STAGE.sslcerts=	post-extract
-SUBST_SED.sslcerts=	-e 's,"/etc/ssl/certs,"${SSLCERTS},'
-
 .else
-CONFIGURE_ARGS+=	--disable-ssl
+CONFIGURE_ARGS+=	--disable-tls
+CONFIGURE_ARGS+=	--disable-mbedtls
+CONFIGURE_ARGS+=	--disable-openssl
 .endif
diff --git a/dillo-devel/patches/patch-configure.ac b/dillo-devel/patches/patch-configure.ac
index e2bca586ec..df9c491063 100644
--- a/dillo-devel/patches/patch-configure.ac
+++ b/dillo-devel/patches/patch-configure.ac
@@ -1,11 +1,10 @@
 $NetBSD$
 
 Use FLTK 1.4 for glyph substitution on X11 platform.
-Modify detection for OpenSSL 1.1.
 
---- configure.ac.orig	2015-06-30 14:07:06.000000000 +0000
+--- configure.ac.orig	2024-05-04 19:53:29.000000000 +0000
 +++ configure.ac
-@@ -107,15 +107,15 @@ fi
+@@ -188,22 +188,22 @@ fi
  
  
  dnl -------------------------
@@ -14,9 +13,9 @@ Modify detection for OpenSSL 1.1.
  dnl -------------------------
  dnl
  dnl For debugging and to be user friendly
+ AC_PATH_PROG(FLTK_CONFIG,fltk-config)
 -AC_MSG_CHECKING([FLTK 1.3])
 +AC_MSG_CHECKING([FLTK 1.4])
- AC_PATH_PROG(FLTK_CONFIG,fltk-config)
  fltk_version="`$FLTK_CONFIG --version 2>/dev/null`"
  case $fltk_version in
 -  1.3.*) AC_MSG_RESULT(yes)
@@ -24,12 +23,12 @@ Modify detection for OpenSSL 1.1.
           LIBFLTK_CXXFLAGS=`$FLTK_CONFIG --cxxflags`
           LIBFLTK_CFLAGS=`$FLTK_CONFIG --cflags`
           LIBFLTK_LIBS=`$FLTK_CONFIG --ldflags`;;
-@@ -286,7 +286,7 @@ if test "x$enable_ssl" = "xyes"; then
- 
-   if test "x$ssl_ok" = "xyes"; then
-     old_libs="$LIBS"
--    AC_CHECK_LIB(ssl, SSL_library_init, ssl_ok=yes, ssl_ok=no, -lcrypto)
-+    AC_CHECK_LIB(ssl, OPENSSL_config, ssl_ok=yes, ssl_ok=no, -lcrypto)
-     LIBS="$old_libs"
-   fi
+   ?*)    AC_MSG_RESULT(no)
+-         AC_MSG_ERROR(FLTK 1.3 required; version found: $fltk_version);;
++         AC_MSG_ERROR(FLTK 1.4 required; version found: $fltk_version);;
+   *)     AC_MSG_RESULT(no)
+-         AC_MSG_ERROR(FLTK 1.3 required; fltk-config not found)
++         AC_MSG_ERROR(FLTK 1.4 required; fltk-config not found)
+ esac
  
+ dnl -----------------------------------
diff --git a/dillo-devel/patches/patch-dillo-install-hyphenation b/dillo-devel/patches/patch-dillo-install-hyphenation
new file mode 100644
index 0000000000..5793ea1ada
--- /dev/null
+++ b/dillo-devel/patches/patch-dillo-install-hyphenation
@@ -0,0 +1,15 @@
+$NetBSD$
+
+Unimplemented: POSIX::tmpnam():
+  use File::Temp instead at /usr/pkg/bin/dillo-install-hyphenation line 110.
+
+--- dillo-install-hyphenation.orig	2024-05-04 19:53:29.000000000 +0000
++++ dillo-install-hyphenation
+@@ -1,5 +1,6 @@
+ #!/usr/bin/env perl
+-use POSIX;
++#use POSIX;
++use File::Temp;
+ use File::Basename;
+ use Net::FTP;
+ use Getopt::Long;
diff --git a/dillo-devel/patches/patch-doc_Makefile.am b/dillo-devel/patches/patch-doc_Makefile.am
new file mode 100644
index 0000000000..830fa46dd0
--- /dev/null
+++ b/dillo-devel/patches/patch-doc_Makefile.am
@@ -0,0 +1,19 @@
+$NetBSD$
+
+Fix generation of documentation.
+
+--- doc/Makefile.am.orig	2024-05-04 19:53:29.000000000 +0000
++++ doc/Makefile.am
+@@ -7,10 +7,10 @@ EXTRA_DIST = \
+ 	user_help.in.html
+ 
+ dillo.1: $(srcdir)/dillo.1.in Makefile
+-	sed 's%/usr/local%${prefix}%g' < $(srcdir)/dillo.1.in > dillo.1
++	sed 's%/usr/local%${prefix}%g' < $(srcdir)/dillo.1.in > $@
+ 
+ # Use .in.html instead of .html.in so it is recognized as HTML.
+ user_help.html: $(srcdir)/user_help.in.html Makefile
+-	sed 's/__VERSION__/${VERSION}/g' $< > $@
++	sed 's/__VERSION__/${VERSION}/g' < $(srcdir)/user_help.in.html > $@
+ 
+ DISTCLEANFILES = dillo.1 user_help.html
diff --git a/dillo-devel/patches/patch-dpi_https.c b/dillo-devel/patches/patch-dpi_https.c
deleted file mode 100644
index 7016c6b3e9..0000000000
--- a/dillo-devel/patches/patch-dpi_https.c
+++ /dev/null
@@ -1,18 +0,0 @@
-$NetBSD$
-
-* Support OpenSSL 1.1.0
-
---- dpi/https.c.orig	2015-06-30 14:06:08.000000000 +0000
-+++ dpi/https.c
-@@ -476,7 +476,11 @@ static int handle_certificate_problem(SS
-       case X509_V_ERR_DEPTH_ZERO_SELF_SIGNED_CERT:
-          /*Either self signed and untrusted*/
-          /*Extract CN from certificate name information*/
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-          if ((cn = strstr(remote_cert->name, "/CN=")) == NULL) {
-+#else
-+         if ((cn = strstr(X509_get_subject_name(remote_cert), "/CN=")) == NULL) {
-+#endif
-             strcpy(buf, "(no CN given)");
-          } else {
-             char *cn_end;


Home | Main Index | Thread Index | Old Index