Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 5 Nov 2020 18:20:06 +0000 (UTC)
From:      "Tobias C. Berner" <tcberner@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r554147 - in head/www/epiphany: . files
Message-ID:  <202011051820.0A5IK6Pe055558@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: tcberner
Date: Thu Nov  5 18:20:05 2020
New Revision: 554147
URL: https://svnweb.freebsd.org/changeset/ports/554147

Log:
  www/epiphany: build error (no getrandom(2) on 11.x)
  
  Add alternate implementation for missing getrandom(2) on 11.x (v2)
  
  PR:		250128
  Submitted by:	John Hein <jcfyecrayz@liamekaens.com>

Added:
  head/www/epiphany/files/extra-patch-lib_ephy-sync-utils.c   (contents, props changed)
Modified:
  head/www/epiphany/Makefile

Modified: head/www/epiphany/Makefile
==============================================================================
--- head/www/epiphany/Makefile	Thu Nov  5 17:52:35 2020	(r554146)
+++ head/www/epiphany/Makefile	Thu Nov  5 18:20:05 2020	(r554147)
@@ -41,6 +41,7 @@ PORTSCOUT=	limitw:1,even
 USES=		compiler:c++11-lib cpe desktop-file-utils gettext gnome \
 		localbase:ldflags meson pkgconfig python:3.4+ shebangfix \
 		sqlite tar:xz xorg
+
 CPE_VENDOR=	gnome
 USE_GNOME=	cairo gnomedesktop3 intlhack libwnck3 libxml2 libxslt
 USE_XORG=	x11
@@ -55,4 +56,10 @@ SHEBANG_FILES=	post_install.py
 
 PLIST_SUB+=	EPHY_VERSION=${PORTVERSION:R}
 
-.include <bsd.port.mk>
+.include <bsd.port.pre.mk>
+
+.if ${OPSYS} == FreeBSD && ${OSVERSION} < 1200000
+EXTRA_PATCHES+=	${PATCHDIR}/extra-patch-lib_ephy-sync-utils.c
+.endif
+
+.include <bsd.port.post.mk>

Added: head/www/epiphany/files/extra-patch-lib_ephy-sync-utils.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/www/epiphany/files/extra-patch-lib_ephy-sync-utils.c	Thu Nov  5 18:20:05 2020	(r554147)
@@ -0,0 +1,27 @@
+11.x does not have getrandom(2) (or getentropy(3))
+
+--- lib/ephy-sync-utils.c.orig	2020-10-04 22:15:55 UTC
++++ lib/ephy-sync-utils.c
+@@ -24,6 +24,7 @@
+ #include "ephy-settings.h"
+ 
+ #include <errno.h>
++#include <fcntl.h>
+ #include <glib/gi18n.h>
+ #include <inttypes.h>
+ #include <json-glib/json-glib.h>
+@@ -189,7 +190,13 @@ ephy_sync_utils_generate_random_bytes (v
+   }
+ #else
+   do {
+-    ret = getrandom (out, num_bytes, 0);
++    int fd = open("/dev/urandom", O_RDONLY|O_CLOEXEC);
++    if (fd != -1) {
++      ret = read(fd, out, num_bytes);
++      (void)close(fd);
++    }
++    else
++      g_error ("Failed to open /dev/urandom to generate randomness: %s", g_strerror (errno));
+   } while (ret < (gssize)num_bytes && errno == EINTR);
+ 
+   if (ret != (gssize)num_bytes)



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202011051820.0A5IK6Pe055558>