Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 11 Nov 2015 13:16:02 +0000 (UTC)
From:      =?UTF-8?Q?Jean-S=c3=a9bastien_P=c3=a9dron?= <dumbbell@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r401243 - in head/graphics/darktable: . files
Message-ID:  <201511111316.tABDG2m1003934@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: dumbbell (src committer)
Date: Wed Nov 11 13:16:02 2015
New Revision: 401243
URL: https://svnweb.freebsd.org/changeset/ports/401243

Log:
  graphics/darktable: Update to 1.6.9
  
  Use Clang 3.7 from Ports to enable OpenMP. This brings a major
  performance boost for people using FreeBSD 10.x and -CURRENT.
  
  `patch-src_CMakeLists.txt` is a new patch to disable `-ffast-math` when
  Clang is used. Without this, isnan() always returns false, even if
  `-fno-finite-math-only` is set. According to `clang --help`, this flag
  provides no optimization anyway so we don't loose anything. darktable
  2.0, which is almost ready, needs this patch too otherwise it crashes
  during startup because of the isnan() misbehavior. The patch is not
  committed upstream yet because I would prefer to understand what's
  wrong.
  
  Reviewed by:	kwm
  Approved by:	kwm
  Differential Revision:	https://reviews.freebsd.org/D3922

Added:
  head/graphics/darktable/files/patch-src_CMakeLists.txt   (contents, props changed)
Modified:
  head/graphics/darktable/Makefile
  head/graphics/darktable/distinfo

Modified: head/graphics/darktable/Makefile
==============================================================================
--- head/graphics/darktable/Makefile	Wed Nov 11 13:12:02 2015	(r401242)
+++ head/graphics/darktable/Makefile	Wed Nov 11 13:16:02 2015	(r401243)
@@ -2,8 +2,7 @@
 # $FreeBSD$
 
 PORTNAME=	darktable
-PORTVERSION=	1.6.8
-PORTREVISION=	1
+PORTVERSION=	1.6.9
 CATEGORIES=	graphics
 MASTER_SITES=	https://github.com/darktable-org/${PORTNAME}/releases/download/release-${PORTVERSION}/
 
@@ -30,8 +29,8 @@ INSTALLS_ICONS=	yes
 LDFLAGS+=	-L${LOCALBASE}/lib -lintl
 
 OPTIONS_DEFINE=	COLORD DOCS FB_PICASA FLICKR GEO GNOMEKEYRING GPHOTO	\
-		GRAPHMAGICK LIBSECRET LUA NLS OPENEXR OPENJPEG RAWSPEED	\
-		SLIDESHOW SQUISH WEBP
+		GRAPHMAGICK LIBSECRET LUA NLS OPENEXR OPENJPEG OPENMP	\
+		RAWSPEED SLIDESHOW SQUISH WEBP
 
 GEO_DESC=	Support geotagging
 FB_PICASA_DESC=	Support export to Facebook and Picasa
@@ -41,7 +40,7 @@ RAWSPEED_DESC=	Compile with rawspeed bac
 SLIDESHOW_DESC=	Build OpenGL/SDL slideshow viewer
 
 OPTIONS_DEFAULT=COLORD FB_PICASA FLICKR GEO GPHOTO LUA NLS OPENEXR	\
-		OPENJPEG RAWSPEED SLIDESHOW SQUISH WEBP
+		OPENJPEG OPENMP RAWSPEED SLIDESHOW SQUISH WEBP
 OPTIONS_SUB=	yes
 
 CMAKE_ARGS+=	-DBINARY_PACKAGE_BUILD=1
@@ -74,7 +73,7 @@ GRAPHMAGICK_CMAKE_OFF=	-DUSE_GRAPHICSMAG
 LIBSECRET_LIB_DEPENDS=	libsecret-1.so:${PORTSDIR}/security/libsecret
 LIBSECRET_CMAKE_OFF=	-DUSE_LIBSECRET:BOOL=OFF
 
-LUA_USES=		lua
+LUA_USES=		lua:5.2
 LUA_CMAKE_OFF=		-DUSE_LUA:BOOL=OFF
 
 NLS_USES=		gettext
@@ -97,19 +96,22 @@ SQUISH_CMAKE_OFF=	-DUSE_SQUISH:BOOL=OFF
 WEBP_LIB_DEPENDS=	libwebp.so:${PORTSDIR}/graphics/webp
 WEBP_CMAKE_OFF=		-DUSE_WEBP:BOOL=OFF
 
-.include <bsd.port.options.mk>
+.include <bsd.port.pre.mk>
+
+.if ${PORT_OPTIONS:MOPENMP} && ${COMPILER_TYPE} == clang
+# Enable OpenMP support with Clang 3.7.
+BUILD_DEPENDS+=	clang37:${PORTSDIR}/devel/llvm37
+RUN_DEPENDS+=	clang37:${PORTSDIR}/devel/llvm37
+
+CPP=		${LOCALBASE}/bin/clang-cpp37
+CC=		${LOCALBASE}/bin/clang37
+CXX=		${LOCALBASE}/bin/clang++37
+LDFLAGS+=	-L${LOCALBASE}/llvm37/lib -lomp
+.endif
 
 .if defined(WITH_DEBUG)
 CMAKE_BUILD_TYPE=	RelWithDebInfo
 STRIP=
 .endif
 
-post-install-DOCS-off:
-	${RM} ${STAGEDIR}${DOCSDIR}/AUTHORS
-	${RM} ${STAGEDIR}${DOCSDIR}/LICENSE
-	${RM} ${STAGEDIR}${DOCSDIR}/README
-	${RM} ${STAGEDIR}${DOCSDIR}/TRANSLATORS
-	${RM} ${STAGEDIR}${DOCSDIR}/darktablerc.html
-	${RMDIR} ${STAGEDIR}${DOCSDIR}
-
-.include <bsd.port.mk>
+.include <bsd.port.post.mk>

Modified: head/graphics/darktable/distinfo
==============================================================================
--- head/graphics/darktable/distinfo	Wed Nov 11 13:12:02 2015	(r401242)
+++ head/graphics/darktable/distinfo	Wed Nov 11 13:16:02 2015	(r401243)
@@ -1,2 +1,2 @@
-SHA256 (darktable-1.6.8.tar.xz) = b676f81bd8cc661a8f76e03ad449da4444f770b6bec3e9accf013c636f690905
-SIZE (darktable-1.6.8.tar.xz) = 3118776
+SHA256 (darktable-1.6.9.tar.xz) = 0f721e9d298a9407f6c0325d9c95b9dc37fa60f3b6a2f2e3b5675ff97c423173
+SIZE (darktable-1.6.9.tar.xz) = 3124940

Added: head/graphics/darktable/files/patch-src_CMakeLists.txt
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/graphics/darktable/files/patch-src_CMakeLists.txt	Wed Nov 11 13:16:02 2015	(r401243)
@@ -0,0 +1,24 @@
+--- src/CMakeLists.txt.orig	2015-10-15 12:59:51 UTC
++++ src/CMakeLists.txt
+@@ -419,8 +419,9 @@ if(NOT CUSTOM_CFLAGS)
+   #-g MUST be set for ALL builds, or there will be no support for them when bugs happen
+   set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${MARCH} ${DT_REQ_INSTRUCTIONS} -g")
+   set(CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} -O2")
+-  set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -O3 -ffast-math -fno-finite-math-only")
++  set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -O3")
+   if(CMAKE_COMPILER_IS_GNUCC)
++    set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -ffast-math -fno-finite-math-only")
+     execute_process(COMMAND ${CMAKE_C_COMPILER} -dumpversion OUTPUT_VARIABLE GCC_VERSION)
+ 
+     set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mfpmath=sse")
+@@ -436,8 +437,9 @@ if(NOT CUSTOM_CFLAGS)
+ 
+   set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${MARCH} ${DT_REQ_INSTRUCTIONS} -g")
+   set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -O2")
+-  set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O3 -ffast-math -fno-finite-math-only")
++  set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O3")
+   if(CMAKE_COMPILER_IS_GNUCXX)
++    set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -ffast-math -fno-finite-math-only")
+     execute_process(COMMAND ${CMAKE_CXX_COMPILER} -dumpversion OUTPUT_VARIABLE GCC_VERSION)
+ 
+     set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mfpmath=sse")



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