aboutsummaryrefslogtreecommitdiff
path: root/graphics/gegl
diff options
context:
space:
mode:
authorKoop Mast <kwm@FreeBSD.org>2019-07-10 16:52:07 +0000
committerKoop Mast <kwm@FreeBSD.org>2019-07-10 16:52:07 +0000
commitdfecceff5421a44afd1d45a329d05632e7168526 (patch)
treeb50c22327982ef8114e80b34850d6ea6444d50bb /graphics/gegl
parentee48726df4ec036d4ce6c241237ce53bf8f8bb74 (diff)
downloadports-dfecceff5421a44afd1d45a329d05632e7168526.tar.gz
ports-dfecceff5421a44afd1d45a329d05632e7168526.zip
Notes
Diffstat (limited to 'graphics/gegl')
-rw-r--r--graphics/gegl/Makefile12
-rw-r--r--graphics/gegl/distinfo6
-rw-r--r--graphics/gegl/files/patch-08084a633
-rw-r--r--graphics/gegl/files/patch-a6bcf4875
4 files changed, 115 insertions, 11 deletions
diff --git a/graphics/gegl/Makefile b/graphics/gegl/Makefile
index c72a3f4adb01..2ea4d69afed3 100644
--- a/graphics/gegl/Makefile
+++ b/graphics/gegl/Makefile
@@ -2,8 +2,7 @@
# $FreeBSD$
PORTNAME= gegl
-PORTVERSION= 0.4.14
-PORTREVISION= 2
+PORTVERSION= 0.4.16
CATEGORIES= graphics
MASTER_SITES= GIMP
@@ -30,7 +29,7 @@ CONFIGURE_ARGS= --without-vala --disable-docs
CONFIGURE_ARGS+=--without-mrg --without-lensfun
INSTALL_TARGET= install-strip
-GEGL_MINOR= 414
+GEGL_MINOR= 416
GEGL_VER= 0.4
PLIST_SUB+= GEGL_MINOR="${GEGL_MINOR}" GEGL_VER=${GEGL_VER}
@@ -45,10 +44,10 @@ UNIQUE_SUFFIX= -${GEGL_VER}
UNIQUE_SUFFIX_FILES= bin/gcut
OPTIONS_SUB= yes
-OPTIONS_DEFINE= CAIRO ENSCRIPT EXIV2 FFMPEG PIXBUF GRAPHVIZ JASPER \
+OPTIONS_DEFINE= CAIRO ENSCRIPT FFMPEG PIXBUF GRAPHVIZ JASPER \
LUA OPENEXR RAW PANGO POPPLER LIBRSVG2 SDL SPIRO V4L \
EXAMPLES LCMS2 WEBP TIFF GEXIV2
-OPTIONS_DEFAULT=CAIRO ENSCRIPT EXIV2 PIXBUF GRAPHVIZ JASPER LCMS2 LUA \
+OPTIONS_DEFAULT=CAIRO ENSCRIPT GEXIV2 PIXBUF GRAPHVIZ JASPER LCMS2 LUA \
OPENEXR RAW PANGO POPPLER LIBRSVG2 SDL SPIRO V4L WEBP TIFF
ENSCRIPT_DESC= Enscript support
@@ -116,9 +115,6 @@ WEBP_CONFIGURE_WITH= webp
#UMFPACK_CONFIGURE_WITH= umfpack
CONFIGURE_ARGS+= --without-umfpack
-EXIV2_LIB_DEPENDS= libexiv2.so:graphics/exiv2
-EXIV2_CONFIGURE_WITH= exiv2
-
GEXIV2_LIB_DEPENDS= libgexiv2.so:graphics/gexiv2
GEXIV2_CONFIGURE_WITH= gexiv2
diff --git a/graphics/gegl/distinfo b/graphics/gegl/distinfo
index de2375732cfa..cb8c2023c61a 100644
--- a/graphics/gegl/distinfo
+++ b/graphics/gegl/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1555532285
-SHA256 (gegl-0.4.14.tar.bz2) = 4c01d58599d8ddb3714effd2675ea1863272cf2d7d9ed3d32aee80c89f859901
-SIZE (gegl-0.4.14.tar.bz2) = 7209142
+TIMESTAMP = 1562677461
+SHA256 (gegl-0.4.16.tar.bz2) = 0112df690301d9eb993cc48965fc71b7751c9021a4f4ee08fcae366c326b5e5a
+SIZE (gegl-0.4.16.tar.bz2) = 7304904
diff --git a/graphics/gegl/files/patch-08084a6 b/graphics/gegl/files/patch-08084a6
new file mode 100644
index 000000000000..b1b2bb58db0e
--- /dev/null
+++ b/graphics/gegl/files/patch-08084a6
@@ -0,0 +1,33 @@
+From 08084a6de9e6d4ee665addf3b0b8587f7f639420 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?=C3=98yvind=20Kol=C3=A5s?= <pippin@gimp.org>
+Date: Mon, 8 Jul 2019 18:45:33 +0200
+Subject: [PATCH] gegl: use uint64_t for memory computations
+
+This ensures we avoid overflow in case PAE lets 32bit builds know of more
+memory than a single process can acccess. See issue #176.
+---
+ gegl/gegl-config.c | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/gegl/gegl-config.c b/gegl/gegl-config.c
+index 9f774514d..1b6fc25e8 100644
+--- gegl/gegl-config.c
++++ gegl/gegl-config.c
+@@ -230,10 +230,10 @@ gegl_config_class_init (GeglConfigClass *klass)
+ G_PARAM_READWRITE));
+
+ {
+- long default_tile_cache_size = 1024l * 1024 * 1024;
+- long mem_total = default_tile_cache_size;
+- long mem_min = 512 << 20; // 512mb
+- long mem_available = mem_min;
++ uint64_t default_tile_cache_size = 1024l * 1024 * 1024;
++ uint64_t mem_total = default_tile_cache_size;
++ uint64_t mem_min = 512 << 20; // 512mb
++ uint64_t mem_available = mem_min;
+
+ #ifdef G_OS_WIN32
+ # if defined(_MSC_VER) && (_MSC_VER <= 1200)
+--
+2.21.0
+
diff --git a/graphics/gegl/files/patch-a6bcf48 b/graphics/gegl/files/patch-a6bcf48
new file mode 100644
index 000000000000..e87efd03a1c0
--- /dev/null
+++ b/graphics/gegl/files/patch-a6bcf48
@@ -0,0 +1,75 @@
+From a6bcf486113b05e0c84ccb38704ed09ef5aadf22 Mon Sep 17 00:00:00 2001
+From: Ting-Wei Lan <lantw@src.gnome.org>
+Date: Mon, 8 Jul 2019 22:33:22 +0800
+Subject: [PATCH] Use a way similar to libgtop to get memory usage on FreeBSD
+
+Fixes: https://gitlab.gnome.org/GNOME/gegl/issues/176
+---
+ gegl/gegl-config.c | 37 +++++++++++++++++++++++++++++++++++++
+ 1 file changed, 37 insertions(+)
+
+diff --git a/gegl/gegl-config.c b/gegl/gegl-config.c
+index 9882a0390..9f774514d 100644
+--- gegl/gegl-config.c
++++ gegl/gegl-config.c
+@@ -18,6 +18,8 @@
+
+ #include "config.h"
+
++#include <stdbool.h>
++#include <stdint.h>
+ #include <string.h>
+
+ #include <glib-object.h>
+@@ -40,6 +42,9 @@
+
+ #ifdef __APPLE__
+ #include <mach/mach.h>
++#endif
++
++#if defined(__APPLE__) || defined(__FreeBSD__)
+ #include <sys/types.h>
+ #include <sys/sysctl.h>
+ #endif
+@@ -278,6 +283,38 @@ gegl_config_class_init (GeglConfigClass *klass)
+ ) * page_size;
+ mach_port_deallocate (mach_task_self (), host);
+ }
++#elif defined(__FreeBSD__)
++ bool ok = true;
++
++ unsigned long physmem;
++ ok = ok && sysctl ((int[2]){ CTL_HW, HW_PHYSMEM }, 2, &physmem,
++ &(size_t){ sizeof physmem }, NULL, 0) == 0;
++ if (ok)
++ mem_total = physmem;
++
++ uint32_t active_count;
++ uint32_t wired_count;
++ ok = ok && sysctlbyname ("vm.stats.vm.v_active_count", &active_count,
++ &(size_t){ sizeof active_count }, NULL, 0) == 0;
++ ok = ok && sysctlbyname ("vm.stats.vm.v_wire_count", &wired_count,
++ &(size_t){ sizeof wired_count }, NULL, 0) == 0;
++
++ if (ok) {
++ uint32_t laundry_count;
++ uint64_t zfs_arc_size;
++ if (sysctlbyname ("vm.stats.vm.v_laundry_count", &laundry_count,
++ &(size_t){ sizeof laundry_count }, NULL, 0) != 0)
++ laundry_count = 0;
++ if (sysctlbyname ("kstat.zfs.misc.arcstats.size", &zfs_arc_size,
++ &(size_t){ sizeof zfs_arc_size }, NULL, 0) != 0)
++ zfs_arc_size = 0;
++
++ int page_size = getpagesize ();
++ mem_available = physmem - (uint64_t) active_count * page_size
++ - (uint64_t) wired_count * page_size
++ - (uint64_t) laundry_count * page_size
++ + zfs_arc_size;
++ }
+ #else
+ mem_total = sysconf (_SC_PHYS_PAGES) * sysconf (_SC_PAGESIZE);
+ mem_available = sysconf (_SC_AVPHYS_PAGES) * sysconf (_SC_PAGESIZE);
+--
+2.21.0
+