summaryrefslogtreecommitdiff
blob: d7b4c880044d5e1c4967d7caedeca984d71fd329 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
# 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.0.ebuild,v 1.1 2012/03/16 09:38:32 radhermit Exp $

EAPI="4"
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="debug flickr gnome gphoto2 kde nls opencl openmp +rawspeed +slideshow video_cards_nvidia"

RDEPEND="
	dev-db/sqlite:3
	dev-libs/libxml2:2
	flickr? ( media-libs/flickcurl )
	gnome? (
		gnome-base/gconf
		gnome-base/gnome-keyring
	)
	gnome-base/librsvg:2
	gphoto2? ( media-libs/libgphoto2 )
	kde? ( dev-libs/dbus-glib )
	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/opengl
	)
	virtual/jpeg
	x11-libs/cairo
	x11-libs/gdk-pixbuf:2
	x11-libs/gtk+:2"
DEPEND="${RDEPEND}
	dev-util/pkgconfig
	nls? ( sys-devel/gettext )"

PATCHES=(
	"${FILESDIR}"/${PN}-0.9.3-system-libraw.patch
	"${FILESDIR}"/${PN}-0.9.3-no-rawspeed.patch
	"${FILESDIR}"/${PN}-0.9.3-opencl-kernels.patch
	"${FILESDIR}"/${P}-cflags.patch
	"${FILESDIR}"/${P}-no-gphoto2.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() {
	local myconf
	myconf="-DDONT_INSTALL_GCONF_SCHEMAS=$(usex gnome OFF ON)"
	myconf+=" -DUSE_OPENCL=$(usex opencl ON OFF)"

	use debug && CMAKE_BUILD_TYPE=Debug

	mycmakeargs=(
		$(cmake-utils_use_use flickr FLICKR)
		$(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)
		${myconf}
		-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
}