blob: a8f192da9e3200e935b51ec09919d994dbb6162f (
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
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
|
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sci-visualization/opendx/opendx-4.4.4.ebuild,v 1.7 2008/09/14 11:25:38 spock Exp $
# Set SMP="no" to force disable of SMP compilation.
# Set SMP="yes" to force enable of SMP compilation.
# Otherwise it will be autodetected from /usr/src/linux.
inherit eutils flag-o-matic linux-info autotools
DESCRIPTION="A 3D data visualization tool"
HOMEPAGE="http://www.opendx.org/"
SRC_URI="http://opendx.npaci.edu/source/${P/open}.tar.gz"
# There are a few jar files that can be added to enhance JX.
# These are java40.jar from the Netscape libraries
# (we've provided them in the OpenDX.org lib area) nscosmop211.jar
# from the Cosmo Player libs.
# http://opendx.npaci.edu/libs/
#SRC_URI="${SRC_URI}
# http://opendx.npaci.edu/libs/netscape-java40.tar.gz
# http://opendx.npaci.edu/libs/cosmoplayer-jar.tar.gz"
LICENSE="IPL-1"
SLOT="0"
# Should work on x86, ppc, alpha at least
KEYWORDS="~amd64 ~ppc ~x86"
IUSE="hdf cdf netcdf tiff imagemagick szip" # java doc"
DEPEND="x11-libs/libXmu
x11-libs/libXi
x11-libs/libXp
x11-libs/libXpm
x11-libs/openmotif
szip? ( sci-libs/szip )
hdf? ( sci-libs/hdf )
cdf? ( sci-libs/cdf )
netcdf? ( sci-libs/netcdf )
tiff? ( media-libs/tiff )
imagemagick? ( >=media-gfx/imagemagick-5.3.4 )"
# waiting on bug #36349 for media-libs/jasper in imagemagick
# java support gives some trouble - deprecated api and other unresolved symbols
# java? ( virtual/jdk
# dev-java/java-config )"
S="${WORKDIR}/${P/open}"
smp() {
has "$1" "${SMP}"
}
smp_check() {
linux_chkconfig_present SMP
}
pkg_setup() {
if use imagemagick; then
if built_with_use media-gfx/imagemagick hdri; then
die "Please re-emerge imagemagick with USE=\"-hdri\" or compilation will fail"
fi
fi
linux-info_pkg_setup
}
src_unpack() {
unpack ${A}
cd "${S}"
if has_version '>=sys-kernel/linux-headers-2.6.19' ; then
epatch "${FILESDIR}"/${PN}-4.3.2-sys.h.patch || die "Failed to apply sys.h patch."
fi
epatch "${FILESDIR}"/${PN}-compressed-man.patch
epatch "${FILESDIR}"/${PN}-4.4.4-gcc43.patch
epatch "${FILESDIR}"/${P}-libtool.patch
epatch "${FILESDIR}"/${P}-concurrent-make-fix.patch
eautoreconf || die "Failed running eautoreconf."
}
src_compile() {
local myconf="--with-x \
--host=${CHOST}"
# Check for SMP
# This needs to be done for /usr/src/linux, NOT the running kernel
# Allow override using smp().
if smp no
then
myconf="${myconf} --disable-smp-linux"
einfo "Disabling SMP capabilities"
elif smp yes || smp_check
then
myconf="${myconf} --enable-smp-linux"
einfo "Enabling SMP capabilities"
else
myconf="${myconf} --disable-smp-linux"
einfo "Disabling SMP capabilities"
fi
# with gcc 3.3.2 I had an infinite loop on src/exec/libdx/zclipQ.c
append-flags -fno-strength-reduce
# (#82672)
filter-flags -finline-functions
replace-flags -O3 -O2
# opendx uses this variable
local GENTOOARCH="${ARCH}"
unset ARCH
local morelibs=""
use szip && morelibs="-lsz"
# use java && myconf="${myconf} JNIPATH=$(java-config -O)/include:$(java-config -O)/include/linux"
econf LIBS="${morelibs}" \
`use_with cdf` \
`use_with netcdf` \
`use_with hdf` \
`use_with tiff` \
`use_with imagemagick magick` \
${myconf} || die
# `use_with java javadx`
# This is broken
# `use_enable doc installhtml`
emake || die
ARCH="${GENTOOARCH}"
}
src_install() {
make DESTDIR="${D}" install || die
echo "MANPATH=/usr/dx/man" > 50opendx
doenvd 50opendx
# inform revdep-rebuild about binary locations
insinto /etc/revdep-rebuild
doins "${FILESDIR}"/20-${PN}-revdep
}
|