aboutsummaryrefslogtreecommitdiffstats
path: root/community
diff options
context:
space:
mode:
authorKevin Daudt <kdaudt@alpinelinux.org>2019-12-25 21:23:22 +0000
committerKevin Daudt <kdaudt@alpinelinux.org>2019-12-25 21:29:52 +0000
commit55ebadb9a88afafad3c5d93c8b13d504dc8cfd0e (patch)
tree8940fd51b5756c28cc8f2f139b4861ba1da0160d /community
parenta26334097d630454ee330b670b8825ec5545d862 (diff)
downloadaports-55ebadb9a88afafad3c5d93c8b13d504dc8cfd0e.tar.bz2
aports-55ebadb9a88afafad3c5d93c8b13d504dc8cfd0e.tar.xz
community/darktable: upgrade to 3.0
Diffstat (limited to 'community')
-rw-r--r--community/darktable/APKBUILD11
-rw-r--r--community/darktable/fix-ifunc-multiarch.patch25
-rw-r--r--community/darktable/null-char-pointer-sentinel.patch39
3 files changed, 72 insertions, 3 deletions
diff --git a/community/darktable/APKBUILD b/community/darktable/APKBUILD
index a34a175932..ae77131969 100644
--- a/community/darktable/APKBUILD
+++ b/community/darktable/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Kevin Daudt <kdaudt@alpinelinux.org>
# Maintainer: Kevin Daudt <kdaudt@alpinelinux.org>
pkgname=darktable
-pkgver=2.6.3
+pkgver=3.0.0
pkgrel=0
pkgdesc="an open source photography workflow application and raw developer"
url="https://www.darktable.org/"
@@ -37,7 +37,10 @@ makedepends="
ldpath="/usr/lib/$pkgname"
subpackages="$pkgname-dbg $pkgname-doc $pkgname-lang"
options="!check" # Dependencies missing
-source="https://github.com/darktable-org/darktable/releases/download/release-${pkgver/_/}/darktable-${pkgver/_/.}.tar.xz"
+source="https://github.com/darktable-org/darktable/releases/download/release-${pkgver/_/}/darktable-${pkgver/_/.}.tar.xz
+ fix-ifunc-multiarch.patch
+ null-char-pointer-sentinel.patch
+ "
builddir="$srcdir/$pkgname-${pkgver/_/~}"
prepare() {
@@ -63,4 +66,6 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="4672f4f4d5fa57fb0d53d3886cd2773a6036334b85a0df29995f1a67c59d6b57534e06c8bf1666c8e294dd92db1197113bb3d625512671625c14e0abf5e2f14c darktable-2.6.3.tar.xz"
+sha512sums="de154cc19281f61316363243db3e531be33ac4c4632d6277ba715884b83a3c35f1d433a0e53f5f1eb7ffe03c6fcba4629612c94f942c196807c876b421faafc6 darktable-3.0.0.tar.xz
+bbb665f06b21a75f34a82f26d9e7421281445843b392871d1f851c7b73eabc862bbe43525b669a67429a22fea63bb03ca90b8a1d200d62a52907946ffcd9a7e3 fix-ifunc-multiarch.patch
+5ca542c875c769c4475b0b75244365f2e5829e451e05b9294627e154de9559c995aa252f128f6ffab36c60d17a618ff562abddb88c981672960e7c35e612ebdb null-char-pointer-sentinel.patch"
diff --git a/community/darktable/fix-ifunc-multiarch.patch b/community/darktable/fix-ifunc-multiarch.patch
new file mode 100644
index 0000000000..5495587760
--- /dev/null
+++ b/community/darktable/fix-ifunc-multiarch.patch
@@ -0,0 +1,25 @@
+Based on https://discuss.pixls.us/t/a-tone-equalizer-in-darktable/10678/87
+
+Fixes:
+
+ error: the call requires 'ifunc', which is not supported by this target
+
+diff --git a/src/common/darktable.h b/src/common/darktable.h
+index 23e1b22..81df16e 100644
+--- a/src/common/darktable.h
++++ b/src/common/darktable.h
+@@ -100,14 +100,7 @@ typedef unsigned int u_int;
+
+ #endif /* _OPENMP */
+
+-/* Create cloned functions for various CPU SSE generations */
+-/* See for instructions https://hannes.hauswedell.net/post/2017/12/09/fmv/ */
+-/* TL;DR : use only on SIMD functions containing low-level paralellized/vectorized loops */
+-#if __has_attribute(target_clones) && !defined(_WIN32) && defined(__SSE__)
+-#define __DT_CLONE_TARGETS__ __attribute__((target_clones("default", "sse2", "sse3", "sse4.1", "sse4.2", "popcnt", "avx", "avx2", "avx512f", "fma4")))
+-#else
+ #define __DT_CLONE_TARGETS__
+-#endif
+
+ /* Helper to force heap vectors to be aligned on 64 bits blocks to enable AVX2 */
+ #define DT_ALIGNED_ARRAY __attribute__((aligned(64)))
diff --git a/community/darktable/null-char-pointer-sentinel.patch b/community/darktable/null-char-pointer-sentinel.patch
new file mode 100644
index 0000000000..c3dd7507f1
--- /dev/null
+++ b/community/darktable/null-char-pointer-sentinel.patch
@@ -0,0 +1,39 @@
+Fixes:
+
+ error: missing sentinel in function call
+
+diff --git a/src/gui/gtk.h b/src/gui/gtk.h
+index 8c1fc23..1a0638d 100644
+--- a/src/gui/gtk.h
++++ b/src/gui/gtk.h
+@@ -334,7 +334,7 @@ static inline void dtgtk_justify_notebook_tabs(GtkNotebook *notebook)
+ for(gint i = 0; i < gtk_notebook_get_n_pages(notebook); ++i)
+ gtk_container_child_set(GTK_CONTAINER(notebook),
+ gtk_notebook_get_nth_page(notebook, i),
+- "tab-expand", TRUE, "tab-fill", TRUE, NULL);
++ "tab-expand", TRUE, "tab-fill", TRUE, (char*)NULL);
+ }
+
+ // show a dialog box with 2 buttons in case some user interaction is required BEFORE dt's gui is initialised.
+diff --git a/src/iop/lens.cc b/src/iop/lens.cc
+index 41dc792..547acf7 100644
+--- a/src/iop/lens.cc
++++ b/src/iop/lens.cc
+@@ -1256,7 +1256,7 @@ void init_global(dt_iop_module_so_t *module)
+ gchar *path = g_file_get_path(g_file_get_parent(file));
+ g_object_unref(file);
+ #ifdef LF_MAX_DATABASE_VERSION
+- gchar *sysdbpath = g_build_filename(path, "lensfun", "version_" STR(LF_MAX_DATABASE_VERSION), NULL);
++ gchar *sysdbpath = g_build_filename(path, "lensfun", "version_" STR(LF_MAX_DATABASE_VERSION), (char*)NULL);
+ #endif
+
+ #ifdef LF_0395
+@@ -1277,7 +1277,7 @@ void init_global(dt_iop_module_so_t *module)
+ fprintf(stderr, "[iop_lens]: could not load lensfun database in `%s'!\n", sysdbpath);
+ #endif
+ g_free(dt_iop_lensfun_db->HomeDataDir);
+- dt_iop_lensfun_db->HomeDataDir = g_build_filename(path, "lensfun", NULL);
++ dt_iop_lensfun_db->HomeDataDir = g_build_filename(path, "lensfun", (char*)NULL);
+ if(dt_iop_lensfun_db->Load() != LF_NO_ERROR)
+ fprintf(stderr, "[iop_lens]: could not load lensfun database in `%s'!\n", dt_iop_lensfun_db->HomeDataDir);
+ #ifdef LF_MAX_DATABASE_VERSION