summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Harder <radhermit@gentoo.org>2012-12-07 11:21:08 +0000
committerTim Harder <radhermit@gentoo.org>2012-12-07 11:21:08 +0000
commitb9f52a9d9b575650de3d90f45f4f706cecc6697e (patch)
tree72cf7e08aba550967dceb93ef3b6269a1b0a2564 /media-gfx/darktable
parentReinstate docbook license from attic and change to template. Bug 446352. (diff)
downloadgentoo-2-b9f52a9d9b575650de3d90f45f4f706cecc6697e.tar.gz
gentoo-2-b9f52a9d9b575650de3d90f45f4f706cecc6697e.tar.bz2
gentoo-2-b9f52a9d9b575650de3d90f45f4f706cecc6697e.zip
Version bump (bug #444518).
(Portage version: 2.2.0_alpha144/cvs/Linux x86_64, signed Manifest commit with key 4AB3E85B4F064CA3)
Diffstat (limited to 'media-gfx/darktable')
-rw-r--r--media-gfx/darktable/ChangeLog10
-rw-r--r--media-gfx/darktable/darktable-1.1.ebuild106
-rw-r--r--media-gfx/darktable/files/darktable-1.1-automagic-colord.patch77
-rw-r--r--media-gfx/darktable/files/darktable-1.1-cflags.patch52
-rw-r--r--media-gfx/darktable/files/darktable-1.1-opencl-kernels.patch13
-rw-r--r--media-gfx/darktable/files/darktable-1.1-system-libraw.patch86
-rw-r--r--media-gfx/darktable/metadata.xml3
7 files changed, 346 insertions, 1 deletions
diff --git a/media-gfx/darktable/ChangeLog b/media-gfx/darktable/ChangeLog
index 11a534cc2ed2..087bde1b258a 100644
--- a/media-gfx/darktable/ChangeLog
+++ b/media-gfx/darktable/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for media-gfx/darktable
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-gfx/darktable/ChangeLog,v 1.23 2012/11/24 19:47:07 eva Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-gfx/darktable/ChangeLog,v 1.24 2012/12/07 11:21:07 radhermit Exp $
+
+*darktable-1.1 (07 Dec 2012)
+
+ 07 Dec 2012; Tim Harder <radhermit@gentoo.org> +darktable-1.1.ebuild,
+ +files/darktable-1.1-automagic-colord.patch,
+ +files/darktable-1.1-cflags.patch, +files/darktable-1.1-opencl-kernels.patch,
+ +files/darktable-1.1-system-libraw.patch, metadata.xml:
+ Version bump (bug #444518).
24 Nov 2012; Gilles Dartiguelongue <eva@gentoo.org> metadata.xml:
Add upstream tags.
diff --git a/media-gfx/darktable/darktable-1.1.ebuild b/media-gfx/darktable/darktable-1.1.ebuild
new file mode 100644
index 000000000000..2f19cb56097e
--- /dev/null
+++ b/media-gfx/darktable/darktable-1.1.ebuild
@@ -0,0 +1,106 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-gfx/darktable/darktable-1.1.ebuild,v 1.1 2012/12/07 11:21:07 radhermit Exp $
+
+EAPI="5"
+GCONF_DEBUG="no"
+
+inherit gnome2 eutils cmake-utils toolchain-funcs
+
+DESCRIPTION="A virtual lighttable and darkroom for photographers"
+HOMEPAGE="http://darktable.sf.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="colord debug facebook flickr geo gnome gphoto2 kde nls opencl openmp +rawspeed
++slideshow video_cards_nvidia"
+
+RDEPEND="
+ dev-db/sqlite:3
+ dev-libs/libxml2:2
+ colord? ( x11-misc/colord )
+ facebook? ( dev-libs/json-glib )
+ flickr? ( media-libs/flickcurl )
+ geo? ( net-libs/libsoup:2.4 )
+ gnome? (
+ gnome-base/gconf
+ gnome-base/gnome-keyring
+ )
+ gnome-base/librsvg:2
+ gphoto2? ( media-libs/libgphoto2 )
+ kde? (
+ dev-libs/dbus-glib
+ kde-base/kwalletd
+ )
+ media-gfx/exiv2[xmp]
+ media-libs/lcms:2
+ >=media-libs/lensfun-0.2.3
+ media-libs/libpng
+ >=media-libs/libraw-0.13.4[demosaic]
+ media-libs/openexr
+ media-libs/tiff
+ net-misc/curl
+ opencl? ( virtual/opencl )
+ slideshow? (
+ media-libs/libsdl
+ virtual/glu
+ virtual/opengl
+ )
+ virtual/jpeg
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf:2
+ x11-libs/gtk+:2"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ nls? ( sys-devel/gettext )"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-system-libraw.patch
+ "${FILESDIR}"/${P}-opencl-kernels.patch
+ "${FILESDIR}"/${P}-cflags.patch
+ "${FILESDIR}"/${P}-automagic-colord.patch
+)
+
+pkg_setup() {
+ if use openmp ; then
+ tc-has-openmp || die "Please switch to an openmp compatible compiler"
+ fi
+}
+
+src_prepare() {
+ base_src_prepare
+ sed -i -e "s:\(/share/doc/\)darktable:\1${PF}:" \
+ -e "s:LICENSE::" doc/CMakeLists.txt || die
+}
+
+src_configure() {
+ use debug && CMAKE_BUILD_TYPE=Debug
+
+ local mycmakeargs=(
+ $(cmake-utils_use_use colord COLORD)
+ $(cmake-utils_use_use facebook GLIBJSON)
+ $(cmake-utils_use_use flickr FLICKR)
+ $(cmake-utils_use_use geo GEO)
+ $(cmake-utils_use_use gnome GCONF_BACKEND)
+ $(cmake-utils_use_use gnome GNOME_KEYRING)
+ $(cmake-utils_use_use gphoto2 CAMERA_SUPPORT)
+ $(cmake-utils_use_use kde KWALLET)
+ $(cmake-utils_use_use nls NLS)
+ $(cmake-utils_use_use openmp OPENMP)
+ $(cmake-utils_use !rawspeed DONT_USE_RAWSPEED)
+ $(cmake-utils_use_build slideshow SLIDESHOW)
+ -DDONT_INSTALL_GCONF_SCHEMAS=$(usex gnome OFF ON)
+ -DUSE_OPENCL=$(usex opencl ON OFF)
+ -DINSTALL_IOP_EXPERIMENTAL=ON
+ -DINSTALL_IOP_LEGACY=ON
+ )
+ cmake-utils_src_configure
+}
+
+src_install() {
+ export GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL="1"
+ cmake-utils_src_install
+ unset GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL
+}
diff --git a/media-gfx/darktable/files/darktable-1.1-automagic-colord.patch b/media-gfx/darktable/files/darktable-1.1-automagic-colord.patch
new file mode 100644
index 000000000000..46b125ba0d87
--- /dev/null
+++ b/media-gfx/darktable/files/darktable-1.1-automagic-colord.patch
@@ -0,0 +1,77 @@
+--- darktable-1.1/CMakeLists.txt
++++ darktable-1.1/CMakeLists.txt
+@@ -4,6 +4,7 @@
+
+ option(USE_CAMERA_SUPPORT "Detect and use camera support if available." ON)
+ option(USE_NLS "Build Native Language Support (using gettext)" ON)
++option(USE_COLORD "Enable colord support" ON)
+ option(USE_GEO "Build geotagging parts" ON)
+ option(USE_FLICKR "Enable Flickr support" ON)
+ option(USE_GLIBJSON "Enable GlibJson support" ON)
+--- darktable-1.1/src/CMakeLists.txt
++++ darktable-1.1/src/CMakeLists.txt
+@@ -90,5 +90,3 @@
+-include_directories(${CMAKE_CURRENT_SOURCE_DIR}/external/osm-gps-map/src)
+-include_directories(${CMAKE_CURRENT_SOURCE_DIR}/external/colord-gtk/src)
+
+ # initial compiler flags
+ add_definitions("-DHAVE_CONFIG_H")
+@@ -403,6 +401,7 @@
+ include_directories(${LIBSOUP2_INCLUDE_DIRS})
+ list(APPEND LIBS ${LIBSOUP2_LIBRARIES})
+ add_definitions(${LIBSOUP2_DEFINITIONS})
++ include_directories(${CMAKE_CURRENT_SOURCE_DIR}/external/osm-gps-map/src)
+ add_dependencies(lib_darktable osmgpsmap)
+ add_library(osmgpsmap_static STATIC IMPORTED)
+ set_target_properties(osmgpsmap_static PROPERTIES IMPORTED_LOCATION ${CMAKE_CURRENT_BINARY_DIR}/external/osm-gps-map/libosmgpsmap.a)
+@@ -422,20 +421,23 @@
+ target_link_libraries(lib_darktable ${LIBS})
+
+ # libcolord-gtk:
+-find_package(Colord)
+-if(COLORD_FOUND)
+- include_directories(${COLORD_INCLUDE_DIRS})
+- list(APPEND LIBS ${COLORD_LIBRARIES})
+-# we ship our own copy of libcolord-gtk - the one packaged in distros is linked against gtk3 :(
+- add_dependencies(lib_darktable colord-gtk)
+- add_library(colord-gtk_static STATIC IMPORTED)
+- set_target_properties(colord-gtk_static PROPERTIES IMPORTED_LOCATION ${CMAKE_CURRENT_BINARY_DIR}/external/colord-gtk/libcolord-gtk.a)
+- target_link_libraries(lib_darktable colord-gtk_static)
+- add_subdirectory(external/colord-gtk)
+- list(APPEND STATIC_LIBS colord-gtk_static)
+- add_dependencies(colord-gtk colord)
+- add_definitions("-DUSE_COLORDGTK")
+-endif(COLORD_FOUND)
++if(USE_COLORD)
++ find_package(Colord)
++ if(COLORD_FOUND)
++ include_directories(${COLORD_INCLUDE_DIRS})
++ list(APPEND LIBS ${COLORD_LIBRARIES})
++ # we ship our own copy of libcolord-gtk - the one packaged in distros is linked against gtk3 :(
++ add_dependencies(lib_darktable colord-gtk)
++ include_directories(${CMAKE_CURRENT_SOURCE_DIR}/external/colord-gtk/src)
++ add_library(colord-gtk_static STATIC IMPORTED)
++ set_target_properties(colord-gtk_static PROPERTIES IMPORTED_LOCATION ${CMAKE_CURRENT_BINARY_DIR}/external/colord-gtk/libcolord-gtk.a)
++ target_link_libraries(lib_darktable colord-gtk_static)
++ add_subdirectory(external/colord-gtk)
++ list(APPEND STATIC_LIBS colord-gtk_static)
++ add_dependencies(colord-gtk colord)
++ add_definitions("-DUSE_COLORDGTK")
++ endif(COLORD_FOUND)
++endif(USE_COLORD)
+
+ # libsquish for compressed thumbnails:
+ add_dependencies(lib_darktable squish)
+--- darktable-1.1/src/gui/gtk.c
++++ darktable-1.1/src/gui/gtk.c
+@@ -932,8 +932,10 @@
+ void dt_gui_gtk_cleanup(dt_gui_gtk_t *gui)
+ {
+ g_free(darktable.control->xprofile_data);
++#ifdef USE_COLORDGTK
+ g_free(darktable.control->colord_profile_file);
+ darktable.control->colord_profile_file = NULL;
++#endif
+ darktable.control->xprofile_size = 0;
+ }
+
diff --git a/media-gfx/darktable/files/darktable-1.1-cflags.patch b/media-gfx/darktable/files/darktable-1.1-cflags.patch
new file mode 100644
index 000000000000..eaaae04feaae
--- /dev/null
+++ b/media-gfx/darktable/files/darktable-1.1-cflags.patch
@@ -0,0 +1,52 @@
+--- darktable-1.1/src/CMakeLists.txt
++++ darktable-1.1/src/CMakeLists.txt
+@@ -272,48 +272,11 @@
+ # c++ code doesn't like -Werror (libraw)
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -fno-strict-aliasing")
+
+-if(NOT APPLE AND NOT CMAKE_C_COMPILER_ID STREQUAL "Clang")
+- # apple build fails on deprecated warnings..
+- # and too many warnings reported by Clang for now
+- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Werror")
+-endif(NOT APPLE AND NOT CMAKE_C_COMPILER_ID STREQUAL "Clang")
+-
+ if(NOT WIN32)
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -pthread")
+ endif(NOT WIN32)
+
+-if(NOT BINARY_PACKAGE_BUILD)
+- MESSAGE("-- Checking for -march=native support")
+- CHECK_C_COMPILER_FLAG("-march=native" MARCHNATIVE)
+- if (MARCHNATIVE)
+- set(MARCH "-march=native")
+- else()
+- MESSAGE("-- Checking for -mtune=native support")
+- CHECK_C_COMPILER_FLAG("-mtune=native" MTUNENATIVE)
+- if (MTUNENATIVE)
+- set(MARCH "-mtune=native")
+- else()
+- set(MARCH "-mtune=generic")
+- endif()
+- endif()
+-else()
+- set(MARCH "-mtune=generic")
+-endif()
+-
+-set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -msse2 -g")
+-set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -O3 -ffast-math ${MARCH}")
+-set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -O0 -g -D_DEBUG")
+-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -msse2 -g")
+-set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O3 -ffast-math ${MARCH}")
+-set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -O0 -g -D_DEBUG")
+-if(CMAKE_COMPILER_IS_GNUCC)
+-set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mfpmath=sse")
+-set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -fexpensive-optimizations")
+-endif()
+-if(CMAKE_COMPILER_IS_GNUCXX)
+-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mfpmath=sse")
+-set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -fexpensive-optimizations")
+-endif()
++set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -D_DEBUG")
+
+ #
+ # Generate config.h
diff --git a/media-gfx/darktable/files/darktable-1.1-opencl-kernels.patch b/media-gfx/darktable/files/darktable-1.1-opencl-kernels.patch
new file mode 100644
index 000000000000..9e3454416d8d
--- /dev/null
+++ b/media-gfx/darktable/files/darktable-1.1-opencl-kernels.patch
@@ -0,0 +1,13 @@
+--- darktable-1.1/data/CMakeLists.txt
++++ darktable-1.1/data/CMakeLists.txt
+@@ -2,7 +2,9 @@
+
+ add_subdirectory(pixmaps)
+
+-add_subdirectory(kernels)
++if(USE_OPENCL)
++ add_subdirectory(kernels)
++endif(USE_OPENCL)
+
+ #
+ # Generate and instal gtkrc
diff --git a/media-gfx/darktable/files/darktable-1.1-system-libraw.patch b/media-gfx/darktable/files/darktable-1.1-system-libraw.patch
new file mode 100644
index 000000000000..6e963441e8a5
--- /dev/null
+++ b/media-gfx/darktable/files/darktable-1.1-system-libraw.patch
@@ -0,0 +1,86 @@
+--- darktable-1.1/cmake/modules/FindLibraw.cmake
++++ darktable-1.1/cmake/modules/FindLibraw.cmake
+@@ -0,0 +1,29 @@
++# - Try to find libraw
++# Once done, this will define
++#
++# Libraw_FOUND - system has Libraw
++# Libraw_INCLUDE_DIRS - the Libraw include directories
++# Libraw_LIBRARIES - link these to use Libraw
++
++include(LibFindMacros)
++
++# Use pkg-config to get hints about paths
++libfind_pkg_check_modules(Libraw_PKGCONF libraw)
++
++# Include dir
++find_path(Libraw_INCLUDE_DIR
++ NAMES libraw.h
++ PATHS ${Libraw_PKGCONF_INCLUDE_DIRS}
++)
++
++# Finally the library itself
++find_library(Libraw_LIBRARY
++ NAMES raw_r
++ PATHS ${Libraw_PKGCONF_LIBRARY_DIRS}
++)
++
++# Set the include dir variables and the libraries and let libfind_process do the rest.
++# NOTE: Singular variables for this library, plural for libraries this this lib depends on.
++set(Libraw_PROCESS_INCLUDES Libraw_INCLUDE_DIR Libraw_INCLUDE_DIRS)
++set(Libraw_PROCESS_LIBS Libraw_LIBRARY Libraw_LIBRARIES)
++libfind_process(Libraw)
+--- darktable-1.1/src/CMakeLists.txt
++++ darktable-1.1/src/CMakeLists.txt
+@@ -86,7 +86,6 @@
+
+ include_directories(${CMAKE_CURRENT_SOURCE_DIR})
+ include_directories(${CMAKE_CURRENT_SOURCE_DIR}/external)
+-include_directories(${CMAKE_CURRENT_SOURCE_DIR}/external/LibRaw)
+ include_directories(${CMAKE_CURRENT_SOURCE_DIR}/external/osm-gps-map/src)
+ include_directories(${CMAKE_CURRENT_SOURCE_DIR}/external/colord-gtk/src)
+
+@@ -143,7 +142,7 @@
+ endif(INOTIFY_FOUND)
+
+ # Find all the libs that don't require extra parameters
+-foreach(lib ${OUR_LIBS} LensFun GIO GThread GModule Cairo PangoCairo PThread Rsvg2 GDK-PixBuf LibXml2 Sqlite3 Exiv2 CURL PNG JPEG TIFF OpenEXR LCMS2)
++foreach(lib ${OUR_LIBS} LensFun Libraw GIO GThread GModule Cairo PangoCairo PThread Rsvg2 GDK-PixBuf LibXml2 Sqlite3 Exiv2 CURL PNG JPEG TIFF OpenEXR LCMS2)
+ find_package(${lib} REQUIRED)
+ include_directories(${${lib}_INCLUDE_DIRS})
+ list(APPEND LIBS ${${lib}_LIBRARIES})
+@@ -366,24 +365,6 @@
+ set_target_properties(lib_darktable PROPERTIES OUTPUT_NAME darktable)
+ set_target_properties(lib_darktable PROPERTIES LINKER_LANGUAGE C)
+
+-#
+-# the libraw part is a bit of a hack:
+-# the static linking didn't work since it was pulling -lstdc++ and -lm into linker flags.
+-# so we do a custom dependency and pretend an imported liblibraw_r.a so no other -l are
+-# appended.
+-#
+-add_dependencies(lib_darktable libraw_r)
+-add_library(libraw_static STATIC IMPORTED)
+-set_target_properties(libraw_static PROPERTIES IMPORTED_LOCATION ${CMAKE_CURRENT_BINARY_DIR}/external/LibRaw/liblibraw_r.a)
+-if(APPLE)
+- set(LIBRAW_STATIC_LIBS libraw_static stdc++)
+-else(APPLE)
+- set(LIBRAW_STATIC_LIBS libraw_static)
+-endif(APPLE)
+-
+-target_link_libraries(lib_darktable ${LIBRAW_STATIC_LIBS})
+-list(APPEND STATIC_LIBS ${LIBRAW_STATIC_LIBS})
+-
+ # same for librawspeed (can switch it off with -DDONT_USE_RAWSPEED, for macs):
+ if(NOT DONT_USE_RAWSPEED)
+ add_definitions("-DHAVE_RAWSPEED")
+@@ -448,9 +429,6 @@
+ # make sure static libs is first
+ list(INSERT LIBS 0 lib_darktable ${STATIC_LIBS})
+
+-# Compile libraw modules
+-add_subdirectory(external/LibRaw)
+-
+ # Compile views modules
+ add_subdirectory(views)
+
diff --git a/media-gfx/darktable/metadata.xml b/media-gfx/darktable/metadata.xml
index 4408da71a99b..740feab7b89e 100644
--- a/media-gfx/darktable/metadata.xml
+++ b/media-gfx/darktable/metadata.xml
@@ -7,7 +7,10 @@
<name>Dane Smith</name>
</maintainer>
<use>
+ <flag name="colord">Support color management using <pkg>x11-misc/colord</pkg></flag>
+ <flag name="facebook">Add support for uploading photos to facebook</flag>
<flag name="flickr">Add support for uploading photos to flickr</flag>
+ <flag name="geo">Enable geotagging support</flag>
<flag name="opencl">Enable opencl support</flag>
<flag name="rawspeed">Enable the rawspeed backend</flag>
<flag name="slideshow">Build the opengl slideshow viewer</flag>