blob: 0fc8f67a928d0bb386d03901cc74d524f7d39b9e (
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
|
# Copyright 1999-2004 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/media-gfx/povray/povray-3.50c.ebuild,v 1.15 2004/01/15 17:08:10 lu_zero Exp $
inherit gcc eutils
DESCRIPTION="The Persistance Of Vision Ray Tracer"
SRC_URI="ftp://ftp.povray.org/pub/povray/Official/Unix/povuni_s.tgz"
HOMEPAGE="http://www.povray.org/"
SLOT="0"
LICENSE="povlegal-3.5"
KEYWORDS="x86 ppc alpha ~amd64"
IUSE="icc X svga"
DEPEND="media-libs/libpng
media-libs/tiff
media-libs/jpeg
sys-libs/zlib
X? ( virtual/x11 )
icc? ( dev-lang/icc )
svga? ( media-libs/svgalib )"
pkg_setup() {
if [ "`use icc`" ]
then
einfo "using icc"
else
export WANT_GCC_3="yes"
if [ "$(gcc-major-version)" -lt "3" -o "$(gcc-minor-version)" -lt "2" ]
then
eerror "This build needs gcc-3.2 or later"
die "This build needs gcc-3.2 or later"
fi
fi
}
src_unpack() {
unpack ${A} ; cd ${S}
use amd64 && epatch ${FILESDIR}/${P}-amd64.patch
}
src_compile() {
local myconf
use X && myconf="${myconf} --with-x" \
|| myconf="${myconf} --without-x"\
CFLAGS="${CFLAGS} -DX_DISPLAY_MISSING"
econf ${myconf} || die
# fix system default povray.ini to point to install directory
cp povray.ini povray.ini.orig
sed -e "s:/usr/local/:/usr/:" povray.ini.orig > povray.ini
cd src
cp Makefile makefile.orig
DCPU=`echo ${CPPFLAGS} | sed -e "s/.*i\(.86\).*/\\1/"`
echo "s/^CPPFLAGS.*-DCPU=686/CPPFLAGS = -DCPU=${DCPU}/" > makefile.sed
# Change the header file with the banner when you start povray
cp optout.h optout.h.orig
sed -e "s/DISTRIBUTION_MESSAGE_2.*$/DISTRIBUTION_MESSAGE_2 \"Gentoo Linux - `uname -n` - ${USER}\"/" optout.h.orig > optout.h
cp optout.h optout.h.orig
sed -e "s/#error You must complete the following DISTRIBUTION_MESSAGE macro//" optout.h.orig > optout.h
# rphillips - removed because of compilation issues
# echo "s/^CPPFLAGS =/CPPFLAGS = -ansi -c/" >> makefile.sed
if [ "`use icc`" ]; then
# ICC CPPFLAGS
echo "s/g++/icc/" >> makefile.sed
echo "s/gcc/icc/" >> makefile.sed
# Should pull from /etc/make.conf
# If you have a P4 add -tpp7 after the -O3
# If you want lean/mean replace -axiMKW with -x? (see icc docs for -x)
# Note: -ipo breaks povray
# Note: -ip breaks povray on a P3
# echo "s/^CPPFLAGS =/CPPFLAGS = -O3 -axiMKW /" >> makefile.sed
# This is optimized for my Pentium 2:
echo "s/^CPPFLAGS =/CPPFLAGS = -O3 -xM -ip /" >> makefile.sed
# This is optimized for Pentium 3 (semi-untested, I don't own one):
#echo "s/^CPPFLAGS =/CPPFLAGS = -O3 -xK /" >> makefile.sed
#This is optimized for Pentium 4 (untested, I don't own one):
#echo "s/^CPPFLAGS =/CPPFLAGS = -O3 -xW -ip -tpp7 /" >> makefile.sed
else
# GCC CPPFLAGS
echo "s/^CPPFLAGS =/CPPFLAGS = -finline-functions -ffast-math /" >> makefile.sed
echo "s/^CPPFLAGS =/CPPFLAGS = ${CFLAGS} /" >> makefile.sed
fi
# fix library dependency
if [ "`use X`" ]; then
echo 's/LIBS = \(.*\)/LIBS = \1 -ldl -lpthread/' >> makefile.sed
else
echo 's/LIBS = \(.*\)/LIBS = \1 -ldl/' >> makefile.sed
fi
# strip the x86 specific options if on non x86
if [ ${ARCH} != "x86" ]; then
echo "s/-minline-all-stringops//" >> makefile.sed
echo "s/-malign-double//" >> makefile.sed
echo "s/-mcpu=i586//" >> makefile.sed
echo "s/-march=i586//" >> makefile.sed
fi
cp Makefile Makefile.orig
sed -f makefile.sed Makefile.orig > Makefile
cd ${P}
# stl compatibility
epatch ${FILESDIR}/gentoo-${PV}.patch
einfo Building povray
emake || die
}
src_install() {
emake DESTDIR=${D} install || die
mv ${D}/etc/povray.ini ${D}/usr/share/povray-3.5/
dodir /etc
dosym /usr/share/povray-3.5/povray.ini /etc/povray.ini
}
pkg_postinst() {
einfo "Installing configuration files"
einfo "*Warning* I/O Security disabled by default"
einfo " Check /etc/povray.conf to enable"
echo -e "[File I/O Security]\nnone" > /etc/povray.conf
}
|